MAK Data Logger API Documentation for DIS
legacyLcPdu.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1998 MaK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #ifndef DtLgcyLgrControlPdu_H_
7 #define DtLgcyLgrControlPdu_H_
8 
11 #include <vlutil/vlMachineTypes.h>
12 #include <vlutil/vlPrintUtil.h>
13 #include <matrix/LibMatrix.h>
14 #include <matrix/vlMath.h>
15 #include <vlpi/parseEnum.h>
16 #include <vl/interaction.h>
17 #include <vl/exerciseConn.h>
18 #include <vl/hostStructs.h>
19 #include <vl/pdu.h>
20 
21 
23 
26 {
33 };
34 
35 
38 {
43 };
44 
45 
48 {
53 };
54 
55 
57 {
60 };
61 
62 
65 {
69 };
70 
71 
74 {
83 };
84 
86 {
88 };
89 
90 
91 #if DtDIS
92 
95 
97 typedef void (*DtLgcyLgrControlInteractionCb)
98  ( DtLgcyLgrControlInteraction* inter, void* usr );
99 
100 #endif
101 
105 #if DtHLA
106 class DT_DLL_LGCYLGRCNTRL DtLgcyLgrControlPdu : public DtPdu
107 #else
109 #endif
110 {
111 public:
112 
114  DtLgcyLgrControlPdu( DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER );
115 
118  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0 );
119 
121  virtual ~DtLgcyLgrControlPdu();
122 
125 
128 
130  static DtPdu* create( const DtNetPacket* initial,
131  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER, DtPduFactory* pduFactory = 0 );
132 
134  static DtLgcyLgrControlPdu* create( DtLgrCommand command );
135 
136 #if DtDIS
137 
138  static void addCallback( DtExerciseConn* conn,
139  DtLgcyLgrControlInteractionCb cb, void* usr );
140  static void removeCallback( DtExerciseConn* conn,
141  DtLgcyLgrControlInteractionCb cb, void* usr );
142 #endif
143 
145  const DtGlobalObjectDesignator& receiverId() const;
146  virtual void setReceiverId( const DtGlobalObjectDesignator& id );
147 
149  virtual const DtGlobalObjectDesignator& senderId() const;
150  virtual void setSenderId( const DtGlobalObjectDesignator& id );
151 
152 
154  DtLgrCommand lgrCommand() const;
155 
158 
160  virtual void printData() const;
161 
162 public:
164  static const char* lgrModeEnum2string( DtLgcyLgrMode md );
166  static const char* lgrFilePosEnum2string( DtLgcyLgrFilePosition pos );
168  static const char* lgrStateFlag2string( DtLgcyLgrCtrlFlagStates flg );
169 
170 protected:
172  DtPduKind internalGetPduKind() const { return DtLgrControlPduKind; }
173 
175  void setLgrCommand( DtLgrCommand com );
176 
177 private:
179  DtGlobalObjectDesignator mySenderId;
180  DtGlobalObjectDesignator myReceiverId;
181 };
182 
183 #endif

Document ID: Generated on Thu Apr 10 18:53:01 EDT 2014 from SVN revision 138105
Copyright © 2005-2012 VT MÄK. All Rights Reserved (www.mak.com)