|
|
| GmAppEventSource (UInt8 iSubjectId, GmManagedArrayRingBuffer< uint8_t, GM_SIZE_OF_APP_DATA_QUEUE > *mainEventQueue) |
| |
|
int | Initialize () |
| |
|
void | ReadDataInternal () |
| |
|
int | AddEvent (UInt32 uiEventCode, UInt32 uiEventInfo, UInt32 uiDataLength, const char *caData) |
| |
| int | WriteToStorage (UInt32 ui32Topic, char *pData, UInt32 iSize, GmStorage *psStorage, UInt32 ui32FormatId) |
| |
| | GmBufferedSensor (UInt8 iSubjectId, int iRingCount, int iDataSize, GmManagedArrayRingBuffer< uint8_t, GM_SIZE_OF_APP_DATA_QUEUE > *mainEventQueue) |
| | Constructor for derived classes, when it's OK to allocate a local buffer dynamically. More...
|
| |
| | GmBufferedSensor (UInt8 iSubjectId, int iRingCount, int iDataSize, UInt8 *puiBuffer, UInt32 uiBufferSize, GmManagedArrayRingBuffer< uint8_t, GM_SIZE_OF_APP_DATA_QUEUE > *mainEventQueue) |
| | Constructor used by most derived classes on memory-constrained systems. In this case the derived class provides a buffer, usually static, so that the buffer doesn't need to be allocated dynamically. More...
|
| |
|
int | Start () |
| |
|
int | ResetBuffers () |
| |
|
Bool | HasData () |
| |
|
int | ReadRecord (char *pcDestination, int iSize) |
| | The main interface for consumers of a sensors data to get that data. It simply copies the data in the sensor's buffer into the caller's buffer. It is up to the caller to know what to do with that data, and how to free any local memory. (This function should have been name ReadNextRecord)
|
| |
|
virtual int | DeleteNextRecord () |
| | DeleteNextRecord allows a caller to discard the next record without retrieving it. The subclasses that implement DeleteNextRecord must be able to deal with any memory that needs to be freed, or other such concerns.
|
| |
|
void | SetSensorId (int iSensorId) |
| |
|
int | GetSensorId () |
| |
|
|
CChildRingBuffer * | m_rbBuffer |
| | The local buffer into which the sensor or event source stores each of its events or measurements. When an item is committed to this buffer, it also adds an event (consisting of the sensor's subject ID) into the application main event queue. The full event or measurement remains here, until the application reads the subject ID out of the main queue and then asks this sensor object for the full information by calling ReadRecord.
|
| |
|
UInt8 | m_iSubjectId |
| |
|
int | m_iSensorId |
| |
◆ WriteToStorage()
| int GmAppEventSource::WriteToStorage |
( |
UInt32 |
ui32Topic, |
|
|
char * |
pData, |
|
|
UInt32 |
iSize, |
|
|
GmStorage * |
psStorage, |
|
|
UInt32 |
ui32FormatId |
|
) |
| |
|
virtual |
Virtual function, abstract in this class, called when a sensor should write its data to a storage or other event handler.
- Parameters
-
| ui32Topic | Hint to the storage (MQTT is one) about adding some topic or header information about the data. Not all storages use the hint. |
| pData | The data to be written. |
| iSize | Size of the data to be written. |
| psStorage | Storage or event handler to which the data will be written. |
| ui32FormatId | Formatting information to be used by the sensor. Within a single application, a sensor might be asked to write different formats to different storages or event handlers. Very likely the per-storage, per-mode information was stored in an instance of Geometrics::SensorStorageModeInfo. |
Implements Geometrics::GmEventSource.
The documentation for this class was generated from the following files:
- /home/kddev/dev/AppDev/GmCommon/include/GmAppEvent.hpp
- /home/kddev/dev/AppDev/GmCommon/GmEventSource/GmAppEvent.cpp