KPN Things Device SDK
SenMLDoubleRecord Class Reference

#include <senml_double_record.h>

Inheritance diagram for SenMLDoubleRecord:
SenMLRecordTemplate< double > SenMLRecord SenMLBase SenMLDoubleActuator

Public Member Functions

 SenMLDoubleRecord (const char *name)
 
 SenMLDoubleRecord (const char *name, SenMLUnit unit)
 
 SenMLDoubleRecord (const char *name, SenMLUnit unit, double value)
 
 SenMLDoubleRecord (ThingsMLMeasurementIndex index)
 
 SenMLDoubleRecord (ThingsMLMeasurementIndex index, double value)
 
 ~SenMLDoubleRecord ()
 
virtual int fieldsToJson ()
 
virtual int fieldsToCbor ()
 
- Public Member Functions inherited from SenMLRecordTemplate< double >
 SenMLRecordTemplate (const char *name)
 
 SenMLRecordTemplate (const char *name, SenMLUnit unit)
 
 SenMLRecordTemplate (const char *name, SenMLUnit unit, double value)
 
 SenMLRecordTemplate (ThingsMLMeasurementIndex index)
 
 SenMLRecordTemplate (ThingsMLMeasurementIndex index, double value)
 
double get ()
 
bool asSum ()
 
bool set (double value, double time=(double) NAN, bool asSum=false)
 
- Public Member Functions inherited from SenMLRecord
 SenMLRecord ()
 
 SenMLRecord (const char *name)
 
 SenMLRecord (ThingsMLMeasurementIndex index)
 
 SenMLRecord (const char *name, SenMLUnit unit)
 
double getTime ()
 
bool setTime (double value, bool absolute=true)
 
void setTimeDirect (double value)
 
const char * getName ()
 
ThingsMLMeasurementIndex getIndex ()
 
void setName (const char *name)
 
double getUpdateTime ()
 
bool setUpdateTime (double value, bool absolute=true)
 
SenMLUnit getUnit ()
 
void setUnit (SenMLUnit value)
 
virtual int fieldsToJson ()
 
virtual int fieldsToCbor ()
 
- Public Member Functions inherited from SenMLBase
 SenMLBase ()
 
 ~SenMLBase ()
 
SenMLBasegetNext ()
 
SenMLBasegetRoot ()
 
virtual void adjustToBaseTime (double prev, double time)
 
virtual int fieldsToJson ()=0
 
virtual int fieldsToCbor ()=0
 

Additional Inherited Members

- Protected Member Functions inherited from SenMLRecord
virtual int contentToJson ()
 
virtual int contentToCbor ()
 
virtual void adjustToBaseTime (double prev, double time)
 
virtual void actuate (const void *value, int dataLength, SenMLDataType dataType)
 
int getFieldLength ()
 
- Protected Member Functions inherited from SenMLBase
virtual int contentToJson ()=0
 
void setNext (SenMLBase *value)
 
void setPrev (SenMLBase *value)
 
SenMLBasegetPrev ()
 
virtual bool isPack ()
 
virtual int contentToCbor ()=0
 
virtual int getArrayLength ()
 
virtual int getFieldLength ()=0
 

Detailed Description

A SenMLRecord that stores double data. For cbor encoding this record automatically chooses the most efficient lossless storage method. This means that when possible it will encode as half float or float. This type of object can only be used for sensor data. If actuation is needed, use SenMLFloatActuator instead.

Constructor & Destructor Documentation

◆ SenMLDoubleRecord() [1/5]

SenMLDoubleRecord::SenMLDoubleRecord ( const char *  name)
inline

◆ SenMLDoubleRecord() [2/5]

SenMLDoubleRecord::SenMLDoubleRecord ( const char *  name,
SenMLUnit  unit 
)
inline

◆ SenMLDoubleRecord() [3/5]

SenMLDoubleRecord::SenMLDoubleRecord ( const char *  name,
SenMLUnit  unit,
double  value 
)
inline

◆ SenMLDoubleRecord() [4/5]

SenMLDoubleRecord::SenMLDoubleRecord ( ThingsMLMeasurementIndex  index)
inline

◆ SenMLDoubleRecord() [5/5]

SenMLDoubleRecord::SenMLDoubleRecord ( ThingsMLMeasurementIndex  index,
double  value 
)
inline

◆ ~SenMLDoubleRecord()

SenMLDoubleRecord::~SenMLDoubleRecord ( )
inline

Member Function Documentation

◆ fieldsToCbor()

int SenMLDoubleRecord::fieldsToCbor ( )
virtual

renders all the fields to cbor format. renders all the fields of the object without the length info at the beginning note: this is public so that custom implementations for the record object can use other objects internally and render to json using this function (ex: coordinatesRecord using 3 doubleRecords for lat, lon & alt.

Returns
: The number of bytes that were written.

Reimplemented from SenMLRecord.

◆ fieldsToJson()

int SenMLDoubleRecord::fieldsToJson ( )
virtual

renders all the fields to json, without the starting and ending brackets. Inheriters can extend this function if they want to add extra fields to the json output note: this is public so that custom implementations for the record object can use other objects internally and render to json using this function (ex: coordinatesRecord using 3 doubleRecords for lat, lon & alt.

Returns
: The number of bytes that were written.

Reimplemented from SenMLRecord.


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