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

#include <yocto_carbondioxide.h>

Inheritance diagram for YCarbonDioxide:
Inheritance graph
[legend]

Public Member Functions

virtual int _invokeTimedReportCallback (YMeasure value)
 
virtual int _invokeValueCallback (string value)
 
int abcPeriod (void)
 
string command (void)
 
int get_abcPeriod (void)
 
string get_command (void)
 
YCarbonDioxidenext (void)
 
YCarbonDioxidenextCarbonDioxide (void)
 
virtual int registerTimedReportCallback (YCarbonDioxideTimedReportCallback callback)
 
virtual int registerValueCallback (YCarbonDioxideValueCallback callback)
 
int set_abcPeriod (int newval)
 
int set_command (const string &newval)
 
int setAbcPeriod (int newval)
 
int setCommand (const string &newval)
 
virtual int triggerBaselineCalibration (void)
 
virtual int triggerZeroCalibration (void)
 
virtual int triggetBaselineCalibration (void)
 
virtual int triggetZeroCalibration (void)
 
 ~YCarbonDioxide ()
 
- Public Member Functions inherited from YSensor
virtual double _applyCalibration (double rawValue)
 
virtual double _decodeAvg (int dw)
 
virtual YMeasure _decodeTimedReport (double timestamp, vector< int > report)
 
virtual double _decodeVal (int w)
 
virtual string _encodeCalibrationPoints (vector< double > rawValues, vector< double > refValues)
 
virtual int _parserHelper (void)
 
Y_ADVMODE_enum advMode (void)
 
virtual int calibrateFromPoints (vector< double > rawValues, vector< double > refValues)
 
string calibrationParam (void)
 
double currentRawValue (void)
 
double currentValue (void)
 
Y_ADVMODE_enum get_advMode (void)
 
string get_calibrationParam (void)
 
double get_currentRawValue (void)
 
double get_currentValue (void)
 
virtual YDataLoggerget_dataLogger (void)
 
double get_highestValue (void)
 
string get_logFrequency (void)
 
double get_lowestValue (void)
 
virtual YDataSet get_recordedData (s64 startTime, s64 endTime)
 
string get_reportFrequency (void)
 
double get_resolution (void)
 
int get_sensorState (void)
 
string get_unit (void)
 
double highestValue (void)
 
virtual bool isSensorReady (void)
 
virtual int loadCalibrationPoints (vector< double > &rawValues, vector< double > &refValues)
 
string logFrequency (void)
 
double lowestValue (void)
 
YSensornext (void)
 
YSensornextSensor (void)
 
virtual int registerTimedReportCallback (YSensorTimedReportCallback callback)
 
virtual int registerValueCallback (YSensorValueCallback callback)
 
string reportFrequency (void)
 
double resolution (void)
 
int sensorState (void)
 
int set_advMode (Y_ADVMODE_enum newval)
 
int set_calibrationParam (const string &newval)
 
int set_highestValue (double newval)
 
int set_logFrequency (const string &newval)
 
int set_lowestValue (double newval)
 
int set_reportFrequency (const string &newval)
 
int set_resolution (double newval)
 
int setAdvMode (Y_ADVMODE_enum newval)
 
int setCalibrationParam (const string &newval)
 
int setHighestValue (double newval)
 
int setLogFrequency (const string &newval)
 
int setLowestValue (double newval)
 
int setReportFrequency (const string &newval)
 
int setResolution (double newval)
 
virtual int startDataLogger (void)
 
virtual int stopDataLogger (void)
 
string unit (void)
 
 ~YSensor ()
 
- 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)
 
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 YCarbonDioxideFind (string func)
 
static YCarbonDioxideFindCarbonDioxide (string func)
 
static YCarbonDioxideFirst (void)
 
static YCarbonDioxideFirstCarbonDioxide (void)
 
- Static Public Member Functions inherited from YSensor
static YSensorFind (string func)
 
static YSensorFindSensor (string func)
 
static YSensorFirst (void)
 
static YSensorFirstSensor (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 ABCPERIOD_INVALID = YAPI_INVALID_INT
 
static const string COMMAND_INVALID = YAPI_INVALID_STRING
 
- Static Public Attributes inherited from YSensor
static const Y_ADVMODE_enum ADVMODE_IMMEDIATE = Y_ADVMODE_IMMEDIATE
 
static const Y_ADVMODE_enum ADVMODE_INVALID = Y_ADVMODE_INVALID
 
static const Y_ADVMODE_enum ADVMODE_PERIOD_AVG = Y_ADVMODE_PERIOD_AVG
 
static const Y_ADVMODE_enum ADVMODE_PERIOD_MAX = Y_ADVMODE_PERIOD_MAX
 
static const Y_ADVMODE_enum ADVMODE_PERIOD_MIN = Y_ADVMODE_PERIOD_MIN
 
static const string CALIBRATIONPARAM_INVALID = YAPI_INVALID_STRING
 
static const double CURRENTRAWVALUE_INVALID = YAPI_INVALID_DOUBLE
 
static const double CURRENTVALUE_INVALID = YAPI_INVALID_DOUBLE
 
static const double HIGHESTVALUE_INVALID = YAPI_INVALID_DOUBLE
 
static const string LOGFREQUENCY_INVALID = YAPI_INVALID_STRING
 
static const double LOWESTVALUE_INVALID = YAPI_INVALID_DOUBLE
 
static const string REPORTFREQUENCY_INVALID = YAPI_INVALID_STRING
 
static const double RESOLUTION_INVALID = YAPI_INVALID_DOUBLE
 
static const int SENSORSTATE_INVALID = YAPI_INVALID_INT
 
static const string UNIT_INVALID = YAPI_INVALID_STRING
 
- 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)
 
 YCarbonDioxide (const string &func)
 
