VR-Link API Documentation for HLA 1.3
link16Signal.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 
00006 #ifndef link16Signal_H_
00007 #define link16Signal_H_
00008 
00009 
00010 #include "signalInter.h"
00011 
00012 #include <vlutil/vlNetTypes.h>
00013 #include <vlpi/disEnums.h>
00014 
00020 class DT_DLL_VL DtLink16Signal
00021 {
00022 public:
00025    struct DtNetLink16SignalFields
00026    {
00027       DtNetU16 DtNpgNumber;
00028       DtNetU8  DtNetworkNumber;
00029       DtNetU8  DtTsecCvll;
00030       DtNetU8  DtMsecCvll;
00031       DtNetU8  DtMessageTypeIdentifier;
00032       DtNetU16 DtPadding;
00033       DtNetU32 DtTimeSlotId;
00034       DtNetU32 DtPerceivedTransitTimeInteger;
00035       DtNetU32 DtPerceivedTransitTimeFraction;
00036    };
00037 
00038 public:
00040    DtLink16Signal(); 
00041    
00044    DtLink16Signal(const DtSignalInteraction* signal); 
00045 
00047    virtual ~DtLink16Signal();
00048 
00052    virtual void encode(DtSignalInteraction* inter, int numJWords,
00053       const void* data, int sizeOfData);
00054 
00059    virtual void* decode(const DtSignalInteraction* inter);
00060 
00062 
00063    virtual void setNpgNumber(DtU16 npg);
00064    virtual DtU16 npgNumber() const;
00066 
00068 
00069    virtual void setNetNumber(DtU8 net);
00070    virtual DtU8 netNumber() const;
00072 
00074 
00075    virtual void setTsecCvll(DtU8 val);
00076    virtual DtU8 tsecCvll() const;
00078 
00080 
00081    virtual void setMsecCvll(DtU8 val);
00082    virtual DtU8 msecCvll() const;
00084 
00086 
00087 
00088    virtual void setLink16MessageType(DtLink16MessageTypeEnum val);
00089    virtual DtLink16MessageTypeEnum link16MessageType() const;
00091 
00093 
00094    virtual void setTimeIdSlotNumber(DtU32 val);
00095    virtual DtU32 timeIdSlotNumber() const;
00097 
00099 
00100    virtual void setTimeIdEpochNumber(DtU8 val);
00101    virtual DtU8 timeIdEpochNumber() const;
00103 
00105 
00106    virtual void setPerceivedTransmitTimeInteger(DtU32 val);
00107    virtual DtU32 perceivedTransmitTimeInteger() const;
00109 
00111 
00112    virtual void setPerceivedTransmitTimeFraction(DtU32 val);
00113    virtual DtU32 perceivedTransmitTimeFraction() const;
00115 
00116 #if DtHLA
00117 public:
00121    static char* link16SignalClassChooser(
00122       DtExerciseConn* exConn, 
00123       const DtInteraction& inter);
00124 
00126    static void setInteractionClasses(DtExerciseConn* exConn);
00127 
00132    static void setUpRprFomMapper(DtExerciseConn* exConn);
00133 
00134 #endif
00135 
00136 
00137 protected:
00138    DtU16                   myNpgNumber;
00139    DtU8                    myNetNumber;
00140    DtU8                    myTsecCvll;
00141    DtU8                    myMsecCvll;
00142    DtLink16MessageTypeEnum myMessagetype;
00143    DtU32                   myTimeSlotId;
00144    DtU32                   myTimeInteger;
00145    DtU32                   myTimeFraction;
00146 #if DtHLA
00147    static const char*      theInteractionClasses[8];
00148 #endif
00149 };
00150 
00151 #endif

Document ID: Generated on Mon May 14 08:06:18 EDT 2012 from SVN revision 114750
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)