VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtEventQueueInterface.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2009 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 /******************************************************************************
6 ** $RCSfile: DtEventQueueInterface.h,v $ $Revision: 1.6 $ $State: Exp $
7 ******************************************************************************/
8 
12 
13 #ifndef DtEventQueueInterface_H_
14 #define DtEventQueueInterface_H_
15 
16 #include <vrvUtil/vrvUtil.h>
17 #include <map>
18 #include <vector>
19 #include <boost/function.hpp>
20 #include <vlutil/vlSmartPointers.h>
21 
22 namespace makVrv
23 {
24  class DtVirtualBaseClass;
25 
30  {
31  public:
32  typedef boost::function< void (DtEventQueueInterface*) > Event;
33  typedef std::vector<Event> EventList;
34  typedef DtBoost::shared_ptr<EventList> SharedEventList;
35 
36  virtual ~DtEventQueueInterface();
37 
39  DtVirtualBaseClass* findInstance(const std::string& className);
40 
42  void registerInstance(const std::string& className, DtVirtualBaseClass* instance);
43 
45  virtual void postEvent(const Event& signal) = 0;
46 
48  virtual void processEvents() = 0;
49 
51  void executeEvents(const SharedEventList& signalList);
52 
53  protected:
55 
56  private:
59 
60  protected:
61  typedef std::map<std::string,DtVirtualBaseClass*> InstanceMap;
63  };
64 }
65 
66 #endif
67 
Virtual base class.
Definition: DtVirtualBaseClass.h:22
#define DT_DLL_VRVUTIL
Definition: vrvUtil.h:34
boost::function< void(DtEventQueueInterface *) > Event
Definition: DtEventQueueInterface.h:32
Contains DLL export macros.
The event queue interface is a cross thread event queue used to emit event_signal across thread bound...
Definition: DtEventQueueInterface.h:29
std::map< std::string, DtVirtualBaseClass * > InstanceMap
Definition: DtEventQueueInterface.h:61
std::vector< Event > EventList
Definition: DtEventQueueInterface.h:33
InstanceMap myInstanceMap
Definition: DtEventQueueInterface.h:62
DtBoost::shared_ptr< EventList > SharedEventList
Definition: DtEventQueueInterface.h:34

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)