#include <yocto_realtimeclock.h>
Public Member Functions | |
virtual int | _invokeValueCallback (string value) |
string | dateTime (void) |
string | get_dateTime (void) |
Y_TIMESET_enum | get_timeSet (void) |
s64 | get_unixTime (void) |
int | get_utcOffset (void) |
YRealTimeClock * | next (void) |
YRealTimeClock * | nextRealTimeClock (void) |
virtual int | registerValueCallback (YRealTimeClockValueCallback callback) |
int | set_unixTime (s64 newval) |
int | set_utcOffset (int newval) |
int | setUnixTime (s64 newval) |
int | setUtcOffset (int newval) |
Y_TIMESET_enum | timeSet (void) |
s64 | unixTime (void) |
int | utcOffset (void) |
~YRealTimeClock () | |
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) |
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 YRealTimeClock * | Find (string func) |
static YRealTimeClock * | FindRealTimeClock (string func) |
static YRealTimeClock * | First (void) |
static YRealTimeClock * | FirstRealTimeClock (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) |
Static Public Attributes | |
static const string | DATETIME_INVALID = YAPI_INVALID_STRING |
static const Y_TIMESET_enum | TIMESET_FALSE = Y_TIMESET_FALSE |
static const Y_TIMESET_enum | TIMESET_INVALID = Y_TIMESET_INVALID |
static const Y_TIMESET_enum | TIMESET_TRUE = Y_TIMESET_TRUE |
static const s64 | UNIXTIME_INVALID = YAPI_INVALID_LONG |
static const int | UTCOFFSET_INVALID = YAPI_INVALID_INT |
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) |
YRealTimeClock (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 | |
string | _dateTime |
Y_TIMESET_enum | _timeSet |
s64 | _unixTime |
int | _utcOffset |
YRealTimeClockValueCallback | _valueCallbackRealTimeClock |
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 | |
YRealTimeClock * | yFindRealTimeClock (const string &func) |
YRealTimeClock * | yFirstRealTimeClock (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 |
YRealTimeClock Class: Real Time Clock function interface
The RealTimeClock function maintains and provides current date and time, even accross power cut lasting several days. It is the base for automated wake-up functions provided by the WakeUpScheduler. The current time may represent a local time as well as an UTC time, but no automatic time change will occur to account for daylight saving time.
Definition at line 77 of file yocto_realtimeclock.h.
|
protected |
Definition at line 51 of file yocto_realtimeclock.cpp.
YRealTimeClock::~YRealTimeClock | ( | ) |
Definition at line 63 of file yocto_realtimeclock.cpp.
|
virtual |
Reimplemented from YFunction.
Definition at line 337 of file yocto_realtimeclock.cpp.
|
protectedvirtual |
Reimplemented from YFunction.
Definition at line 72 of file yocto_realtimeclock.cpp.
|
inline |
Definition at line 147 of file yocto_realtimeclock.h.
|
inlinestatic |
Definition at line 235 of file yocto_realtimeclock.h.
|
static |
Retrieves a clock for a given identifier. The identifier can be specified using several formats:
This function does not require that the clock is online at the time it is invoked. The returned object is nevertheless valid. Use the method YRealTimeClock.isOnline() to test if the clock is indeed online at a given time. In case of ambiguity when looking for a clock 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 clock |
Definition at line 286 of file yocto_realtimeclock.cpp.
|
inlinestatic |
Definition at line 259 of file yocto_realtimeclock.h.
|
static |
Starts the enumeration of clocks currently accessible. Use the method YRealTimeClock.nextRealTimeClock() to iterate on next clocks.
Definition at line 357 of file yocto_realtimeclock.cpp.
string YRealTimeClock::get_dateTime | ( | void | ) |
Returns the current time in the form "YYYY/MM/DD hh:mm:ss".
On failure, throws an exception or returns Y_DATETIME_INVALID.
Definition at line 152 of file yocto_realtimeclock.cpp.
Y_TIMESET_enum YRealTimeClock::get_timeSet | ( | void | ) |
Returns true if the clock has been set, and false otherwise.
On failure, throws an exception or returns Y_TIMESET_INVALID.
Definition at line 237 of file yocto_realtimeclock.cpp.
s64 YRealTimeClock::get_unixTime | ( | void | ) |
Returns the current time in Unix format (number of elapsed seconds since Jan 1st, 1970).
On failure, throws an exception or returns Y_UNIXTIME_INVALID.
Definition at line 98 of file yocto_realtimeclock.cpp.
int YRealTimeClock::get_utcOffset | ( | void | ) |
Returns the number of seconds between current time and UTC time (time zone).
On failure, throws an exception or returns Y_UTCOFFSET_INVALID.
Definition at line 181 of file yocto_realtimeclock.cpp.
|
inline |
Definition at line 246 of file yocto_realtimeclock.h.
YRealTimeClock * YRealTimeClock::nextRealTimeClock | ( | void | ) |
Continues the enumeration of clocks started using yFirstRealTimeClock().
Definition at line 347 of file yocto_realtimeclock.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 318 of file yocto_realtimeclock.cpp.
int YRealTimeClock::set_unixTime | ( | s64 | newval | ) |
Changes the current time. Time is specifid in Unix format (number of elapsed seconds since Jan 1st, 1970).
newval | : an integer corresponding to the current time |
On failure, throws an exception or returns a negative error code.
Definition at line 129 of file yocto_realtimeclock.cpp.
int YRealTimeClock::set_utcOffset | ( | int | newval | ) |
Changes the number of seconds between current time and UTC time (time zone). The timezone is automatically rounded to the nearest multiple of 15 minutes.
newval | : an integer corresponding to the number of seconds between current time and UTC time (time zone) |
On failure, throws an exception or returns a negative error code.
Definition at line 213 of file yocto_realtimeclock.cpp.
|
inline |
Definition at line 135 of file yocto_realtimeclock.h.
|
inline |
Definition at line 173 of file yocto_realtimeclock.h.
|
inline |
Definition at line 186 of file yocto_realtimeclock.h.
|
inline |
Definition at line 122 of file yocto_realtimeclock.h.
|
inline |
Definition at line 159 of file yocto_realtimeclock.h.
|
friend |
Retrieves a clock for a given identifier. The identifier can be specified using several formats:
This function does not require that the clock is online at the time it is invoked. The returned object is nevertheless valid. Use the method YRealTimeClock.isOnline() to test if the clock is indeed online at a given time. In case of ambiguity when looking for a clock 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 clock |
Definition at line 296 of file yocto_realtimeclock.h.
|
friend |
Starts the enumeration of clocks currently accessible. Use the method YRealTimeClock.nextRealTimeClock() to iterate on next clocks.
Definition at line 307 of file yocto_realtimeclock.h.
|
protected |
Definition at line 86 of file yocto_realtimeclock.h.
|
protected |
Definition at line 88 of file yocto_realtimeclock.h.
|
protected |
Definition at line 85 of file yocto_realtimeclock.h.
|
protected |
Definition at line 87 of file yocto_realtimeclock.h.
|
protected |
Definition at line 89 of file yocto_realtimeclock.h.
|
static |
Definition at line 106 of file yocto_realtimeclock.h.
|
static |
Definition at line 108 of file yocto_realtimeclock.h.
|
static |
Definition at line 110 of file yocto_realtimeclock.h.
|
static |
Definition at line 109 of file yocto_realtimeclock.h.
|
static |
Definition at line 105 of file yocto_realtimeclock.h.
|
static |
Definition at line 107 of file yocto_realtimeclock.h.