![]() |
VR-Link API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 00007 #if DtHLA 00008 00009 #ifndef hActSonBmEnc_H_ 00010 #define hActSonBmEnc_H_ 00011 00012 #include "hStateEncoder.h" 00013 00016 00017 class DT_DLL_VL DtActiveSonarBeamRepository; 00018 00019 00022 #define DtDECLARE_ACTIVE_SONAR_ATTR_CHECKER(attrName) \ 00023 DtDECLARE_ATTR_CHECKER(DtActiveSonarBeamRepository, attrName) 00024 00027 #define DtDECLARE_ACTIVE_SONAR_ATTR_ENCODER(attrName) \ 00028 DtDECLARE_ATTR_ENCODER(DtActiveSonarBeamRepository, attrName) 00029 00035 class DT_DLL_VL DtActiveSonarBeamEncoder : public DtHlaStateEncoder 00036 { 00037 public: 00039 DtActiveSonarBeamEncoder( 00040 DtExerciseConn* exConn, 00041 DtObjClassDesc* classDesc); 00042 00044 virtual ~DtActiveSonarBeamEncoder(); 00045 00047 DtActiveSonarBeamEncoder(const DtActiveSonarBeamEncoder& orig); 00048 00050 DtActiveSonarBeamEncoder& operator=(const DtActiveSonarBeamEncoder& orig); 00051 00052 public: 00055 static DtHlaStateEncoder* create(DtExerciseConn* exConn, 00056 DtObjClassDesc* classDesc); 00057 00058 protected: 00059 DtDECLARE_ACTIVE_SONAR_ATTR_CHECKER(ActiveEmissionParameterIndex); 00060 DtDECLARE_ACTIVE_SONAR_ATTR_CHECKER(AzimuthBeamwidth); 00061 DtDECLARE_ACTIVE_SONAR_ATTR_CHECKER(AzimuthCenter); 00062 DtDECLARE_ACTIVE_SONAR_ATTR_CHECKER(BeamIdentifier); 00063 DtDECLARE_ACTIVE_SONAR_ATTR_CHECKER(ElevationBeamwidth); 00064 DtDECLARE_ACTIVE_SONAR_ATTR_CHECKER(ElevationCenter); 00065 DtDECLARE_ACTIVE_SONAR_ATTR_CHECKER(EventIdentifier); 00066 DtDECLARE_ACTIVE_SONAR_ATTR_CHECKER(ScanPattern); 00067 00068 DtDECLARE_ACTIVE_SONAR_ATTR_ENCODER(ActiveEmissionParameterIndex); 00069 DtDECLARE_ACTIVE_SONAR_ATTR_ENCODER(AzimuthBeamwidth); 00070 DtDECLARE_ACTIVE_SONAR_ATTR_ENCODER(AzimuthCenter); 00071 DtDECLARE_ACTIVE_SONAR_ATTR_ENCODER(BeamIdentifier); 00072 DtDECLARE_ACTIVE_SONAR_ATTR_ENCODER(ElevationBeamwidth); 00073 DtDECLARE_ACTIVE_SONAR_ATTR_ENCODER(ElevationCenter); 00074 DtDECLARE_ACTIVE_SONAR_ATTR_ENCODER(EventIdentifier); 00075 DtDECLARE_ACTIVE_SONAR_ATTR_ENCODER(ScanPattern); 00076 }; 00077 00083 #define DtDEFINE_SIMPLE_ACTIVE_SONAR_ATTR_ENCODER( \ 00084 attrName, netType, inspector) \ 00085 DtDEFINE_SIMPLE_ATTR_ENCODER(DtActiveSonarBeamEncoder, \ 00086 DtActiveSonarBeamRepository, \ 00087 attrName, netType, inspector) 00088 00094 #define DtDEFINE_SIMPLE_ACTIVE_SONAR_ATTR_CHECKER( \ 00095 attrName, inspector) \ 00096 DtDEFINE_SIMPLE_ATTR_CHECKER(DtActiveSonarBeamEncoder, \ 00097 DtActiveSonarBeamRepository, \ 00098 attrName, inspector) 00099 00100 00101 #endif 00102 #endif 00103 00104 00105