Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Friends | List of all members
YCurrentLoopOutput Class Reference

#include <yocto_currentloopoutput.h>

Inheritance diagram for YCurrentLoopOutput:
Inheritance graph
[legend]

Public Member Functions

virtual int _invokeValueCallback (string value)
 
double current (void)
 
double currentAtStartUp (void)
 
virtual int currentMove (double mA_target, int ms_duration)
 
string currentTransition (void)
 
double get_current (void)
 
double get_currentAtStartUp (void)
 
string get_currentTransition (void)
 
Y_LOOPPOWER_enum get_loopPower (void)
 
Y_LOOPPOWER_enum loopPower (void)
 
YCurrentLoopOutputnext (void)
 
YCurrentLoopOutputnextCurrentLoopOutput (void)
 
virtual int registerValueCallback (YCurrentLoopOutputValueCallback callback)
 
int set_current (double newval)
 
int set_currentAtStartUp (double newval)
 
int set_currentTransition (const string &newval)
 
int setCurrent (double newval)
 
int setCurrentAtStartUp (double newval)
 
int setCurrentTransition (const string &newval)
 
 ~YCurrentLoopOutput ()
 
- Public Member Functions inherited from YFunction
void _clearDataStreamCache ()
 
string _decode_json_string (const string &json)
 
string _download (const string &url)
 
YDataStream_findDataStream (YDataSet &dataset, const string &def)
 
string _get_json_path (const string &json, const string &path)
 
vector< string > _json_get_array (const string &json)
 
string _json_get_key (const string &json, const string &data)
 
string _json_get_string (const string &json)
 
int _parseEx (yJsonStateMachine &j)
 
virtual int _parserHelper (void)
 
string _parseString (yJsonStateMachine &j)
 
string _request (const string &request)
 
string _requestEx (int tcpchan, const string &request, yapiRequestProgressCallback callback, void *context)
 
void _throw (YRETCODE errType, string errMsg)
 
YRETCODE _upload (const string &path, const string &content)
 
YRETCODE _uploadWithProgress (const string &path, const string &content, yapiRequestProgressCallback callback, void *context)
 
string advertisedValue (void)
 
void clearCache ()
 
string describe (void)
 
string errMessage (void)
 
string errorMessage (void)
 
YRETCODE errorType (void)
 
YRETCODE errType (void)
 
YFUN_DESCR functionDescriptor (void)
 
string get_advertisedValue (void)
 
string get_errorMessage (void)
 
YRETCODE get_errorType (void)
 
virtual string get_friendlyName (void)
 
YFUN_DESCR get_functionDescriptor (void)
 
string get_functionId (void)
 
string get_hardwareId (void)
 
string get_hubSerial ()
 
string get_logicalName (void)
 
YModuleget_module (void)
 
void * get_userData (void)
 
bool isOnline (void)
 
YRETCODE load (int msValidity)
 
virtual string loadAttribute (string attrName)
 
string logicalName (void)
 
YModulemodule (void)
 
virtual int muteValueCallbacks (void)
 
YFunctionnext (void)
 
YFunctionnextFunction (void)
 
virtual int registerValueCallback (YFunctionValueCallback callback)
 
int set_advertisedValue (const string &newval)
 
int set_logicalName (const string &newval)
 
void set_userData (void *data)
 
int setAdvertisedValue (const string &newval)
 
int setLogicalName (const string &newval)
 
void setUserData (void *data)
 
virtual int unmuteValueCallbacks (void)
 
void * userData (void)
 
virtual ~YFunction ()
 

Static Public Member Functions

static YCurrentLoopOutputFind (string func)
 
static YCurrentLoopOutputFindCurrentLoopOutput (string func)
 
static YCurrentLoopOutputFirst (void)
 
static YCurrentLoopOutputFirstCurrentLoopOutput (void)
 
- Static Public Member Functions inherited from YFunction
static void _ClearCache (void)
 
static YFunctionFind (string func)
 
