]> git.mxchange.org Git - simgear.git/blobdiff - simgear/hla/HLABasicDataElement.hxx
hla: Use raw pointers for HLAFederate::_insert methods.
[simgear.git] / simgear / hla / HLABasicDataElement.hxx
index e38499dff46d84db728a70a019c91755dec5ad1f..f729d7f0cd6571eade0030cebb589b0b405a00f9 100644 (file)
@@ -28,6 +28,12 @@ public:
     HLABasicDataElement(const HLABasicDataType* dataType);
     virtual ~HLABasicDataElement();
 
+    virtual void accept(HLADataElementVisitor& visitor);
+    virtual void accept(HLAConstDataElementVisitor& visitor) const;
+
+    virtual bool encode(HLAEncodeStream& stream) const = 0;
+    virtual bool decode(HLADecodeStream& stream) = 0;
+
     virtual const HLABasicDataType* getDataType() const;
     virtual bool setDataType(const HLADataType* dataType);
     void setDataType(const HLABasicDataType* dataType);
@@ -41,6 +47,7 @@ class HLAAbstract##type##DataElement : public HLABasicDataElement {           \
 public:                                                                       \
     HLAAbstract##type##DataElement(const HLABasicDataType* dataType = 0);     \
     virtual ~HLAAbstract##type##DataElement();                                \
+                                                                              \
     virtual bool encode(HLAEncodeStream& stream) const;                       \
     virtual bool decode(HLADecodeStream& stream);                             \
                                                                               \
@@ -88,6 +95,7 @@ private:                                                                      \
 };
 
 
+TYPED_HLA_BASIC_DATA_ELEMENT(Bool, bool);
 TYPED_HLA_BASIC_DATA_ELEMENT(Char, char);
 TYPED_HLA_BASIC_DATA_ELEMENT(WChar, wchar_t);
 TYPED_HLA_BASIC_DATA_ELEMENT(SChar, signed char);