lgrHlaAttribute.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 ******************************************************************************/
00005 
00009 
00010 #ifndef lgrHlaAttribute_H_
00011 #define lgrHlaAttribute_H_
00012 
00013 #if DtHLA
00014 
00015 #include "lgrSim.h"
00016 #include "lgrVariableLengthData.h"
00017 
00018 #include "absoluteTime.h"
00019 
00020 #include <vl/rtiCompatibility.h>
00021 #include <list>
00022 #include <map>
00023 
00024 class DtInteraction;
00025 
00026 #if !DtHLA_1516
00027 
00028 #include <vl/rtiNamespace.h>
00029 
00030 #endif
00031 
00032 namespace MAKLogger
00033 {
00034 
00035    class DtLgrOnlineFomDesc;
00036    class DtBaseObjClassDesc;
00037    class DtBaseInterClassDesc;
00038 
00042    typedef DtU32 DtLgrHlaHandle;
00043 
00046    class DT_DLL_LGRSIM DtLgrValueReference
00047    {
00048    public:
00049       DtLgrValueReference(const char* data,DtU32 size) : data(data),size(size){}
00050       const char* data;
00051       unsigned int size;
00052    };
00053 
00054    typedef std::map<DtLgrHlaHandle,DtLgrValueReference> DtLgrHandleValueReferenceMap;
00055    typedef std::map<DtLgrHlaHandle,DtLgrVariableLengthData> DtLgrHandleValueMap;
00056    typedef std::pair<DtAbsoluteTime,DtLgrHandleValueMap*> DtTimedHandleValueMap;
00057    typedef std::list<DtTimedHandleValueMap> DtTimedHandleValueMapList;
00058 
00061    class DT_DLL_LGRSIM DtLgrValueMapFactory
00062    {
00063    public:
00064 
00065 #if DtHLA_1516
00066       static void convertRtiData(const DtLgrOnlineFomDesc& fomDesc,
00067          const DtBaseInterClassDesc &classDesc, const RTI::ParameterHandleValueMap& phvm,
00068          DtLgrHandleValueReferenceMap& lgrMap);
00069 
00070       static void convertRtiData(const DtLgrOnlineFomDesc& fomDesc,
00071          const DtBaseObjClassDesc&,
00072          const RTI::AttributeHandleValueMap&,
00073          DtLgrHandleValueMap&);
00074 
00075       static void convertRtiData(const DtLgrOnlineFomDesc& fomDesc,
00076          const DtBaseObjClassDesc&,
00077          const RTI::AttributeHandleValueMap&,
00078          DtLgrHandleValueReferenceMap&);
00079 #else
00080       static void convertRtiData(const DtLgrOnlineFomDesc& fomDesc,
00081          const RTI::ParameterHandleValuePairSet& rtiSet, DtLgrHandleValueReferenceMap& lgrMap);
00082 
00083       static void convertRtiData(const RTI::AttributeHandleValuePairSet*,
00084          DtLgrHandleValueMap& map);
00085 
00086       static void convertRtiData(const RTI::AttributeHandleValuePairSet*,
00087          DtLgrHandleValueReferenceMap& map);
00088 #endif
00089 
00090 
00091 #if DtHLA_1516
00092       static void createRtiAttributeData(const DtLgrOnlineFomDesc& fom,
00093          const DtBaseObjClassDesc&, const DtLgrHandleValueMap&,
00094          RTI::AttributeHandleValueMap& );
00095 
00096       static void createRtiParameterData(const DtLgrOnlineFomDesc& fom,
00097          const DtBaseInterClassDesc&, const DtLgrHandleValueMap&,
00098          RTI::ParameterHandleValueMap& );
00099 #else
00100       static RTI::AttributeHandleValuePairSet* createRtiAttributeData(
00101          const DtLgrHandleValueMap&);
00102 
00103       static RTI::ParameterHandleValuePairSet* createRtiParameterData(
00104          const DtLgrHandleValueMap&);
00105 #endif
00106 
00107    };
00108 
00109 
00110 }
00111 
00112 #endif
00113 #endif

Document ID: Generated on Tue Oct 11 19:41:03 EDT 2011 from SVN revision 107422
Copyright © 2005-2011 VT MÄK Inc. All Rights Reserved (www.mak.com)