MAK Data Logger API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
exerciseConnectionFactory.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2012 VT MAK
3 ** All rights reserved.
4 ******************************************************************************/
5 
11 
12 #pragma once
13 
15 
16 #include <vl/exerciseConnHLA.h>
17 
18 namespace MAKTrafficClientServerExConn
19 {
20  class DtServerExerciseConnection;
21  class DtClientExerciseConnection;
22 }
23 
24 namespace MAKTrafficClientServerExConn
25 {
26 
28  {
29  public:
30 
31  // Constructor
33 
35  virtual ~DtExerciseConnectionFactory();
36 
37  static DtString theErrorMessage;
38 
39  public:
40 
43 
44 
47  static DtServerExerciseConnection* createServerConnection(
48  const DtExerciseConnInitializer& init,
49  DtExerciseConn::InitializationStatus* status = 0);
50 
53  // should throw if server doesn't exist?
54  static DtClientExerciseConnection* createClientConnection(
55  const DtExerciseConnInitializer& init,
56  DtExerciseConn::InitializationStatus* status = 0);
57 
59 
70 
71 
74  static DtServerExerciseConnection* createServerConnection(
75  const char* execName,
76  const char* federateType,
77  DtFomMapper* mapper = DtRprFomMapper::create(0),
78  const char* fedFileName = 0,
79  DtExerciseConn::InitializationStatus* status = 0);
80 
83  // should throw if server doesn't exist?
84  static DtClientExerciseConnection* createClientConnection(
85 #if DtHLA_1516_EVOLVED
86  const char* federateName,
87 #endif
88  const char* federateType,
89  DtFomMapper* mapper = DtRprFomMapper::create(0),
90  DtExerciseConn::InitializationStatus* status = 0);
91 
93 
100 
101 
104  static DtServerExerciseConnection* createServerConnection(
105  const char* execName,
106  const char* federateType,
107  const char* dsoName,
108  const char* fedFileName = 0,
109  void* fomMapInitData = 0,
110  DtExerciseConn::InitializationStatus* status = 0);
111 
114  // should throw if server doesn't exist?
115  static DtClientExerciseConnection* createClientConnection(
116 #if DtHLA_1516_EVOLVED
117  const char* federateName,
118 #endif
119  const char* federateType,
120  const char* dsoName,
121  void* fomMapInitData = 0,
122  DtExerciseConn::InitializationStatus* status = 0);
123 
125 
126 
127 #if DtHLA_1516_EVOLVED
128 
133 
146  static DtServerExerciseConnection* createServerConnection(
147  const char* execName,
148  const char* federateName,
149  const char* federateType,
150  const DtString& fedFile,
151  DtFomMapper* mapper = DtRprFomMapper::create(0),
152  const DtString& mimModule = "",
153  const std::vector<DtString>& fomModules = std::vector<DtString>(),
154  DtExerciseConn::InitializationStatus* status = 0 );
155 
156 
165  static DtServerExerciseConnection* createServerConnection(
166  const char* execName,
167  const char* federateName,
168  const char* federateType,
169  const DtString& fedFile,
170  const char* dsoName,
171  void* fomMapInitData = 0,
172  const DtString& mimModule = "",
173  const std::vector<DtString>& fomModules = std::vector<DtString>(),
174  DtExerciseConn::InitializationStatus* status = 0 );
175 
176 #endif
177 
178 
180  static DtExerciseConn::DtRtiAmbCreator setClientRtiAmbassadorCreator(DtExerciseConn::DtRtiAmbCreator creator);
181 
183  static DtExerciseConn::DtRtiAmbCreator clientRtiAmbassadorCreator();
184 
187  static DtExerciseConn::DtRtiAmbCreator setServerRtiAmbassadorCreator(DtExerciseConn::DtRtiAmbCreator creator);
188 
190  static DtExerciseConn::DtRtiAmbCreator serverRtiAmbassadorCreator();
191 
194  static DtExerciseConn::DtFedAmbCreator setServerFederateAmbassadorCreator(DtExerciseConn::DtFedAmbCreator creator);
195 
197  static DtExerciseConn::DtFedAmbCreator serverFederateAmbassadorCreator();
198 
199  typedef void (*RegisterUserTagModifiers_function)(DtExerciseConn* exConn);
200  static void setRegisterUserTagModifiersFunction(RegisterUserTagModifiers_function fnPtr)
201  { theRegisterUserTagModifiers_function = fnPtr;}
202 
203 
204  protected:
205 
207  static DtExerciseConn::DtRtiAmbCreator theClientRtiAmbCreator;
208 
210  static DtExerciseConn::DtRtiAmbCreator theServerRtiAmbCreator;
211 
213  static DtExerciseConn::DtFedAmbCreator theFederateAmbCreator;
214 
216  static RegisterUserTagModifiers_function theRegisterUserTagModifiers_function;
217 
218 
219  };
220 }
221 

Document ID: Generated on Thu Apr 7 20:50:59 EDT 2016 from SVN revision 163818
Copyright © 2005-2012 VT MÄK. All Rights Reserved (www.mak.com)