static YFunctionFindFunction (string func)
 
static YFunctionFirst (void)
 
static YFunctionFirstFunction (void)
 

Static Public Attributes

static const double CURRENT_INVALID = YAPI_INVALID_DOUBLE
 
static const double CURRENTATSTARTUP_INVALID = YAPI_INVALID_DOUBLE
 
static const string CURRENTTRANSITION_INVALID = YAPI_INVALID_STRING
 
static const Y_LOOPPOWER_enum LOOPPOWER_INVALID = Y_LOOPPOWER_INVALID
 
static const Y_LOOPPOWER_enum LOOPPOWER_LOWPWR = Y_LOOPPOWER_LOWPWR
 
static const Y_LOOPPOWER_enum LOOPPOWER_NOPWR = Y_LOOPPOWER_NOPWR
 
static const Y_LOOPPOWER_enum LOOPPOWER_POWEROK = Y_LOOPPOWER_POWEROK
 
- Static Public Attributes inherited from YFunction
static const string ADVERTISEDVALUE_INVALID = YAPI_INVALID_STRING
 
static const string FRIENDLYNAME_INVALID = YAPI_INVALID_STRING
 
static const YFUN_DESCR FUNCTIONDESCRIPTOR_INVALID = Y_FUNCTIONDESCRIPTOR_INVALID
 
static const string FUNCTIONID_INVALID = YAPI_INVALID_STRING
 
static const string HARDWAREID_INVALID = YAPI_INVALID_STRING
 
static const string LOGICALNAME_INVALID = YAPI_INVALID_STRING
 

Protected Member Functions

virtual int _parseAttr (YJSONObject *json_val)
 
 YCurrentLoopOutput (const string &func)
 
- Protected Member Functions inherited from YFunction
YRETCODE _buildSetRequest (const string &changeattr, const string *changeval, string &request, string &errmsg)
 
string _escapeAttr (const string &changeval)
 
YRETCODE _getDescriptor (YFUN_DESCR &fundescr, string &errMsg)
 
YRETCODE _getDevice (YDevice *&dev, string &errMsg)
 
YRETCODE _load_unsafe (int msValidity)
 
YRETCODE _nextFunction (string &hwId)
 
int _parse (YJSONObject *j)
 
YRETCODE _setAttr (string attrname, string newvalue)
 
 YFunction (const string &func)
 

Protected Attributes

double _current
 
double _currentAtStartUp
 
string _currentTransition
 
Y_LOOPPOWER_enum _loopPower
 
YCurrentLoopOutputValueCallback _valueCallbackCurrentLoopOutput
 
- Protected Attributes inherited from YFunction
string _advertisedValue
 
u64 _cacheExpiration
 
string _className
 
std::map< string, YDataStream * > _dataStreams
 
string _func
 
YFUN_DESCR _fundescr
 
string _funId
 
string _hwId
 
string _lastErrorMsg
 
YRETCODE _lastErrorType
 
string _logicalName
 
string _serial
 
yCRITICAL_SECTION _this_cs
 
void * _userData
 
YFunctionValueCallback _valueCallbackFunction
 

Friends

YCurrentLoopOutputyFindCurrentLoopOutput (const string &func)
 
YCurrentLoopOutputyFirstCurrentLoopOutput (void)
 

Additional Inherited Members

- Static Protected Member Functions inherited from YFunction
static void _AddToCache (const string &classname, const string &func, YFunction *obj)
 
static YFunction_FindFromCache (const string &classname, const string &func)
 
static void _UpdateTimedReportCallbackList (YFunction *func, bool add)
 
static void _UpdateValueCallbackList (YFunction *func, bool add)
 
- Static Protected Attributes inherited from YFunction
static std::map< string, YFunction * > _cache
 

Detailed Description

YCurrentLoopOutput Class: CurrentLoopOutput function interface

The Yoctopuce application programming interface allows you to change the value of the 4-20mA output as well as to know the current loop state.

