MAK Data Logger API Documentation for DIS
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/hExerciseConn.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  public:
38 
41 
42 
45  static DtServerExerciseConnection* createServerConnection(
46  const DtExerciseConnInitializer& init,
47  DtExerciseConn::InitializationStatus* status = 0);
48 
51  // should throw if server doesn't exist?
52  static DtClientExerciseConnection* createClientConnection(
53  const DtExerciseConnInitializer& init,
54  DtExerciseConn::InitializationStatus* status = 0);
55 
57 
68 
69 
72  static DtServerExerciseConnection* createServerConnection(
73  const char* execName,
74  const char* federateType,
75  DtFomMapper* mapper = DtRprFomMapper::create(0),
76  const char* fedFileName = 0,
77  DtExerciseConn::InitializationStatus* status = 0);
78 
81  // should throw if server doesn't exist?
82  static DtClientExerciseConnection* createClientConnection(
83 #if DtHLA_1516_EVOLVED
84  const char* federateName,
85 #endif
86  const char* federateType,
87  DtFomMapper* mapper = DtRprFomMapper::create(0),
88  DtExerciseConn::InitializationStatus* status = 0);
89 
91 
98 
99 
102  static DtServerExerciseConnection* createServerConnection(
103  const char* execName,
104  const char* federateType,
105  const char* dsoName,
106  const char* fedFileName = 0,
107  void* fomMapInitData = 0,
108  DtExerciseConn::InitializationStatus* status = 0);
109 
112  // should throw if server doesn't exist?
113  static DtClientExerciseConnection* createClientConnection(
114 #if DtHLA_1516_EVOLVED
115  const char* federateName,
116 #endif
117  const char* federateType,
118  const char* dsoName,
119  void* fomMapInitData = 0,
120  DtExerciseConn::InitializationStatus* status = 0);
121 
123 
124 
125 #if DtHLA_1516_EVOLVED
126 
131 
144  static DtServerExerciseConnection* createServerConnection(
145  const char* execName,
146  const char* federateName,
147  const char* federateType,
148  const DtString& fedFile,
149  DtFomMapper* mapper = DtRprFomMapper::create(0),
150  const DtString& mimModule = "",
151  const std::vector<DtString>& fomModules = std::vector<DtString>(),
152  DtExerciseConn::InitializationStatus* status = 0 );
153 
154 
163  static DtServerExerciseConnection* createServerConnection(
164  const char* execName,
165  const char* federateName,
166  const char* federateType,
167  const DtString& fedFile,
168  const char* dsoName,
169  void* fomMapInitData = 0,
170  const DtString& mimModule = "",
171  const std::vector<DtString>& fomModules = std::vector<DtString>(),
172  DtExerciseConn::InitializationStatus* status = 0 );
173 
174 #endif
175 
176 
178  static DtExerciseConn::DtRtiAmbCreator setClientRtiAmbassadorCreator(DtExerciseConn::DtRtiAmbCreator creator);
179 
181  static DtExerciseConn::DtRtiAmbCreator clientRtiAmbassadorCreator();
182 
185  static DtExerciseConn::DtRtiAmbCreator setServerRtiAmbassadorCreator(DtExerciseConn::DtRtiAmbCreator creator);
186 
188  static DtExerciseConn::DtRtiAmbCreator serverRtiAmbassadorCreator();
189 
192  static DtExerciseConn::DtFedAmbCreator setServerFederateAmbassadorCreator(DtExerciseConn::DtFedAmbCreator creator);
193 
195  static DtExerciseConn::DtFedAmbCreator serverFederateAmbassadorCreator();
196 
197  typedef void (*RegisterUserTagModifiers_function)(DtExerciseConn* exConn);
198  static void setRegisterUserTagModifiersFunction(RegisterUserTagModifiers_function fnPtr)
199  { theRegisterUserTagModifiers_function = fnPtr;}
200 
201 
202  protected:
203 
205  static DtExerciseConn::DtRtiAmbCreator theClientRtiAmbCreator;
206 
208  static DtExerciseConn::DtRtiAmbCreator theServerRtiAmbCreator;
209 
211  static DtExerciseConn::DtFedAmbCreator theFederateAmbCreator;
212 
214  static RegisterUserTagModifiers_function theRegisterUserTagModifiers_function;
215 
216  };
217 }
218 

Document ID: Generated on Sun Dec 15 18:04:30 EST 2013 from SVN revision 134418
Copyright © 2005-2012 VT MÄK. All Rights Reserved (www.mak.com)