CMSDK 2.0.1
Cross-platform C++ base library and SDK for the Psyclone AIOS platform
Loading...
Searching...
No Matches
ComponentData.h File Reference

Legacy per-component data record stored in the page-based allocator (predecessor of ComponentMemory). More...

#include "MemoryManager.h"
#include "DataMessage.h"
Include dependency graph for ComponentData.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  cmlabs::ComponentMapHeader
 Header of the legacy shared component map (bitfield + ComponentMapEntry array). More...
struct  cmlabs::ComponentMapEntry
 One component's location record in the legacy component map. More...
struct  cmlabs::ComponentStats
 Legacy per-component throughput counters (DataMessageHeader-based rings). More...
struct  cmlabs::COMPONENTDATAHEADER
 Fixed header of a legacy component data record; followed by parameter and private-data areas. More...
struct  cmlabs::PARAMHEADER
 Legacy size/type prefix of one parameter entry. More...
struct  cmlabs::PARAMINTEGERHEADER
 Legacy value block of an integer parameter. More...
struct  cmlabs::PARAMFLOATHEADER
 Legacy value block of a float parameter. More...
struct  cmlabs::PARAMCOLLHEADER
 Legacy value block of a collection parameter; followed by the packed values. More...
class  cmlabs::ComponentData
 Legacy accessor wrapping one component record inside a shared page. More...

Namespaces

namespace  cmlabs

Macros

#define PARAM_STRING   1
#define PARAM_INTEGER   2
#define PARAM_FLOAT   3
#define PARAM_STRING_COLL   4
#define PARAM_INTEGER_COLL   5
#define PARAM_FLOAT_COLL   6
#define PARAM_TYPE_COLL   3

Detailed Description

Legacy per-component data record stored in the page-based allocator (predecessor of ComponentMemory).

In the older MemoryManagerX design each component's record (COMPONENTDATAHEADER plus parameter and private-data areas) lived in its own memory page, located via a shared ComponentMap. Superseded by ComponentMemory.h, but kept for compatibility and tests.

Note
Several struct names here (ComponentStats, PARAM_* macros) intentionally shadow newer definitions; this header must not be mixed with ComponentMemory.h in one TU.
Warning
Shared-memory layouts; changing any struct here requires a full rebuild of all binaries (make clean && make) — see MemoryManager.h for the ABI warning.

Definition in file ComponentData.h.

Macro Definition Documentation

◆ PARAM_FLOAT

◆ PARAM_FLOAT_COLL

◆ PARAM_INTEGER

◆ PARAM_INTEGER_COLL

◆ PARAM_STRING

◆ PARAM_STRING_COLL

◆ PARAM_TYPE_COLL

#define PARAM_TYPE_COLL   3

Definition at line 27 of file ComponentData.h.