Definition at line 76 of file yocto_currentloopoutput.h.

Constructor & Destructor Documentation

YCurrentLoopOutput::YCurrentLoopOutput ( const string &  func)
protected

Definition at line 51 of file yocto_currentloopoutput.cpp.

YCurrentLoopOutput::~YCurrentLoopOutput ( )

Definition at line 63 of file yocto_currentloopoutput.cpp.

Member Function Documentation

int YCurrentLoopOutput::_invokeValueCallback ( string  value)
virtual

Reimplemented from YFunction.

Definition at line 351 of file yocto_currentloopoutput.cpp.

int YCurrentLoopOutput::_parseAttr ( YJSONObject json_val)
protectedvirtual

Reimplemented from YFunction.

Definition at line 74 of file yocto_currentloopoutput.cpp.

double YCurrentLoopOutput::current ( void  )
inline

Definition at line 136 of file yocto_currentloopoutput.h.

double YCurrentLoopOutput::currentAtStartUp ( void  )
inline

Definition at line 171 of file yocto_currentloopoutput.h.

int YCurrentLoopOutput::currentMove ( double  mA_target,
int  ms_duration 
)
virtual

Performs a smooth transistion of current flowing in the loop. Any current explicit change cancels any ongoing transition process.

Parameters
mA_target: new current value at the end of the transition (floating-point number, representing the end current in mA)
ms_duration: total duration of the transition, in milliseconds
Returns
YAPI_SUCCESS when the call succeeds.

Definition at line 371 of file yocto_currentloopoutput.cpp.

string YCurrentLoopOutput::currentTransition ( void  )
inline

Definition at line 141 of file yocto_currentloopoutput.h.

static YCurrentLoopOutput* YCurrentLoopOutput::Find ( string  func)
inlinestatic

Definition at line 247 of file yocto_currentloopoutput.h.

YCurrentLoopOutput * YCurrentLoopOutput::FindCurrentLoopOutput ( string  func)
static

Retrieves a 4-20mA output for a given identifier. The identifier can be specified using several formats:

  • FunctionLogicalName
  • ModuleSerialNumber.FunctionIdentifier
  • ModuleSerialNumber.FunctionLogicalName
  • ModuleLogicalName.FunctionIdentifier
  • ModuleLogicalName.FunctionLogicalName

This function does not require that the 4-20mA output is online at the time it is invoked. The returned object is nevertheless valid. Use the method YCurrentLoopOutput.isOnline() to test if the 4-20mA output is indeed online at a given time. In case of ambiguity when looking for a 4-20mA output by logical name, no error is notified: the first instance found is returned. The search is performed first by hardware name, then by logical name.

If a call to this object's is_online() method returns FALSE although you are certain that the matching device is plugged, make sure that you did call registerHub() at application initialization time.

Parameters
func: a string that uniquely characterizes the 4-20mA output
Returns
a YCurrentLoopOutput object allowing you to drive the 4-20mA output.

Definition at line 300 of file yocto_currentloopoutput.cpp.

static YCurrentLoopOutput* YCurrentLoopOutput::First ( void  )
inlinestatic

Definition at line 271 of file yocto_currentloopoutput.h.

YCurrentLoopOutput * YCurrentLoopOutput::FirstCurrentLoopOutput ( void  )
static

Starts the enumeration of 4-20mA outputs currently accessible. Use the method YCurrentLoopOutput.nextCurrentLoopOutput() to iterate on next 4-20mA outputs.

Returns
a pointer to a YCurrentLoopOutput object, corresponding to the first 4-20mA output currently online, or a NULL pointer if there are none.

Definition at line 395 of file yocto_currentloopoutput.cpp.

double YCurrentLoopOutput::get_current ( void  )

Returns the loop current set point in mA.

Returns
a floating point number corresponding to the loop current set point in mA

On failure, throws an exception or returns Y_CURRENT_INVALID.

Definition at line 126 of file yocto_currentloopoutput.cpp.

