![]() |
VR-Link API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 * ** Copyright (c) 2011 VT MAK 00003 * ** All rights reserved. 00004 * *********************************************************************/ 00005 /********************************************************************* 00006 * ** $RCSfile: hVmfRadSigInter.h,v $ $Revision: 1.1 $ $State: Exp $ 00007 * *********************************************************************/ 00008 00009 #ifdef DtHLA 00010 00011 #ifndef VmfRadioSignalInteraction_H_ 00012 #define VmfRadioSignalInteraction_H_ 00013 00014 #include <vl/hL16RadSigInter.h> 00015 #include <vl/hJtidsHeader.h> 00016 #include <vl/Link16Structs.h> 00017 #include <vl/hExerciseConn.h> 00018 00019 class DtVmfRadioSignalInteraction; 00020 00021 typedef void (*DtVmfRadioSignalInteractionCb)(DtVmfRadioSignalInteraction* inter, void* usr); 00022 00023 class DT_DLL_VL DtVmfRadioSignalInteraction : public DtL16RadioSignalInteraction 00024 { 00025 public: 00027 DtVmfRadioSignalInteraction(); 00028 00030 virtual ~DtVmfRadioSignalInteraction(); 00031 00033 DtVmfRadioSignalInteraction(const DtVmfRadioSignalInteraction& orig); 00034 00036 DtVmfRadioSignalInteraction& operator=(const DtVmfRadioSignalInteraction& orig); 00037 00039 virtual const char* name() const; 00040 00041 virtual void printDataToStream(std::ostream& stream) const; 00042 00043 static DtInteraction* create(); 00044 00045 static void addCallback(DtExerciseConn* conn, 00046 DtVmfRadioSignalInteractionCb cb, void* usr); 00047 static void removeCallback(DtExerciseConn* conn, 00048 DtVmfRadioSignalInteractionCb cb, void* usr); 00049 00051 00052 virtual const DtJtidsHeader& jtidsHeader()const; 00053 virtual void setJtidsHeader(const DtJtidsHeader& data); 00054 00055 virtual const DtJtidsHeaderStruct& jtidsHeaderRawData()const; 00056 virtual void setJtidsHeaderRawData(const DtJtidsHeaderStruct& data); 00058 00060 00061 virtual const DtTadilJWordStruct* tadilJWord(DtU32 index) const; 00062 virtual void setTadilJWord(DtU32 index, const DtTadilJWordStruct& data); 00064 00066 virtual DtU32 numTadilJWords() const; 00067 00068 protected: 00069 00077 virtual char* interactionClassToUse(DtExerciseConn* exConn) const; 00078 00086 virtual DtInteractionDecoder* createDecoder(DtExerciseConn* exConn) const; 00087 00088 00096 virtual DtInteractionEncoder* createEncoder(DtExerciseConn* exConn) const; 00097 00099 DtJtidsHeader myJtidsHeader; 00100 00102 std::vector<DtTadilJWordStruct> myTadiljMessageData; 00103 00104 }; 00105 00106 #endif 00107 #endif