MAK RTIspy API Documentation for HLA 1516
pluginMgr.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 1998 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: pluginMgr.h,v $ $Revision: 1.18 $ $State: Exp $
00007 *******************************************************************************/
00008 
00011 
00012 #ifndef DT_NO_PLUGINS 
00013 
00014 #ifndef DtRtiPluginManager_H_
00015 #define DtRtiPluginManager_H_
00016 
00017 #include "rtiMsConfig.h"
00018 #include <vlutil/vlFilename.h>
00019 #include <vlutil/vlList.h>
00020 
00021 class DtRtiExec;
00022 class DtRtiAmbassadorBaseImplementor;
00023 
00024 enum DT_DLL_LRC DtRtiPluginComponentType
00025 {
00026    DtLrcPlugin,
00027    DtExecPlugin,
00028    DtForwarderPlugin,
00029    DtShmQPlugin,
00030    DtWwwSpyServerPlugin,
00031    DtAssistantPlugin
00032 };
00033 
00034 typedef void (*DtRtiInitMethod)(DtRtiPluginComponentType compType);
00035 typedef void (*DtRtiInitLrcMethod)(DtRtiAmbassadorBaseImplementor* imp);
00036 typedef void (*DtRtiInitRtiexecMethod)(DtRtiExec* exec);
00037 
00038 class DT_DLL_LRC DtRtiPluginManager
00039 {
00040 public:
00041    DtRtiPluginManager( const char* dir );
00042    virtual ~DtRtiPluginManager();
00043 
00045    virtual void load( const std::vector<MAKRti::DtString>& names, DtRtiPluginComponentType compType );
00046 
00048    virtual void load( const MAKRti::DtString& name, DtRtiPluginComponentType compType );
00049 
00051    virtual void start( DtRtiAmbassadorBaseImplementor* imp );
00053    virtual void start( DtRtiExec* exec );
00054 
00055 protected:
00056    virtual void executePlugin( const char*, DtRtiPluginComponentType compType );
00057 
00058 protected:
00059    MAKRti::DtFilename myPluginDir;
00060    MAKRti::DtList     myPlugins;
00061 };
00062 
00063 #endif   //! DtRtiPluginManager_H_
00064 #endif   //! DT_NO_PLUGINS 
00065 

Document ID: Generated on Thu Jun 14 14:15:04 EDT 2012 from SVN revision 116116
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)