Go to the documentation of this file.00001
00002
00003
00004
00005
00008
00009 #ifndef baseIntDesc13_H_
00010 #define baseIntDesc13_H_
00011
00012 #if DtHLA & !DtHLA_1516
00013
00014 #include "lgrSim.h"
00015
00016 #include "baseHlaClass.h"
00017 #include "baseParam.h"
00018
00019 #include <vl/rtiCompatibility.h>
00020 #include <vl/rtiNamespace.h>
00021
00022 class DtString;
00023 class DtInterClassDesc;
00024
00025 namespace MAKLogger
00026 {
00027 class DtLgrOnlineFomDesc;
00028
00031 class DT_DLL_LGRSIM DtBaseInterClassDesc : public DtBaseHlaClass<DtBaseParamDesc>
00032 {
00033 public:
00036 DtBaseInterClassDesc( const DtString& className,
00037 DtBaseInterClassDesc* baseClass, DtLgrHlaHandle handle);
00038
00041 DtBaseInterClassDesc( const DtString& className,
00042 const DtString& baseClassName, DtLgrHlaHandle hand);
00043
00045 DtBaseInterClassDesc( char*& bfr, int& bsz );
00046
00048 virtual ~DtBaseInterClassDesc();
00049
00051 DtBaseInterClassDesc( const DtBaseInterClassDesc& src );
00052
00054 DtBaseInterClassDesc& operator=( const DtBaseInterClassDesc& src );
00055
00057 RTI::InteractionClassHandle rtiHandle(const DtLgrOnlineFomDesc& fomDesc) const;
00058
00060 inline bool isBaseClass() const;
00061
00063 inline void setIsBaseClass(bool);
00064
00066 inline bool isSubscribedTo() const;
00067
00069 inline void setIsSubscribedTo( bool onOff );
00070
00072 inline bool isFilteredClass() const;
00073
00075 inline void setIsFilteredClass( bool onOff );
00076
00088 int serialize( char*& bfr, int& bsz ) const;
00089
00090 protected:
00092 void resetAll();
00093 int unserializeParameters( char* bfr, int bsz, int num );
00094
00095 };
00096
00097 inline bool DtBaseInterClassDesc::isBaseClass() const
00098 {
00099 return ( ( flags() & DtLgrFomDesc_IsBaseClass ) != 0 );
00100 }
00101
00102 inline void DtBaseInterClassDesc::setIsBaseClass(bool isBaseClass)
00103 {
00104 if(isBaseClass)
00105 {
00106 setFlags(flags() | DtLgrFomDesc_IsBaseClass);
00107 }
00108 else
00109 {
00110 setFlags(flags() & ~DtLgrFomDesc_IsBaseClass);
00111 }
00112 }
00113
00114
00115 inline bool DtBaseInterClassDesc::isSubscribedTo() const
00116 {
00117 return ( ( flags() & DtLgrFomDesc_IsSubscribed ) != 0 );
00118 }
00119
00120
00121 inline void DtBaseInterClassDesc::setIsSubscribedTo( bool onOff )
00122 {
00123 if(onOff)
00124 {
00125 setFlags(flags() | DtLgrFomDesc_IsSubscribed);
00126 }
00127 else
00128 {
00129 setFlags(flags() & ~DtLgrFomDesc_IsSubscribed);
00130 }
00131 }
00132
00133
00134 inline bool DtBaseInterClassDesc::isFilteredClass() const
00135 {
00136 return ( ( flags() & DtLgrFomDesc_IsFiltered ) != 0 );
00137 }
00138
00139
00140 inline void DtBaseInterClassDesc::setIsFilteredClass( bool onOff )
00141 {
00142 if(onOff)
00143 {
00144 setFlags(flags() | DtLgrFomDesc_IsFiltered);
00145 }
00146 else
00147 {
00148 setFlags(flags() & ~DtLgrFomDesc_IsFiltered);
00149 }
00150 }
00151
00152 }
00153
00154 #endif //! !DtHLA_1516 & DtHLA
00155 #endif //! DtBaseInterClassDesc13_H_