21 #include <vlutil/vlStringUtil.h>
22 #include <vlutil/vlString.h>
23 #include <vlutil/vlTime.h>
32 class DtDynamicLibrary;
34 namespace MAKVrExchange
37 class DtPortalConnection;
38 class DtStatisticsManager;
58 typedef void (*PluginReloadMethod)(
DtBroker* );
59 typedef void (*PluginPostInitMethod)(
DtBroker* );
61 typedef void (*BrokerReloadCallback)(
void* );
76 virtual void initialize();
94 virtual void startBroker();
97 virtual void launchGui();
102 virtual void launchInfoGui();
111 virtual void reloadTranslatorDebugging();
114 virtual void reloadBrokerSettings();
117 virtual const DtString brokerName()
const;
120 virtual DtU16 brokerId()
const;
124 virtual DtTime simTime()
const;
127 virtual void updateSimTime()
const;
130 virtual bool isRunning()
const;
133 virtual bool isTimeToQuit()
const;
144 virtual bool isTranslatorDebuggingOn(
const DtString& name )
const;
155 virtual bool isTranslatorDisabled(
const DtString& name )
const;
158 virtual DtTime pollingInterval();
168 virtual void processEvents();
180 virtual void setBrokerId(
int id );
183 virtual void shutdownWithError(
const DtString & error );
193 virtual void loadTranslators();
196 virtual void initializeTranslators( DtStringSet& failedTranslators );
200 virtual void loadKnownObjectTranslators( DtStringSet& failedTranslators );
204 virtual void loadKnownInteractionTranslators( DtStringSet& failedTranslators );
209 virtual bool loadObjectTranslator(
const DtString& translatorName );
214 virtual bool loadInteractionTranslator(
const DtString& translatorName );
218 virtual void shutdown();
221 virtual void addBrokerReloadCallback( BrokerReloadCallback cb,
void* usr );
224 virtual void callBrokerReloadCallbacks();
230 virtual void initializeDebuggedAndDisabledFromInit();
236 virtual void obtainLock();
239 virtual void loadBrokerPlugins();
242 virtual void getLibrariesInDir(
const std::string& dir,
243 std::list<std::string>& files )
const;
246 virtual void postInitializePlugins();
249 virtual void reloadBrokerPlugins();
258 virtual void stopFileLogging();
265 virtual void processRestartRequest(
bool shouldEnableOneToOne );
301 virtual void reportLoadTranslatorFailures(
const DtStringSet& failedTranslators )
const;
305 static void objectDiscoveredCallback(
const DtBrokerObject* brokerObject,
void* usr );
306 static void objectUpdatedCallback(
const DtBrokerObject* brokerObject,
void* usr );
307 static void objectRemovedCallback(
const DtBrokerObject* brokerObject,
void* usr );
311 virtual void objectDiscovered(
const DtBrokerObject* brokerObject );
323 virtual bool addTranslator(
DtObjectTranslator* objTrans,
bool reflectEnabled,
bool publishEnabled );
370 HANDLE myMutexOneAppHandle;