41 #ifndef _CHUNK_PRODUCER_H_
42 #define _CHUNK_PRODUCER_H_
52 class DDD_AttributeDouble;
53 class DDD_AttributeString;
54 class DDD_AttributeBool;
55 class DDD_AttributeUInt;
56 class ChunkDescription;
86 _directorAttribute(NULL),
95 _attributeChanged(false),
128 std::string _attributeName;
148 _attributeName = attrName;
159 std::string &
GetName() {
return _attributeName; }
203 std::string _headerName;
288 void ReadChunk(
ChunkDescription *chunk,
unsigned char *msgBuf,
unsigned int receivedLen);
337 int WriteChunk(
ChunkDescription *chunk,
unsigned char *msgBuf,
unsigned int maxLen);
343 void PrintDebugInfo(
unsigned char *msgBuf,
unsigned int receivedLength);
373 virtual void ProcessMessage(
unsigned char *msgBuf,
unsigned int receivedLength) {};
380 virtual int BuildMessage(
unsigned char *msgBuf,
unsigned int maxMessageLength,
unsigned int chunkNumber) {
return -1; }
398 static void Swap2(
unsigned char *val);
403 static void Swap4(
unsigned char *val);
408 static void Swap8(
unsigned char *val);
411 virtual const char *GetName(
void) {
return "ChunkProducer"; }
DDD_AttributeContainer. A virtual interface class for containers of attributes.
Definition: DDD_AttributeBase.h:57
std::string _name
Definition: ChunkProducer.h:62
A templated array of object pointers. The array dynamically resizes as needed.
Definition: dynamic_ptr_array.h:55
Definition: ChunkProducer.h:183
ChunkDescription()
Definition: ChunkProducer.h:207
~RuleDefinition()
Definition: ChunkProducer.h:176
unsigned int _size
Definition: ChunkProducer.h:64
bool _checkForChangeBeforeUpdate
Definition: ChunkProducer.h:355
Definition: ChunkProducer.h:217
virtual void OnAttributeChanged(DDD_AttributeBase *attribute)
Definition: ChunkProducer.h:349
A virtual interface class for all DataDirector attribute types.
Definition: DDD_AttributeBase.h:87
~ChunkAttribute()
Definition: ChunkProducer.h:101
ChunkAttribute * GetAttribute() const
Definition: ChunkProducer.h:155
DDD_AttributeBase * _directorAttribute
Definition: ChunkProducer.h:74
virtual void ProcessMessage(unsigned char *msgBuf, unsigned int receivedLength)
Definition: ChunkProducer.h:373
unsigned int _bitOffset
Definition: ChunkProducer.h:67
std::string _type
Definition: ChunkProducer.h:189
RuleDefinition * _rule
Definition: ChunkProducer.h:193
unsigned int _offset
Definition: ChunkProducer.h:63
Definition: ChunkProducer.h:237
Definition: ChunkProducer.h:167
DDD_AttributeBase * _initialValue
Definition: ChunkProducer.h:76
bool _isBitfield
Definition: ChunkProducer.h:66
unsigned int _debugMode
Definition: ChunkProducer.h:354
virtual void Start()
Definition: ChunkProducer.h:425
virtual int BuildMessage(unsigned char *msgBuf, unsigned int maxMessageLength, unsigned int chunkNumber)
Definition: ChunkProducer.h:380
DataType
Definition: DDD_AttributeBase.h:104
std::string _name
Definition: ChunkProducer.h:186
std::string & GetValue()
Definition: ChunkProducer.h:163
The DDD_AttributeList class. Maintains a list of Data Director attributes.
A virtual interface class for observers of attributes. AttributeObserver-derived objects are able to ...
Definition: DDD_AttributeBase.h:66
DynamicPtrArray< RuleElement * > _elements
Definition: ChunkProducer.h:170
void SetCheckForChangeBeforeUpdate(const bool value)
Definition: ChunkProducer.h:421
The DDD_RevertableAttribute class. Container for.
void SetDebugMode(unsigned int debugMode)
Definition: ChunkProducer.h:416
unsigned int _packetCount
Definition: ChunkProducer.h:353
bool _bigEndian
Definition: ChunkProducer.h:65
ChunkDescription * _chunk
Definition: ChunkProducer.h:71
ChunkAttributeList _attributes
Definition: ChunkProducer.h:191
void SetAttribute(ChunkAttribute *attr, const std::string &attrName, const std::string &attrValue)
Definition: ChunkProducer.h:146
bool _attributeChanged
Definition: ChunkProducer.h:70
unsigned int _bitLength
Definition: ChunkProducer.h:68
The DDD_Base class. Base class for Data Director objects.
Definition: DDD_Base.h:53
DDD_AttributeBase::DataType _type
Definition: ChunkProducer.h:73
std::string & GetName()
Definition: ChunkProducer.h:159
ChunkAttributeList()
Definition: ChunkProducer.h:116
RuleDefinition()
Definition: ChunkProducer.h:173
Definition: ChunkProducer.h:126
void EmptyList(void)
Definition: dynamic_ptr_array.h:322
unsigned int _bitMask
Definition: ChunkProducer.h:69
Definition: ChunkProducer.h:105
RuleElement()
Definition: ChunkProducer.h:136
ChunkAttribute(ChunkDescription *chunk)
Definition: ChunkProducer.h:85
unsigned int _packetLength
Definition: ChunkProducer.h:195
Definition: ChunkProducer.h:59
Definition: AttributeChangedEmitter.h:46
~ChunkAttributeList()
Definition: ChunkProducer.h:119