VR-Forces 4.6.1 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
vrvUtil
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
29
class
DT_DLL_VRVUTIL
DtEventQueueInterface
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
:
54
DtEventQueueInterface
();
55
56
private
:
57
DtEventQueueInterface
(
const
DtEventQueueInterface
&);
58
DtEventQueueInterface
& operator=(
const
DtEventQueueInterface
&);
59
60
protected
:
61
typedef
std::map<std::string,DtVirtualBaseClass*>
InstanceMap
;
62
InstanceMap
myInstanceMap
;
63
};
64
}
65
66
#endif
67
Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (
www.mak.com
)