VR-Forces 4.3.1 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
vrvCigi
DtCigiObjectFactory.h
Go to the documentation of this file.
1
/******************************************************************************
2
** Copyright (c) 2014 MAK Technologies, Inc.
3
** All rights reserved.
4
******************************************************************************/
5
9
10
#pragma once
11
12
#include <
vrvCigi/vrvCigi.h
>
13
14
#include <
vrvUtil/DtVirtualBaseClass.h
>
15
#include <boost/unordered_map.hpp>
16
#include <string>
17
#include <vector>
18
#include <set>
19
20
namespace
makVrv
21
{
22
class
DtCigiConnection;
23
class
DtCigiBaseEntity;
24
class
DtCigiObjectCreator;
25
class
DtAgentManagerInterface;
26
35
class
DT_DLL_VRVCIGI
DtCigiObjectFactory
:
public
DtVirtualBaseClass
36
{
37
public
:
38
40
typedef
boost::unordered_map<std::string, DtCigiObjectCreator*>
41
CreatorMap
;
42
44
DtCigiObjectFactory
();
45
47
virtual
~
DtCigiObjectFactory
();
48
50
DtCigiObjectFactory
(
const
DtCigiObjectFactory
& rhs);
51
53
DtCigiObjectFactory
& operator=(
const
DtCigiObjectFactory
& rhs);
54
56
static
DtCigiObjectFactory
& instance(
DtDe
& de);
57
59
static
DtCigiObjectFactory
& instance(
DtCigiConnection
& con);
60
63
static
void
copyInstance(
DtCigiConnection
& con,
DtDe
& de);
64
76
virtual
void
addCigiObjectCreator(
const
std::string& schema,
77
DtCigiObjectCreator
* creator );
78
81
virtual
void
addDefaultCigiObjectCreator(
DtCigiObjectCreator
* creator );
82
89
DtCigiBaseEntity
* createCigiObject(
const
std::string& schema,
90
DtCigiConnection
& connection,
DtAgentManagerInterface
& sceneInterface,
91
int
entityId,
int
entityType )
const
;
92
94
const
CreatorMap
& creators()
const
;
95
97
const
DtCigiObjectCreator
* findCreator(
const
std::string& schema)
const
;
98
100
std::vector<std::string> listRegisteredSchemas()
const
;
101
102
protected
:
103
CreatorMap
myCreators
;
104
DtCigiObjectCreator
*
myDefaultCigiObjectCreator
;
105
};
106
}
Document ID: Generated on Wed Jul 29 00:55:00 EDT 2015 from SVN revision 155257
Copyright © 2005-2015 VT MÄK. All Rights Reserved (
www.mak.com
)