13 #ifndef RTI_HLAvariantRecord_h_
14 #define RTI_HLAvariantRecord_h_
18 #include <RTI/SpecificConfig.h>
23 class VariableLengthData;
24 class HLAvariantRecordImplementation;
44 virtual std::auto_ptr<DataElement> clone ()
const;
56 virtual void encodeInto (
57 std::vector<Octet>& buffer)
const
66 virtual size_t decodeFrom (
67 std::vector<Octet>
const & buffer,
72 virtual size_t getEncodedLength ()
const
76 virtual unsigned int getOctetBoundary ()
const;
79 virtual bool isSameTypeAs(
83 virtual bool isSameTypeAs(
DataElement const& discriminant,
88 virtual bool hasMatchingDiscriminantTypeAs(
DataElement const& dataElement )
const;
98 virtual void addVariant (
115 virtual void addVariantPointer (
122 virtual void setDiscriminant (
128 virtual void setVariant (
139 virtual void setVariantPointer (
145 virtual const DataElement& getDiscriminant ()
const;
163 HLAvariantRecordImplementation*
_impl;
167 #endif // RTI_HLAvariantRecord_h_