flux sdk  v01.02.02-3-g292b3a7
Embedded C++ SDK
Loading...
Searching...
No Matches
flxFlux Class Reference

#include <flxFlux.h>

Inheritance diagram for flxFlux:
flxContainer< T > flxObject flxPersist _flxPropertyContainer flxDescriptor

Public Member Functions

bool start ()
 
bool loop (void)
 
void add (flxAction &theAction)
 
void add (flxAction *theAction)
 
void add (flxDevice &theDevice)
 
void add (flxDevice *theDevice)
 
 flxFlux (flxFlux const &)=delete
 
void operator= (flxFlux const &)=delete
 
bool save (flxStorage *pStorage)
 
bool restore (flxStorage *pStorage)
 
template<class T >
std::shared_ptr< flxContainer< T * > > get ()
 
std::shared_ptr< flxOperationContainerget (flxTypeID type)
 
template<class T >
bool isConnected ()
 
flxDeviceContainerconnectedDevices (void)
 
flxBusSPIspiDriver ()
 
flxBusI2Ci2cDriver ()
 
void setVersion (uint32_t major, uint32_t minor, uint32_t point, const char *desc, uint32_t build)
 
void versionString (char *buffer, size_t nbuffer, bool bFull=false)
 
uint32_t version ()
 
void version (uint32_t &major, uint32_t &minor, uint32_t &point)
 
uint32_t build (void)
 
void setAppClassID (const char *ID, char prefix[5])
 
const char * appClassID (void)
 
void writeBanner (void)
 
const char * deviceId (void)
 
void setLocalName (std::string name)
 
std::string localName (void)
 
void setApplication (flxApplication &theApp)
 
void setApplication (flxApplication *theApp)
 
flxApplicationapplication (void)
 
void setAppToken (const uint8_t *data, size_t len)
 
bool getAppToken (uint8_t token[32])
 
void setVerboseDevNames (bool bVerbose)
 
bool verboseDevNames (void)
 
void setAutoload (bool bAuto)
 
void setLoadSettings (bool bLoad)
 
void dumpDeviceAutoLoadTable (void)
 
- Public Member Functions inherited from flxContainer< T >
 flxContainer ()
 
auto size () -> decltype(_vector.size())
 
void push_back (T value)
 
void pop_back (void)
 
void insert (typename std::vector< T >::iterator it, T value)
 
auto back (void) -> decltype(_vector.back())
 
auto front () -> decltype(_vector.front())
 
T & at (size_t pos)
 
auto cbegin () -> decltype(_vector.cbegin())
 
auto cend () -> decltype(_vector.cend())
 
auto begin () -> decltype(_vector.begin())
 
auto end () -> decltype(_vector.end())
 
auto rbegin () -> decltype(_vector.rbegin())
 
auto rend () -> decltype(_vector.rend())
 
auto empty () -> decltype(_vector.empty())
 
iterator erase (iterator pos)
 
void remove (T value)
 
flxTypeID getType (void)
 
virtual bool save (flxStorage *pStorage)
 
virtual bool restore (flxStorage *pStorage)
 
- Public Member Functions inherited from flxObject
 flxObject ()
 
virtual ~flxObject ()
 
void setParent (flxObject *parent)
 
void setParent (flxObject &parent)
 
flxObjectparent ()
 
void setHidden (bool bHide=true)
 
bool hidden ()
 
void setIsDirty (bool bDirty=true)
 
bool isDirty (void)
 
virtual bool onSave (flxStorageBlock *stBlk)
 
virtual bool save (flxStorage *pStorage)
 
virtual bool onRestore (flxStorageBlock *stBlk)
 
virtual bool restore (flxStorage *pStorage)
 
virtual flxTypeID getType (void)
 
virtual bool save (flxStorage *)=0
 
virtual bool restore (flxStorage *)=0
 
- Public Member Functions inherited from _flxPropertyContainer
 _flxPropertyContainer ()
 
void addProperty (flxProperty *newProperty)
 
void addProperty (flxProperty &newProperty)
 
void removeProperty (flxProperty *rmProp)
 
void removeProperty (flxProperty &rmProp)
 
flxPropertyListgetProperties (void)
 
uint nProperties (void)
 
bool saveProperties (flxStorageBlock *stBlk)
 
bool restoreProperties (flxStorageBlock *stBlk)
 
size_t propertySaveSize ()
 
void hideProperty (flxProperty &theProp)
 
- Public Member Functions inherited from flxDescriptor
 flxDescriptor ()
 
void setName (const char *new_name)
 Set the Name object - storing the pointer to the provided string No allocation is performed. If the previous name was allocated, it is freed. More...
 
void setName (const char *new_name, const char *new_desc)
 Set the Name object and the Description for the object. Both strings are constants. More...
 
void setName (char *new_name)
 Set the Name object, but makes a copy of the input string since the input is not const. If the previous name was allocated, it is freed. More...
 
const char * name ()
 Return a const char pointer to the name of the object. More...
 
std::string name_ (void)
 Returns a std::string of the name of the object. More...
 
void setDescription (const char *new_desc)
 Set the Description object - the input value is constant and not copied. If the previous description was allocated, it is freed. More...
 