double YCurrentLoopOutput::get_currentAtStartUp ( void  )

Returns the current in the loop at device startup, in mA.

Returns
a floating point number corresponding to the current in the loop at device startup, in mA

On failure, throws an exception or returns Y_CURRENTATSTARTUP_INVALID.

Definition at line 219 of file yocto_currentloopoutput.cpp.

string YCurrentLoopOutput::get_currentTransition ( void  )

Definition at line 148 of file yocto_currentloopoutput.cpp.

Y_LOOPPOWER_enum YCurrentLoopOutput::get_loopPower ( void  )

Returns the loop powerstate. POWEROK: the loop is powered. NOPWR: the loop in not powered. LOWPWR: the loop is not powered enough to maintain the current required (insufficient voltage).

Returns
a value among Y_LOOPPOWER_NOPWR, Y_LOOPPOWER_LOWPWR and Y_LOOPPOWER_POWEROK corresponding to the loop powerstate

On failure, throws an exception or returns Y_LOOPPOWER_INVALID.

Definition at line 251 of file yocto_currentloopoutput.cpp.

Y_LOOPPOWER_enum YCurrentLoopOutput::loopPower ( void  )
inline

Definition at line 186 of file yocto_currentloopoutput.h.

YCurrentLoopOutput* YCurrentLoopOutput::next ( void  )
inline

Definition at line 258 of file yocto_currentloopoutput.h.

YCurrentLoopOutput * YCurrentLoopOutput::nextCurrentLoopOutput ( void  )

Continues the enumeration of 4-20mA outputs started using yFirstCurrentLoopOutput().

Returns
a pointer to a YCurrentLoopOutput object, corresponding to a 4-20mA output currently online, or a NULL pointer if there are no more 4-20mA outputs to enumerate.

Definition at line 385 of file yocto_currentloopoutput.cpp.

int YCurrentLoopOutput::registerValueCallback ( YCurrentLoopOutputValueCallback  callback)
virtual

Registers the callback function that is invoked on every change of advertised value. The callback is invoked only during the execution of ySleep or yHandleEvents. This provides control over the time when the callback is triggered. For good responsiveness, remember to call one of these two functions periodically. To unregister a callback, pass a NULL pointer as argument.

Parameters
callback: the callback function to call, or a NULL pointer. The callback function should take two arguments: the function object of which the value has changed, and the character string describing the new advertised value.

Definition at line 332 of file yocto_currentloopoutput.cpp.

int YCurrentLoopOutput::set_current ( double  newval)

Changes the current loop, the valid range is from 3 to 21mA. If the loop is not propely powered, the target current is not reached and loopPower is set to LOWPWR.

Parameters
newval: a floating point number corresponding to the current loop, the valid range is from 3 to 21mA
Returns
YAPI_SUCCESS if the call succeeds.

On failure, throws an exception or returns a negative error code.

Definition at line 103 of file yocto_currentloopoutput.cpp.

int YCurrentLoopOutput::set_currentAtStartUp ( double  newval)

Changes the loop current at device start up. Remember to call the matching module saveToFlash() method, otherwise this call has no effect.

Parameters
newval: a floating point number corresponding to the loop current at device start up
Returns
YAPI_SUCCESS if the call succeeds.

On failure, throws an exception or returns a negative error code.

Definition at line 196 of file yocto_currentloopoutput.cpp.

int YCurrentLoopOutput::set_currentTransition ( const string &  newval)

Definition at line 170 of file yocto_currentloopoutput.cpp.

int YCurrentLoopOutput::setCurrent ( double  newval)
inline

Definition at line 124 of file yocto_currentloopoutput.h.

int YCurrentLoopOutput::setCurrentAtStartUp ( double  newval)
inline

Definition at line 159 of file yocto_currentloopoutput.h.

int YCurrentLoopOutput::setCurrentTransition ( const string &  newval)
inline

Definition at line 145 of file yocto_currentloopoutput.h.