- Protected Member Functions inherited from YSensor
 YSensor (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 _abcPeriod
 
string _command
 
YCarbonDioxideTimedReportCallback _timedReportCallbackCarbonDioxide
 
YCarbonDioxideValueCallback _valueCallbackCarbonDioxide
 
- Protected Attributes inherited from YSensor
Y_ADVMODE_enum _advMode
 
yCalibrationHandler _calhdl
 
string _calibrationParam
 
vector< int > _calpar
 
vector< double > _calraw
 
vector< double > _calref
 
int _caltyp
 
double _currentRawValue
 
double _currentValue
 
double _decexp
 
double _highestValue
 
double _iresol
 
bool _isScal
 
bool _isScal32
 
string _logFrequency
 
double _lowestValue
 
double _offset
 
double _prevTimedReport
 
string _reportFrequency
 
double _resolution
 
double _scale
 
int _sensorState
 
YSensorTimedReportCallback _timedReportCallbackSensor
 
string _unit
 
YSensorValueCallback _valueCallbackSensor
 
- 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

YCarbonDioxideyFindCarbonDioxide (const string &func)
 
YCarbonDioxideyFirstCarbonDioxide (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

YCarbonDioxide Class: CarbonDioxide function interface

The Yoctopuce class YCarbonDioxide allows you to read and configure Yoctopuce CO2 sensors. It inherits from YSensor class the core functions to read measurements, to register callback functions, to access the autonomous datalogger. This class adds the ability to perform manual calibration if reuired.

Definition at line 70 of file yocto_carbondioxide.h.

Constructor & Destructor Documentation

YCarbonDioxide::YCarbonDioxide ( const string &  func)
protected

Definition at line 51 of file yocto_carbondioxide.cpp.

YCarbonDioxide::~YCarbonDioxide ( )

Definition at line 62 of file yocto_carbondioxide.cpp.

Member Function Documentation

int YCarbonDioxide::_invokeTimedReportCallback ( YMeasure  value)
virtual

Reimplemented from YSensor.

Definition at line 292 of file yocto_carbondioxide.cpp.

int YCarbonDioxide::_invokeValueCallback ( string  value)
virtual

Reimplemented from YSensor.

Definition at line 258 of file yocto_carbondioxide.cpp.

int YCarbonDioxide::_parseAttr ( YJSONObject json_val)
protectedvirtual

Reimplemented from YSensor.

Definition at line 71 of file yocto_carbondioxide.cpp.

int YCarbonDioxide::abcPeriod ( void  )
inline

Definition at line 110 of file yocto_carbondioxide.h.

string YCarbonDioxide::command ( void  )
inline

Definition at line 132 of file yocto_carbondioxide.h.

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

Definition at line 239 of file yocto_carbondioxide.h.

YCarbonDioxide * YCarbonDioxide::FindCarbonDioxide ( string  func)
static

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

Definition at line 207 of file yocto_carbondioxide.cpp.

static YCarbonDioxide* YCarbonDioxide::First ( void  )
inlinestatic

Definition at line 263 of file yocto_carbondioxide.h.

YCarbonDioxide * YCarbonDioxide::FirstCarbonDioxide ( void  )
static

Starts the enumeration of CO2 sensors currently accessible. Use the method YCarbonDioxide.nextCarbonDioxide() to iterate on next CO2 sensors.

Returns
a pointer to a YCarbonDioxide object, corresponding to the first CO2 sensor currently online, or a NULL pointer if there are none.

Definition at line 362 of file yocto_carbondioxide.cpp.

int YCarbonDioxide::get_abcPeriod ( void  )

Returns the Automatic Baseline Calibration period, in hours. A negative value means that automatic baseline calibration is disabled.

Returns
an integer corresponding to the Automatic Baseline Calibration period, in hours

On failure, throws an exception or returns Y_ABCPERIOD_INVALID.

Definition at line 91 of file yocto_carbondioxide.cpp.

string YCarbonDioxide::get_command ( void  )

Definition at line 142 of file yocto_carbondioxide.cpp.

YCarbonDioxide* YCarbonDioxide::next ( void  )
inline

Definition at line 250 of file yocto_carbondioxide.h.

YCarbonDioxide * YCarbonDioxide::nextCarbonDioxide ( void  )

Continues the enumeration of CO2 sensors started using yFirstCarbonDioxide().

Returns
a pointer to a YCarbonDioxide object, corresponding to a CO2 sensor currently online, or a NULL pointer if there are no more CO2 sensors to enumerate.

Definition at line 352 of file yocto_carbondioxide.cpp.

int YCarbonDioxide::registerTimedReportCallback ( YCarbonDioxideTimedReportCallback  callback)
virtual

Registers the callback function that is invoked on every periodic timed notification. 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 an YMeasure object describing the new advertised value.

Definition at line 279 of file yocto_carbondioxide.cpp.

int YCarbonDioxide::registerValueCallback ( YCarbonDioxideValueCallback  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 239 of file yocto_carbondioxide.cpp.

int YCarbonDioxide::set_abcPeriod ( int  newval)

Changes Automatic Baseline Calibration period, in hours. If you need to disable automatic baseline calibration (for instance when using the sensor in an environment that is constantly above 400ppm CO2), set the period to -1. Remember to call the saveToFlash() method of the module if the modification must be kept.

Parameters
newval: an integer corresponding to Automatic Baseline Calibration period, in hours
Returns
YAPI_SUCCESS if the call succeeds.

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

Definition at line 126 of file yocto_carbondioxide.cpp.

int YCarbonDioxide::set_command ( const string &  newval)

Definition at line 164 of file yocto_carbondioxide.cpp.

int YCarbonDioxide::setAbcPeriod ( int  newval)
inline

Definition at line 127 of file yocto_carbondioxide.h.

int YCarbonDioxide::setCommand ( const string &  newval)
inline

Definition at line 136 of file yocto_carbondioxide.h.

int YCarbonDioxide::triggerBaselineCalibration ( void  )
virtual

Triggers a baseline calibration at standard CO2 ambiant level (400ppm). It is normally not necessary to manually calibrate the sensor, because the built-in automatic baseline calibration procedure will automatically fix any long-term drift based on the lowest level of CO2 observed over the automatic calibration period. However, if you disable automatic baseline calibration, you may want to manually trigger a calibration from time to time. Before starting a baseline calibration, make sure to put the sensor in a standard environment (e.g. outside in fresh air) at around 400ppm.

Returns
YAPI_SUCCESS if the call succeeds.

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

Definition at line 316 of file yocto_carbondioxide.cpp.

int YCarbonDioxide::triggerZeroCalibration ( void  )
virtual

Triggers a zero calibration of the sensor on carbon dioxide-free air. It is normally not necessary to manually calibrate the sensor, because the built-in automatic baseline calibration procedure will automatically fix any long-term drift based on the lowest level of CO2 observed over the automatic calibration period. However, if you disable automatic baseline calibration, you may want to manually trigger a calibration from time to time. Before starting a zero calibration, you should circulate carbon dioxide-free air within the sensor for a minute or two, using a small pipe connected to the sensor. Please contact suppo.nosp@m.rt@y.nosp@m.octop.nosp@m.uce..nosp@m.com for more details on the zero calibration procedure.

Returns
YAPI_SUCCESS if the call succeeds.

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

Definition at line 342 of file yocto_carbondioxide.cpp.

int YCarbonDioxide::triggetBaselineCalibration ( void  )
virtual

Definition at line 321 of file yocto_carbondioxide.cpp.

int YCarbonDioxide::triggetZeroCalibration ( void  )
virtual

Definition at line 347 of file yocto_carbondioxide.cpp.

Friends And Related Function Documentation

YCarbonDioxide* yFindCarbonDioxide ( const string &  func)
friend

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

Definition at line 300 of file yocto_carbondioxide.h.

YCarbonDioxide* yFirstCarbonDioxide ( void  )
friend

Starts the enumeration of CO2 sensors currently accessible. Use the method YCarbonDioxide.nextCarbonDioxide() to iterate on next CO2 sensors.

Returns
a pointer to a YCarbonDioxide object, corresponding to the first CO2 sensor currently online, or a NULL pointer if there are none.

Definition at line 311 of file yocto_carbondioxide.h.

Member Data Documentation

int YCarbonDioxide::_abcPeriod
protected

Definition at line 78 of file yocto_carbondioxide.h.

string YCarbonDioxide::_command
protected

Definition at line 79 of file yocto_carbondioxide.h.

YCarbonDioxideTimedReportCallback YCarbonDioxide::_timedReportCallbackCarbonDioxide
protected

Definition at line 81 of file yocto_carbondioxide.h.

YCarbonDioxideValueCallback YCarbonDioxide::_valueCallbackCarbonDioxide
protected

Definition at line 80 of file yocto_carbondioxide.h.

const int YCarbonDioxide::ABCPERIOD_INVALID = YAPI_INVALID_INT
static

Definition at line 97 of file yocto_carbondioxide.h.

const string YCarbonDioxide::COMMAND_INVALID = YAPI_INVALID_STRING
static

Definition at line 98 of file yocto_carbondioxide.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