void setDescription (char *new_desc)
 Set the Description object - the input value is not constant and is copied. If the previous description was allocated, it is freed. More...
 
const char * description ()
 Return the constant C string pointer to the description of the object. More...
 
std::string description_ (void)
 Return the description of the object as a std::string. More...
 
void setTitle (const char *title)
 Set the Title object - the title is optional and is used mostly for UX or organizational purposes. The input value is constant and not copied. If the previous title was allocated, it is freed. More...
 
void setTitleAlloc (char *new_title)
 Set the Title of the object , but make an explict copy of the provided string. More...
 
const char * title (void)
 Return the C constant string pointer to the title of the object. More...
 

Static Public Member Functions

static flxFluxget (void)
 
- Static Public Member Functions inherited from flxContainer< T >
static flxTypeID type (void)
 
- Static Public Member Functions inherited from flxObject
static flxTypeID type (void)
 

Public Attributes

flxDeviceContainer Devices
 
flxActionContainer Actions
 

Additional Inherited Members

- Public Types inherited from flxContainer< T >
typedef std::vector< T >::iterator iterator
 
- Protected Attributes inherited from flxContainer< T >
std::vector< T > _vector
 
- Protected Attributes inherited from flxDescriptor
const char * _name
 
bool _nameAlloc
 
const char * _desc
 
bool _descAlloc
 
const char * _title
 
bool _titleAlloc
 

Constructor & Destructor Documentation

◆ flxFlux()

flxFlux::flxFlux ( flxFlux const &  )
delete

Member Function Documentation

◆ add() [1/4]

void flxFlux::add ( flxAction theAction)
inline

◆ add() [2/4]

void flxFlux::add ( flxAction theAction)
inline

◆ add() [3/4]

void flxFlux::add ( flxDevice theDevice)
inline

◆ add() [4/4]

void flxFlux::add ( flxDevice theDevice)

◆ appClassID()

const char * flxFlux::appClassID ( void  )
inline

◆ application()

flxApplication * flxFlux::application ( void  )
inline

◆ build()

uint32_t flxFlux::build ( void  )
inline

◆ connectedDevices()

flxDeviceContainer & flxFlux::connectedDevices ( void  )
inline

◆ deviceId()

const char * flxFlux::deviceId ( void  )

◆ dumpDeviceAutoLoadTable()

void flxFlux::dumpDeviceAutoLoadTable ( void  )
inline

◆ get() [1/3]

template<class T >
std::shared_ptr< flxContainer< T * > > flxFlux::get ( )
inline

◆ get() [2/3]

std::shared_ptr< flxOperationContainer > flxFlux::get ( flxTypeID  type)
inline

◆ get() [3/3]

static flxFlux & flxFlux::get ( void  )
inlinestatic

◆ getAppToken()

bool flxFlux::getAppToken ( uint8_t  token[32])

◆ i2cDriver()

flxBusI2C & flxFlux::i2cDriver ( )
inline

◆ isConnected()

template<class T >
bool flxFlux::isConnected ( )
inline

◆ localName()

std::string flxFlux::localName ( void  )
inline

◆ loop()

bool flxFlux::loop ( void  )

◆ operator=()

void flxFlux::operator= ( flxFlux const &  )
delete

◆ restore()

bool flxFlux::restore ( flxStorage pStorage)
virtual

Reimplemented from flxContainer< T >.

◆ save()

bool flxFlux::save ( flxStorage pStorage)
virtual

Reimplemented from flxContainer< T >.

◆ setAppClassID()

void flxFlux::setAppClassID ( const char *  ID,
char  prefix[5] 
)
inline

◆ setApplication() [1/2]

void flxFlux::setApplication ( flxApplication theApp)
inline

◆ setApplication() [2/2]

void flxFlux::setApplication ( flxApplication theApp)
inline

◆ setAppToken()

void flxFlux::setAppToken ( const uint8_t *  data,
size_t  len 
)

◆ setAutoload()

void flxFlux::setAutoload ( bool  bAuto)
inline

◆ setLoadSettings()

void flxFlux::setLoadSettings ( bool  bLoad)
inline

◆ setLocalName()

void flxFlux::setLocalName ( std::string  name)
inline

◆ setVerboseDevNames()

void flxFlux::setVerboseDevNames ( bool  bVerbose)

◆ setVersion()

void flxFlux::setVersion ( uint32_t  major,
uint32_t  minor,
uint32_t  point,
const char *  desc,
uint32_t  build 
)
inline

◆ spiDriver()

flxBusSPI & flxFlux::spiDriver ( )
inline

◆ start()

bool flxFlux::start ( )

◆ verboseDevNames()

bool flxFlux::verboseDevNames ( void  )

◆ version() [1/2]

uint32_t flxFlux::version ( )
inline

◆ version() [2/2]

void flxFlux::version ( uint32_t &  major,
uint32_t &  minor,
uint32_t &  point 
)
inline

◆ versionString()

void flxFlux::versionString ( char *  buffer,
size_t  nbuffer,
bool  bFull = false 
)
inline

◆ writeBanner()

void flxFlux::writeBanner ( void  )
inline

Member Data Documentation

◆ Actions

flxActionContainer flxFlux::Actions

◆ Devices

flxDeviceContainer flxFlux::Devices

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