![]() |
flux sdk
v01.02.02-3-g292b3a7
Embedded C++ SDK
|
#include <functional>
#include <map>
#include <string.h>
#include <string>
#include <type_traits>
#include <vector>
#include "flxCoreLog.h"
#include "flxUtils.h"
#include "Arduino.h"
Classes | |
class | flxDescriptor |
Represents a descriptor object with name, description, and title. More... | |
union | flxDataAllType_t |
A union that can hold any of the basic data types used in the framework. More... | |
class | flxDataVariable |
A class that can hold any of the basic data types used in the framework. It supports the getting and setting of values based on type. Additionally it can check quality (based on type and value) and convert the value to a string. More... | |
class | flxDataArray |
This class is used as a base class for the templated array classes. More... | |
class | flxDataArrayType< T > |
A templated class to define an array class of a specific type. More... | |
class | flxDataArrayString |
A string array class. More... | |
struct | flxPersist |
Defines a basic persistance interface for the framework. More... | |
class | flxDataOut |
Defines the interface for getting data from an object. More... | |
class | _flxDataOut< T > |
A template DataOut class that returns values of the templated type. More... | |
class | _flxDataOutString |
class | flxDataLimitDesc |
class | flxDataLimit |
class | flxDataLimitType< T > |
class | flxDataLimitRange< T > |
class | flxDataLimitSetType< T > |
class | flxDataIn |
class | _flxDataIn< T > |
class | _flxDataInString |
Macros | |
#define | kflxTypeIDNone 0 |
Enumerations | |
enum | flxDataType_t : std::uint8_t { flxTypeNone = 0x00 , flxTypeBool = 0x0A , flxTypeInt8 = 0x11 , flxTypeUInt8 = 0x01 , flxTypeInt16 = 0x12 , flxTypeUInt16 = 0x02 , flxTypeInt32 = 0x14 , flxTypeUInt32 = 0x04 , flxTypeFloat = 0x24 , flxTypeDouble = 0x28 , flxTypeString = 0x21 } |
Enumeration of data types - used throughout the framework. More... | |
enum | flxDataLimit_t { flxDataLimitTypeNone = 0 , flxDataLimitTypeRange , flxDataLimitTypeSet } |
Functions | |
template<typename T , typename std::enable_if< std::is_integral< T >::value, void * >::type = nullptr> | |
constexpr flxDataType_t | flxGetTypeOf () |
template<typename T > | |
constexpr flxDataType_t | flxGetTypeOf (const T &) |
const char * | flxGetTypeName (flxDataType_t type) |
Return the name of the data type as a constant string. More... | |
template<typename T > | |
flxTypeID | flxGetClassTypeID () |
Variables | |
const flxDataType_t | flxDataTypeArray [] |
#define kflxTypeIDNone 0 |
using flxDataArrayBool = flxDataArrayType<bool> |
A boolean array class.
using flxDataArrayDouble = flxDataArrayType<double> |
A double array class.
using flxDataArrayFloat = flxDataArrayType<float> |
A float array class.
using flxDataArrayInt16 = flxDataArrayType<int16_t> |
An int16_t array class.
using flxDataArrayInt32 = flxDataArrayType<int32_t> |
An int32_t array class.
using flxDataArrayInt8 = flxDataArrayType<int8_t> |
An int8_t array class.
using flxDataArrayUInt16 = flxDataArrayType<uint16_t> |
A uint16_t array class.
using flxDataArrayUInt32 = flxDataArrayType<uint32_t> |
A uint32_t array class.
using flxDataArrayUInt8 = flxDataArrayType<uint8_t> |
A uint8_t array class.
using flxDataLimitList = std::vector<flxDataLimitDesc> |
using flxDataLimitRangeDouble = flxDataLimitRange<double> |
using flxDataLimitRangeFloat = flxDataLimitRange<float> |
using flxDataLimitRangeInt16 = flxDataLimitRange<int16_t> |
using flxDataLimitRangeInt32 = flxDataLimitRange<int32_t> |
using flxDataLimitRangeInt8 = flxDataLimitRange<int8_t> |
using flxDataLimitRangeUInt16 = flxDataLimitRange<uint16_t> |
using flxDataLimitRangeUInt32 = flxDataLimitRange<uint32_t> |
using flxDataLimitRangeUInt8 = flxDataLimitRange<uint8_t> |
using flxDataLimitSetDouble = flxDataLimitSetType<double> |
using flxDataLimitSetFloat = flxDataLimitSetType<float> |
using flxDataLimitSetInt16 = flxDataLimitSetType<int16_t> |
using flxDataLimitSetInt32 = flxDataLimitSetType<int32_t> |
using flxDataLimitSetInt8 = flxDataLimitSetType<int8_t> |
using flxDataLimitSetString = flxDataLimitSetType<std::string> |
using flxDataLimitSetUInt16 = flxDataLimitSetType<uint16_t> |
using flxDataLimitSetUInt32 = flxDataLimitSetType<uint32_t> |
using flxDataLimitSetUInt8 = flxDataLimitSetType<uint8_t> |
typedef uint32_t flxTypeID |
enum flxDataLimit_t |
enum flxDataType_t : std::uint8_t |
Enumeration of data types - used throughout the framework.
This is something picked up from the NVS system of esp32 - solid hack.
Enumerator | |
---|---|
flxTypeNone | |
flxTypeBool | |
flxTypeInt8 | |
flxTypeUInt8 | |
flxTypeInt16 | |
flxTypeUInt16 | |
flxTypeInt32 | |
flxTypeUInt32 | |
flxTypeFloat | |
flxTypeDouble | |
flxTypeString |
flxTypeID flxGetClassTypeID | ( | ) |
const char * flxGetTypeName | ( | flxDataType_t | type | ) |
Return the name of the data type as a constant string.
type | The datatype to get the name of. |
|
constexpr |
|
constexpr |
const flxDataType_t flxDataTypeArray[] |