VR-Link API Documentation for HLA 1.3
hSignalInter.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #ifndef hSignalInter_H_
7 #define hSignalInter_H_
8 
9 #if DtHLA
10 
11 
12 #include <vlutil/vlMachineTypes.h>
13 #include "hIntWEncDec.h"
14 #include "hostStructs.h"
15 
19 
21 class DtExerciseConn;
22 
23 #ifndef DT_ENUM_LONG_WORD_PORTION
24 #define DT_ENUM_LONG_WORD_PORTION
26 {
29 };
30 #endif
31 
32 
33 
35 typedef void (*DtSignalInteractionCb)
36  (DtSignalInteraction* inter, void* usr);
37 
43 {
44 public:
47 
49  virtual ~DtSignalInteraction();
50 
53 
56 
58  virtual void printData() const;
59 
61  virtual void printDataToStream(std::ostream& stream) const;
62 
64 
65 
66 
67 
68  virtual void setRadioId(const DtGlobalObjectDesignator& id);
69  virtual const DtGlobalObjectDesignator& radioId() const;
71 
73 
74  virtual void setSampleRate(DtU32 rate);
75  virtual DtU32 sampleRate() const;
77 
79  virtual void setNumSamples(DtU32 count);
80  virtual DtU32 numSamples() const;
81 
83 
84  virtual void setNumDataBytes(DtU16 len);
85  virtual DtU16 numDataBytes() const;
87 
89 
90  virtual void setNumDataBits(DtU16 len);
91  virtual DtU16 numDataBits() const;
93 
95 
96  virtual void setData(const void* data, int numBytes);
97  virtual const void* data() const;
99 
101 
102  virtual DtU8 dataByte(int byteNum) const;
103  virtual void setDataByte(int byteNum, DtU8 data);
105 
107  virtual void setTdlType(DtTacticalDataLinkType link);
108  virtual DtTacticalDataLinkType tdlType() const;
109 
111 
112  virtual void setEncodingType(DtEncodingType encoding);
113  virtual DtEncodingType encodingType() const;
115 
117 
118 
119  virtual DtEncodingClass encodingClass() const;
120  virtual void setEncodingClass(DtEncodingClass encodingClass);
122 
124 
125 
126 
127  virtual void setTdlMessageCount(DtU16 count);
128  virtual DtU16 tdlMessageCount() const;
130 
132 
133 
134 
135 
136 
137  virtual void setProtocolId(DtUserProtocol id);
138  virtual DtUserProtocol protocolId() const;
140 
142 
143 
144 
145 
146  virtual void setDatabaseIndex(DtU32 index);
147  virtual DtU32 databaseIndex() const;
149 
151 
152 
153 
154 
155  virtual void setDuration(DtU32 duration);
156  virtual DtU32 duration() const;
158 
160 
161 
162 
163 
164 
165  virtual void setStartOffset(DtU32 offset);
166  virtual DtU32 startOffset() const;
168 
170 
171 
172 
173  virtual void setStreamTag(unsigned long upper, unsigned long lower);
174  virtual void setStreamTag(unsigned long st);
176 
180  virtual unsigned long streamTag(
181  DtLongWordPortion upperLower = DtLowerWord) const;
182 
184  virtual const char* name() const;
185 
186 public:
187 
190  static DtInteraction* create();
191 
194  static void addCallback(DtExerciseConn* conn,
195  DtSignalInteractionCb cb, void* usr,
196  DtDDMRegionSP region = DtDDMRegionSP());
197  static void removeCallback(DtExerciseConn* conn,
198  DtSignalInteractionCb cb, void* usr,
199  DtDDMRegionSP region = DtDDMRegionSP());
200 
201 protected:
202 
216 
220 };
221 
222 #endif //DtHLA
223 
224 #endif //DtSignalInteraction_H_
225 

Document ID: Generated on Wed Aug 14 15:35:11 EDT 2013 from SVN revision 130445
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)