X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=simgear%2Fhla%2FHLABasicDataElement.hxx;h=f729d7f0cd6571eade0030cebb589b0b405a00f9;hb=1f585d67199896749f5f532657d17afe586f6615;hp=e38499dff46d84db728a70a019c91755dec5ad1f;hpb=baf511684119e219906fa37f3e7c7f43151bb435;p=simgear.git diff --git a/simgear/hla/HLABasicDataElement.hxx b/simgear/hla/HLABasicDataElement.hxx index e38499df..f729d7f0 100644 --- a/simgear/hla/HLABasicDataElement.hxx +++ b/simgear/hla/HLABasicDataElement.hxx @@ -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);