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

#include <yocto_dualpower.h>

Inheritance diagram for YDualPower:
Inheritance graph
[legend]

Public Member Functions

virtual int _invokeValueCallback (string value)
 
int extVoltage (void)
 
int get_extVoltage (void)
 
Y_POWERCONTROL_enum get_powerControl (void)
 
Y_POWERSTATE_enum get_powerState (void)
 
YDualPowernext (void)
 
YDualPowernextDualPower (void)
 
Y_POWERCONTROL_enum powerControl (void)
 
Y_POWERSTATE_enum powerState (void)
 
virtual int registerValueCallback (YDualPowerValueCallback callback)
 
int set_powerControl (Y_POWERCONTROL_enum newval)
 
int setPowerControl (Y_POWERCONTROL_enum newval)
 
 ~YDualPower ()
 
- 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 YDualPowerFind (string func)
 
static YDualPowerFindDualPower (string func)
 
static YDualPowerFirst (void)
 
static YDualPowerFirstDualPower (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 int EXTVOLTAGE_INVALID = YAPI_INVALID_UINT
 
static const Y_POWERCONTROL_enum POWERCONTROL_AUTO = Y_POWERCONTROL_AUTO
 
static const Y_POWERCONTROL_enum POWERCONTROL_FROM_EXT = Y_POWERCONTROL_FROM_EXT
 
static const Y_POWERCONTROL_enum POWERCONTROL_FROM_USB = Y_POWERCONTROL_FROM_USB
 
static const Y_POWERCONTROL_enum POWERCONTROL_INVALID = Y_POWERCONTROL_INVALID
 
static const Y_POWERCONTROL_enum POWERCONTROL_OFF = Y_POWERCONTROL_OFF
 
static const Y_POWERSTATE_enum POWERSTATE_FROM_EXT = Y_POWERSTATE_FROM_EXT
 
static const Y_POWERSTATE_enum POWERSTATE_FROM_USB = Y_POWERSTATE_FROM_USB
 
static const Y_POWERSTATE_enum POWERSTATE_INVALID = Y_POWERSTATE_INVALID
 
static const Y_POWERSTATE_enum POWERSTATE_OFF = Y_POWERSTATE_OFF
 
- 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)
 
 YDualPower (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

int _extVoltage
 
Y_POWERCONTROL_enum _powerControl
 
Y_POWERSTATE_enum _powerState
 
YDualPowerValueCallback _valueCallbackDualPower
 
- 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

YDualPoweryFindDualPower (const string &func)
 
YDualPoweryFirstDualPower (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

YDualPower Class: External power supply control interface

Yoctopuce application programming interface allows you to control the power source to use for module functions that require high current. The module can also automatically disconnect the external power when a voltage drop is observed on the external power source (external battery running out of power).

Definition at line 87 of file yocto_dualpower.h.

Constructor & Destructor Documentation

YDualPower::YDualPower ( const string &  func)
protected

Definition at line 51 of file yocto_dualpower.cpp.

YDualPower::~YDualPower ( )

Definition at line 62 of file yocto_dualpower.cpp.

Member Function Documentation

int YDualPower::_invokeValueCallback ( string  value)
virtual

Reimplemented from YFunction.

Definition at line 279 of file yocto_dualpower.cpp.

int YDualPower::_parseAttr ( YJSONObject json_val)
protectedvirtual

Reimplemented from YFunction.

Definition at line 70 of file yocto_dualpower.cpp.

int YDualPower::extVoltage ( void  )
inline

Definition at line 175 of file yocto_dualpower.h.

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

Definition at line 224 of file yocto_dualpower.h.

YDualPower * YDualPower::FindDualPower ( string  func)
static

Retrieves a dual power control 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 power control is online at the time it is invoked. The returned object is nevertheless valid. Use the method YDualPower.isOnline() to test if the power control is indeed online at a given time. In case of ambiguity when looking for a dual power control 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 power control
Returns
a YDualPower object allowing you to drive the power control.

Definition at line 228 of file yocto_dualpower.cpp.

static YDualPower* YDualPower::First ( void  )
inlinestatic

Definition at line 248 of file yocto_dualpower.h.

YDualPower * YDualPower::FirstDualPower ( void  )
static

Starts the enumeration of dual power controls currently accessible. Use the method YDualPower.nextDualPower() to iterate on next dual power controls.

Returns
a pointer to a YDualPower object, corresponding to the first dual power control currently online, or a NULL pointer if there are none.

Definition at line 299 of file yocto_dualpower.cpp.

int YDualPower::get_extVoltage ( void  )

Returns the measured voltage on the external power source, in millivolts.

Returns
an integer corresponding to the measured voltage on the external power source, in millivolts

On failure, throws an exception or returns Y_EXTVOLTAGE_INVALID.

Definition at line 179 of file yocto_dualpower.cpp.

Y_POWERCONTROL_enum YDualPower::get_powerControl ( void  )

Returns the selected power source for module functions that require lots of current.

Returns
a value among Y_POWERCONTROL_AUTO, Y_POWERCONTROL_FROM_USB, Y_POWERCONTROL_FROM_EXT and Y_POWERCONTROL_OFF corresponding to the selected power source for module functions that require lots of current

On failure, throws an exception or returns Y_POWERCONTROL_INVALID.

Definition at line 123 of file yocto_dualpower.cpp.

Y_POWERSTATE_enum YDualPower::get_powerState ( void  )

Returns the current power source for module functions that require lots of current.

Returns
a value among Y_POWERSTATE_OFF, Y_POWERSTATE_FROM_USB and Y_POWERSTATE_FROM_EXT corresponding to the current power source for module functions that require lots of current

On failure, throws an exception or returns Y_POWERSTATE_INVALID.

Definition at line 93 of file yocto_dualpower.cpp.

YDualPower* YDualPower::next ( void  )
inline

Definition at line 235 of file yocto_dualpower.h.

YDualPower * YDualPower::nextDualPower ( void  )

Continues the enumeration of dual power controls started using yFirstDualPower().

Returns
a pointer to a YDualPower object, corresponding to a dual power control currently online, or a NULL pointer if there are no more dual power controls to enumerate.

Definition at line 289 of file yocto_dualpower.cpp.

Y_POWERCONTROL_enum YDualPower::powerControl ( void  )
inline

Definition at line 148 of file yocto_dualpower.h.

Y_POWERSTATE_enum YDualPower::powerState ( void  )
inline

Definition at line 135 of file yocto_dualpower.h.

int YDualPower::registerValueCallback ( YDualPowerValueCallback  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 260 of file yocto_dualpower.cpp.

int YDualPower::set_powerControl ( Y_POWERCONTROL_enum  newval)

Changes the selected power source for module functions that require lots of current.

Parameters
newval: a value among Y_POWERCONTROL_AUTO, Y_POWERCONTROL_FROM_USB, Y_POWERCONTROL_FROM_EXT and Y_POWERCONTROL_OFF corresponding to the selected power source for module functions that require lots of current
Returns
YAPI_SUCCESS if the call succeeds.

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

Definition at line 156 of file yocto_dualpower.cpp.

int YDualPower::setPowerControl ( Y_POWERCONTROL_enum  newval)
inline

Definition at line 163 of file yocto_dualpower.h.

Friends And Related Function Documentation

YDualPower* yFindDualPower ( const string &  func)
friend

Retrieves a dual power control 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 power control is online at the time it is invoked. The returned object is nevertheless valid. Use the method YDualPower.isOnline() to test if the power control is indeed online at a given time. In case of ambiguity when looking for a dual power control 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 power control
Returns
a YDualPower object allowing you to drive the power control.

Definition at line 285 of file yocto_dualpower.h.

YDualPower* yFirstDualPower ( void  )
friend

Starts the enumeration of dual power controls currently accessible. Use the method YDualPower.nextDualPower() to iterate on next dual power controls.

Returns
a pointer to a YDualPower object, corresponding to the first dual power control currently online, or a NULL pointer if there are none.

Definition at line 296 of file yocto_dualpower.h.

Member Data Documentation

int YDualPower::_extVoltage
protected

Definition at line 97 of file yocto_dualpower.h.

Y_POWERCONTROL_enum YDualPower::_powerControl
protected

Definition at line 96 of file yocto_dualpower.h.

Y_POWERSTATE_enum YDualPower::_powerState
protected

Definition at line 95 of file yocto_dualpower.h.

YDualPowerValueCallback YDualPower::_valueCallbackDualPower
protected

Definition at line 98 of file yocto_dualpower.h.

const int YDualPower::EXTVOLTAGE_INVALID = YAPI_INVALID_UINT
static

Definition at line 123 of file yocto_dualpower.h.

const Y_POWERCONTROL_enum YDualPower::POWERCONTROL_AUTO = Y_POWERCONTROL_AUTO
static

Definition at line 118 of file yocto_dualpower.h.

const Y_POWERCONTROL_enum YDualPower::POWERCONTROL_FROM_EXT = Y_POWERCONTROL_FROM_EXT
static

Definition at line 120 of file yocto_dualpower.h.

const Y_POWERCONTROL_enum YDualPower::POWERCONTROL_FROM_USB = Y_POWERCONTROL_FROM_USB
static

Definition at line 119 of file yocto_dualpower.h.

const Y_POWERCONTROL_enum YDualPower::POWERCONTROL_INVALID = Y_POWERCONTROL_INVALID
static

Definition at line 122 of file yocto_dualpower.h.

const Y_POWERCONTROL_enum YDualPower::POWERCONTROL_OFF = Y_POWERCONTROL_OFF
static

Definition at line 121 of file yocto_dualpower.h.

const Y_POWERSTATE_enum YDualPower::POWERSTATE_FROM_EXT = Y_POWERSTATE_FROM_EXT
static

Definition at line 116 of file yocto_dualpower.h.

const Y_POWERSTATE_enum YDualPower::POWERSTATE_FROM_USB = Y_POWERSTATE_FROM_USB
static

Definition at line 115 of file yocto_dualpower.h.

const Y_POWERSTATE_enum YDualPower::POWERSTATE_INVALID = Y_POWERSTATE_INVALID
static

Definition at line 117 of file yocto_dualpower.h.

const Y_POWERSTATE_enum YDualPower::POWERSTATE_OFF = Y_POWERSTATE_OFF
static

Definition at line 114 of file yocto_dualpower.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