KPN Things Device SDK
senml_double_pack.h
Go to the documentation of this file.
1/* _ __ ____ _ _
2 * | |/ / | _ \ | \ | |
3 * | ' / | |_) | | \| |
4 * | . \ | __/ | |\ |
5 * |_|\_\ |_| |_| \_|
6 *
7 * (c) 2020 KPN
8 * License: MIT License.
9 * Author: Joseph Verburg, Jan Bogaerts
10 *
11 * pack (document) with double base values headers
12 */
13
14#ifndef THINGSML_SENML_DOUBLE_PACK
15#define THINGSML_SENML_DOUBLE_PACK
16
17#include "senml_pack_t.h"
18
22class SenMLDoublePack : public SenMLPackTemplate<double> {
23 public:
24 SenMLDoublePack(const char *baseName) : SenMLPackTemplate(baseName, SENML_UNIT_NONE, NAN){};
25 SenMLDoublePack(const char *baseName, SenMLUnit baseUnit) : SenMLPackTemplate(baseName, baseUnit, NAN){};
26 SenMLDoublePack(const char *baseName, SenMLUnit baseUnit, double baseTime)
27 : SenMLPackTemplate(baseName, baseUnit, baseTime){};
28
29 SenMLDoublePack(PACK_ACTUATOR_SIGNATURE) : SenMLPackTemplate(NULL, SENML_UNIT_NONE, NAN, callback){};
30 SenMLDoublePack(const char *baseName, PACK_ACTUATOR_SIGNATURE)
31 : SenMLPackTemplate(baseName, SENML_UNIT_NONE, NAN, callback){};
32 SenMLDoublePack(const char *baseName, SenMLUnit baseUnit, PACK_ACTUATOR_SIGNATURE)
33 : SenMLPackTemplate(baseName, baseUnit, NAN, callback){};
34 SenMLDoublePack(const char *baseName, SenMLUnit baseUnit, double baseTime, PACK_ACTUATOR_SIGNATURE)
35 : SenMLPackTemplate(baseName, baseUnit, baseTime, callback){};
36
38
46 virtual int fieldsToJson();
47
56 virtual int fieldsToCbor();
57
58 protected:
59 virtual void setupStreamCtx(Stream *dest, SenMLStreamMethod format);
60 virtual void setupStreamCtx(char *dest, int length, SenMLStreamMethod format);
61
62 private:
63};
64
65#endif // THINGSML_SENML_DOUBLE_PACK
Definition: senml_double_pack.h:22
SenMLDoublePack(const char *baseName, SenMLUnit baseUnit, double baseTime)
Definition: senml_double_pack.h:26
SenMLDoublePack(const char *baseName, SenMLUnit baseUnit, PACK_ACTUATOR_SIGNATURE)
Definition: senml_double_pack.h:32
virtual int fieldsToJson()
Definition: senml_double_pack.cpp:32
SenMLDoublePack(PACK_ACTUATOR_SIGNATURE)
Definition: senml_double_pack.h:29
virtual int fieldsToCbor()
Definition: senml_double_pack.cpp:49
SenMLDoublePack(const char *baseName, SenMLUnit baseUnit)
Definition: senml_double_pack.h:25
~SenMLDoublePack()
Definition: senml_double_pack.h:37
SenMLDoublePack(const char *baseName, PACK_ACTUATOR_SIGNATURE)
Definition: senml_double_pack.h:30
SenMLDoublePack(const char *baseName)
Definition: senml_double_pack.h:24
SenMLDoublePack(const char *baseName, SenMLUnit baseUnit, double baseTime, PACK_ACTUATOR_SIGNATURE)
Definition: senml_double_pack.h:34
virtual void setupStreamCtx(Stream *dest, SenMLStreamMethod format)
Definition: senml_double_pack.cpp:18
Definition: senml_pack_t.h:27
Definition: defaults.h:50
SenMLUnit
Definition: senml_enums.h:97
@ SENML_UNIT_NONE
Definition: senml_enums.h:98
SenMLStreamMethod
Definition: senml_enums.h:49