VR-Forces 4.7 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 Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (
www.mak.com
)