#include <yocto_rangefinder.h>
Public Member Functions | |
virtual int | _invokeTimedReportCallback (YMeasure value) |
virtual int | _invokeValueCallback (string value) |
virtual int | cancelCoverGlassCalibrations (void) |
string | command (void) |
double | currentTemperature (void) |
string | get_command (void) |
double | get_currentTemperature (void) |
string | get_hardwareCalibration (void) |
virtual double | get_hardwareCalibrationTemperature (void) |
Y_RANGEFINDERMODE_enum | get_rangeFinderMode (void) |
string | hardwareCalibration (void) |
YRangeFinder * | next (void) |
YRangeFinder * | nextRangeFinder (void) |
Y_RANGEFINDERMODE_enum | rangeFinderMode (void) |
virtual int | registerTimedReportCallback (YRangeFinderTimedReportCallback callback) |
virtual int | registerValueCallback (YRangeFinderValueCallback callback) |
int | set_command (const string &newval) |
int | set_hardwareCalibration (const string &newval) |
int | set_rangeFinderMode (Y_RANGEFINDERMODE_enum newval) |
int | set_unit (const string &newval) |
int | setCommand (const string &newval) |
int | setHardwareCalibration (const string &newval) |
int | setRangeFinderMode (Y_RANGEFINDERMODE_enum newval) |
int | setUnit (const string &newval) |
virtual int | triggerOffsetCalibration (double targetDist) |
virtual int | triggerSpadCalibration (void) |
virtual int | triggerTemperatureCalibration (void) |
virtual int | triggerXTalkCalibration (double targetDist) |
~YRangeFinder () | |
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 YDataLogger * | get_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) |
YSensor * | next (void) |
YSensor * | nextSensor (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) |
YModule * | get_module (void) |
void * | get_userData (void) |
bool | isOnline (void) |
YRETCODE | load (int msValidity) |
virtual string | loadAttribute (string attrName) |
string | logicalName (void) |
YModule * | module (void) |
virtual int | muteValueCallbacks (void) |
YFunction * | next (void) |
YFunction * | nextFunction (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 YRangeFinder * | Find (string func) |
static YRangeFinder * | FindRangeFinder (string func) |
static YRangeFinder * | First (void) |
static YRangeFinder * | FirstRangeFinder (void) |
Static Public Member Functions inherited from YSensor | |
static YSensor * | Find (string func) |
static YSensor * | FindSensor (string func) |
static YSensor * | First (void) |
static YSensor * | FirstSensor (void) |
Static Public Member Functions inherited from YFunction | |
static void | _ClearCache (void) |
static YFunction * | Find (string func) |
static YFunction * | FindFunction (string func) |
static YFunction * | First (void) |
static YFunction * | FirstFunction (void) |
Protected Member Functions | |
virtual int | _parseAttr (YJSONObject *json_val) |
YRangeFinder (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) | |
Friends | |
YRangeFinder * | yFindRangeFinder (const string &func) |
YRangeFinder * | yFirstRangeFinder (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 |
YRangeFinder Class: RangeFinder function interface
The Yoctopuce class YRangeFinder allows you to use and configure Yoctopuce range finder sensors. It inherits from the YSensor class the core functions to read measurements, register callback functions, access the autonomous datalogger. This class adds the ability to easily perform a one-point linear calibration to compensate the effect of a glass or filter placed in front of the sensor.
Definition at line 82 of file yocto_rangefinder.h.
|
protected |
Definition at line 51 of file yocto_rangefinder.cpp.
YRangeFinder::~YRangeFinder | ( | ) |
Definition at line 64 of file yocto_rangefinder.cpp.
|
virtual |
Reimplemented from YSensor.
Definition at line 399 of file yocto_rangefinder.cpp.
|
virtual |
Reimplemented from YSensor.
Definition at line 365 of file yocto_rangefinder.cpp.
|
protectedvirtual |
Reimplemented from YSensor.
Definition at line 75 of file yocto_rangefinder.cpp.
|
virtual |
Cancels the effect of previous hardware calibration procedures to compensate for cover glass, and restores factory settings. Remember to call the saveToFlash() method of the module if the modification must be kept.
Definition at line 509 of file yocto_rangefinder.cpp.
|
inline |
Definition at line 191 of file yocto_rangefinder.h.
|
inline |
Definition at line 186 of file yocto_rangefinder.h.
|
inlinestatic |
Definition at line 330 of file yocto_rangefinder.h.
|
static |
Retrieves a range finder for a given identifier. The identifier can be specified using several formats:
This function does not require that the range finder is online at the time it is invoked. The returned object is nevertheless valid. Use the method YRangeFinder.isOnline() to test if the range finder is indeed online at a given time. In case of ambiguity when looking for a range finder 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.
func | : a string that uniquely characterizes the range finder |
Definition at line 314 of file yocto_rangefinder.cpp.
|
inlinestatic |
Definition at line 354 of file yocto_rangefinder.h.
|
static |
Starts the enumeration of range finders currently accessible. Use the method YRangeFinder.nextRangeFinder() to iterate on next range finders.
Definition at line 524 of file yocto_rangefinder.cpp.
string YRangeFinder::get_command | ( | void | ) |
Definition at line 249 of file yocto_rangefinder.cpp.
double YRangeFinder::get_currentTemperature | ( | void | ) |
Returns the current sensor temperature, as a floating point number.
On failure, throws an exception or returns Y_CURRENTTEMPERATURE_INVALID.
Definition at line 227 of file yocto_rangefinder.cpp.
string YRangeFinder::get_hardwareCalibration | ( | void | ) |
Definition at line 182 of file yocto_rangefinder.cpp.
|
virtual |
Returns the temperature at the time when the latest calibration was performed. This function can be used to determine if a new calibration for ambient temperature is required.
Definition at line 417 of file yocto_rangefinder.cpp.
Y_RANGEFINDERMODE_enum YRangeFinder::get_rangeFinderMode | ( | void | ) |
Returns the range finder running mode. The rangefinder running mode allows you to put priority on precision, speed or maximum range.
On failure, throws an exception or returns Y_RANGEFINDERMODE_INVALID.
Definition at line 131 of file yocto_rangefinder.cpp.
|
inline |
Definition at line 170 of file yocto_rangefinder.h.
|
inline |
Definition at line 341 of file yocto_rangefinder.h.
YRangeFinder * YRangeFinder::nextRangeFinder | ( | void | ) |
Continues the enumeration of range finders started using yFirstRangeFinder().
Definition at line 514 of file yocto_rangefinder.cpp.
|
inline |
Definition at line 148 of file yocto_rangefinder.h.
|
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.
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 386 of file yocto_rangefinder.cpp.
|
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.
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 346 of file yocto_rangefinder.cpp.
int YRangeFinder::set_command | ( | const string & | newval | ) |
Definition at line 271 of file yocto_rangefinder.cpp.
int YRangeFinder::set_hardwareCalibration | ( | const string & | newval | ) |
Definition at line 204 of file yocto_rangefinder.cpp.
int YRangeFinder::set_rangeFinderMode | ( | Y_RANGEFINDERMODE_enum | newval | ) |
Changes the rangefinder running mode, allowing you to put priority on precision, speed or maximum range.
newval | : a value among Y_RANGEFINDERMODE_DEFAULT, Y_RANGEFINDERMODE_LONG_RANGE, Y_RANGEFINDERMODE_HIGH_ACCURACY and Y_RANGEFINDERMODE_HIGH_SPEED corresponding to the rangefinder running mode, allowing you to put priority on precision, speed or maximum range |
On failure, throws an exception or returns a negative error code.
Definition at line 166 of file yocto_rangefinder.cpp.
int YRangeFinder::set_unit | ( | const string & | newval | ) |
Changes the measuring unit for the measured range. That unit is a string. String value can be " or mm. Any other value is ignored. Remember to call the saveToFlash() method of the module if the modification must be kept. WARNING: if a specific calibration is defined for the rangeFinder function, a unit system change will probably break it.
newval | : a string corresponding to the measuring unit for the measured range |
On failure, throws an exception or returns a negative error code.
Definition at line 106 of file yocto_rangefinder.cpp.
|
inline |
Definition at line 195 of file yocto_rangefinder.h.
|
inline |
Definition at line 174 of file yocto_rangefinder.h.
|
inline |
Definition at line 165 of file yocto_rangefinder.h.
|
inline |
Definition at line 134 of file yocto_rangefinder.h.
|
virtual |
Triggers the hardware offset calibration of the distance sensor. This function is part of the calibration procedure to compensate for the the effect of a cover glass. Make sure to read the chapter about hardware calibration for details on the calibration procedure for proper results.
targetDist | : true distance of the calibration target, in mm or inches, depending on the unit selected in the device |
Definition at line 467 of file yocto_rangefinder.cpp.
|
virtual |
Triggers the photon detector hardware calibration. This function is part of the calibration procedure to compensate for the the effect of a cover glass. Make sure to read the chapter about hardware calibration for details on the calibration procedure for proper results.
Definition at line 450 of file yocto_rangefinder.cpp.
|
virtual |
Triggers a sensor calibration according to the current ambient temperature. That calibration process needs no physical interaction with the sensor. It is performed automatically at device startup, but it is recommended to start it again when the temperature delta since the latest calibration exceeds 8°C.
Definition at line 436 of file yocto_rangefinder.cpp.
|
virtual |
Triggers the hardware cross-talk calibration of the distance sensor. This function is part of the calibration procedure to compensate for the the effect of a cover glass. Make sure to read the chapter about hardware calibration for details on the calibration procedure for proper results.
targetDist | : true distance of the calibration target, in mm or inches, depending on the unit selected in the device |
Definition at line 490 of file yocto_rangefinder.cpp.
|
friend |
Retrieves a range finder for a given identifier. The identifier can be specified using several formats:
This function does not require that the range finder is online at the time it is invoked. The returned object is nevertheless valid. Use the method YRangeFinder.isOnline() to test if the range finder is indeed online at a given time. In case of ambiguity when looking for a range finder 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.
func | : a string that uniquely characterizes the range finder |
Definition at line 391 of file yocto_rangefinder.h.
|
friend |
Starts the enumeration of range finders currently accessible. Use the method YRangeFinder.nextRangeFinder() to iterate on next range finders.
Definition at line 402 of file yocto_rangefinder.h.
|
protected |
Definition at line 93 of file yocto_rangefinder.h.
|
protected |
Definition at line 92 of file yocto_rangefinder.h.
|
protected |
Definition at line 91 of file yocto_rangefinder.h.
|
protected |
Definition at line 90 of file yocto_rangefinder.h.
|
protected |
Definition at line 95 of file yocto_rangefinder.h.
|
protected |
Definition at line 94 of file yocto_rangefinder.h.
|
static |
Definition at line 118 of file yocto_rangefinder.h.
|
static |
Definition at line 117 of file yocto_rangefinder.h.
|
static |
Definition at line 116 of file yocto_rangefinder.h.
|
static |
Definition at line 111 of file yocto_rangefinder.h.
|
static |
Definition at line 113 of file yocto_rangefinder.h.
|
static |
Definition at line 114 of file yocto_rangefinder.h.
|
static |
Definition at line 115 of file yocto_rangefinder.h.
|
static |
Definition at line 112 of file yocto_rangefinder.h.