![]() |
VR-Link API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 #ifndef hActSonarEnc_H_ 00007 #define hActSonarEnc_H_ 00008 #if DtHLA 00009 00013 00014 #include "hUndwaAcEmissEnc.h" 00015 00016 00017 class DtActiveSonarStateRepository; 00018 00025 class DT_DLL_VL DtActiveSonarEncoder : public DtUnderwaterAcousticsEmissionEncoder 00026 { 00027 public: 00028 00030 DtActiveSonarEncoder( 00031 DtExerciseConn* exConn, 00032 DtObjClassDesc* classDesc); 00033 00035 virtual ~DtActiveSonarEncoder(); 00036 00038 DtActiveSonarEncoder(const DtActiveSonarEncoder& orig); 00039 00041 DtActiveSonarEncoder& operator=(const DtActiveSonarEncoder& orig); 00042 00043 public: 00045 static DtHlaStateEncoder* create( 00046 DtExerciseConn* exConn, 00047 DtObjClassDesc* classDesc); 00048 00049 protected: 00052 static bool needAcousticName( 00053 const DtActiveSonarStateRepository& stateRep, 00054 const DtActiveSonarStateRepository& asSeenByRemote); 00055 00058 static bool needFunctionCode( 00059 const DtActiveSonarStateRepository& stateRep, 00060 const DtActiveSonarStateRepository& asSeenByRemote); 00061 00064 static bool needAcousticsIdentifier( 00065 const DtActiveSonarStateRepository& stateRep, 00066 const DtActiveSonarStateRepository& asSeenByRemote); 00067 00069 static void encodeAcousticName( 00070 const DtActiveSonarStateRepository& rep, 00071 RTI::AttributeHandleValuePairSet* attrs, 00072 RTI::AttributeHandle attrHandle); 00073 00075 static void encodeFunctionCode( 00076 const DtActiveSonarStateRepository& rep, 00077 RTI::AttributeHandleValuePairSet* attrs, 00078 RTI::AttributeHandle attrHandle); 00079 00081 static void encodeAcousticsIdentifier( 00082 const DtActiveSonarStateRepository& rep, 00083 RTI::AttributeHandleValuePairSet* attrs, 00084 RTI::AttributeHandle attrHandle); 00085 00086 }; 00087 00088 00089 #endif //activeSonarEnc_H_ 00090 00091 #endif //DtHLA