7 #ifndef DtInteractionWithEncDec_H_
8 #define DtInteractionWithEncDec_H_
28 DtGenericParameterInfo() {}
29 DtGenericParameterInfo(
const DtGenericParameterInfo& other)
30 : handle(other.handle)
31 , buffer(other.buffer) {}
33 ~DtGenericParameterInfo() {}
35 RTI::ParameterHandle handle;
36 std::vector<char> buffer;
49 DtInteractionWithEncDec();
52 virtual ~DtInteractionWithEncDec();
55 DtInteractionWithEncDec(
const DtInteractionWithEncDec& orig);
58 DtInteractionWithEncDec&
operator=(
const DtInteractionWithEncDec& orig);
69 DtInterClassDesc* classDesc = NULL);
75 virtual const RTI::ParameterHandleValueMap& phvm()
const;
77 virtual const RTI::ParameterHandleValuePairSet& phvps()
const;
82 virtual void setFromPhvm(
83 const RTI::ParameterHandleValueMap& pvList);
85 virtual void setFromPhvps(
86 const RTI::ParameterHandleValuePairSet& pvList);
96 virtual void useThese(DtInteractionEncoder* enc,
97 DtInteractionDecoder* dec,
98 DtInteractionRep* data);
101 virtual DtInteractionEncoder* encoder()
const;
104 virtual DtInteractionDecoder* decoder()
const;
110 virtual void setParameterByHandle(
const RTI::ParameterHandle& attrHdl,
const char*
attrValue,
unsigned size);
113 virtual const char* getParameterByHandle(
const RTI::ParameterHandle& attrHdl,
unsigned& size)
const;
116 virtual void setParameterByName(
const DtString& name,
const char*
attrValue,
unsigned size);
119 virtual const char* getParameterByName(
const DtString& name,
unsigned& size)
const;
129 virtual DtInteractionDecoder* createDecoder(
135 virtual DtInteractionEncoder* createEncoder(
139 virtual DtInteractionDecoder* decoderToUse(
143 virtual DtInteractionEncoder* encoderToUse(
150 DtInteractionRep* myData;
155 std::map<RTI::ParameterHandle, DtGenericParameterInfo*> myParametersByHandle;
160 mutable DtInteractionDecoder* myMutableCreatedDecoder;
161 mutable DtInteractionEncoder* myMutableCreatedEncoder;
162 mutable RTI::InteractionClassHandle myMutableEncoderClassHandle;
163 mutable RTI::InteractionClassHandle myMutableDecoderClassHandle;
167 inline DtInteractionEncoder* DtInteractionWithEncDec::encoder()
const
172 inline DtInteractionDecoder* DtInteractionWithEncDec::decoder()
const