Friends And Related Function Documentation

YCurrentLoopOutput* yFindCurrentLoopOutput ( const string &  func)
friend

Retrieves a 4-20mA output for a given identifier. The identifier can be specified using several formats:

  • FunctionLogicalName
  • ModuleSerialNumber.FunctionIdentifier
  • ModuleSerialNumber.FunctionLogicalName
  • ModuleLogicalName.FunctionIdentifier
  • ModuleLogicalName.FunctionLogicalName

This function does not require that the 4-20mA output is online at the time it is invoked. The returned object is nevertheless valid. Use the method YCurrentLoopOutput.isOnline() to test if the 4-20mA output is indeed online at a given time. In case of ambiguity when looking for a 4-20mA output by logical name, no error is notified: the first instance found is returned. The search is performed first by hardware name, then by logical name.

If a call to this object's is_online() method returns FALSE although you are certain that the matching device is plugged, make sure that you did call registerHub() at application initialization time.

Parameters
func: a string that uniquely characterizes the 4-20mA output
Returns
a YCurrentLoopOutput object allowing you to drive the 4-20mA output.

Definition at line 308 of file yocto_currentloopoutput.h.

YCurrentLoopOutput* yFirstCurrentLoopOutput ( void  )
friend

Starts the enumeration of 4-20mA outputs currently accessible. Use the method YCurrentLoopOutput.nextCurrentLoopOutput() to iterate on next 4-20mA outputs.

Returns
a pointer to a YCurrentLoopOutput object, corresponding to the first 4-20mA output currently online, or a NULL pointer if there are none.

Definition at line 319 of file yocto_currentloopoutput.h.

Member Data Documentation

double YCurrentLoopOutput::_current
protected

Definition at line 84 of file yocto_currentloopoutput.h.

double YCurrentLoopOutput::_currentAtStartUp
protected

Definition at line 86 of file yocto_currentloopoutput.h.

string YCurrentLoopOutput::_currentTransition
protected

Definition at line 85 of file yocto_currentloopoutput.h.

Y_LOOPPOWER_enum YCurrentLoopOutput::_loopPower
protected

Definition at line 87 of file yocto_currentloopoutput.h.

YCurrentLoopOutputValueCallback YCurrentLoopOutput::_valueCallbackCurrentLoopOutput
protected

Definition at line 88 of file yocto_currentloopoutput.h.

const double YCurrentLoopOutput::CURRENT_INVALID = YAPI_INVALID_DOUBLE
static

Definition at line 104 of file yocto_currentloopoutput.h.

const double YCurrentLoopOutput::CURRENTATSTARTUP_INVALID = YAPI_INVALID_DOUBLE
static

Definition at line 106 of file yocto_currentloopoutput.h.

const string YCurrentLoopOutput::CURRENTTRANSITION_INVALID = YAPI_INVALID_STRING
static

Definition at line 105 of file yocto_currentloopoutput.h.

const Y_LOOPPOWER_enum YCurrentLoopOutput::LOOPPOWER_INVALID = Y_LOOPPOWER_INVALID
static

Definition at line 110 of file yocto_currentloopoutput.h.

const Y_LOOPPOWER_enum YCurrentLoopOutput::LOOPPOWER_LOWPWR = Y_LOOPPOWER_LOWPWR
static

Definition at line 108 of file yocto_currentloopoutput.h.

const Y_LOOPPOWER_enum YCurrentLoopOutput::LOOPPOWER_NOPWR = Y_LOOPPOWER_NOPWR
static

Definition at line 107 of file yocto_currentloopoutput.h.

const Y_LOOPPOWER_enum YCurrentLoopOutput::LOOPPOWER_POWEROK = Y_LOOPPOWER_POWEROK
static

Definition at line 109 of file yocto_currentloopoutput.h.


The documentation for this class was generated from the following files:


yoctopuce_altimeter
Author(s): Anja Sheppard
autogenerated on Mon Jun 10 2019 15:49:13