VR-Forces Developer's Guide
Home
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
vrvVrl
DtVrvControlFactory_v0.h
Go to the documentation of this file.
1
2
/*******************************************************************************
3
** Copyright (c) 2010 MAK Technologies, Inc.
4
** All rights reserved.
5
*******************************************************************************/
6
9
10
#pragma once
11
12
#include <
vrvVrl/vrvControlToolkitDataTypes_v0.h
>
13
14
#include <map>
15
16
namespace
vrvControlToolkit
17
{
18
19
class
DtVctBaseControlCreator_v0
20
{
21
public
:
22
DtVctBaseControlCreator_v0
() {}
23
virtual
~DtVctBaseControlCreator_v0
() {}
24
25
virtual
DtVrvControl_v0
*
create
()=0;
26
};
27
28
template
<
class
ControlType>
29
class
DtVctControlCreator_v0
:
public
DtVctBaseControlCreator_v0
30
{
31
public
:
32
DtVctControlCreator_v0
() {}
33
virtual
~DtVctControlCreator_v0
() {}
34
35
virtual
DtVrvControl_v0
*
create
();
36
};
37
38
template
<
class
ControlType>
39
DtVrvControl_v0
*
DtVctControlCreator_v0<ControlType>::create
()
40
{
41
return
new
ControlType();
42
}
43
44
class
DtVrvControlFactory_v0
45
{
46
public
:
47
static
DtVrvControlFactory_v0
&
instance
();
48
49
DtVrvControl_v0
*
create
(
const
char
* buffer,
int
size
);
50
51
typedef
std::pair<DtVrvControlTypeEnum_v0, int>
TypeVersionPair
;
52
virtual
void
addCreator
(
const
TypeVersionPair
& type,
DtVctBaseControlCreator_v0
* creator);
53
54
protected
:
55
virtual
void
initialize
();
56
57
DtVrvControlFactory_v0
();
58
virtual
~DtVrvControlFactory_v0
();
59
60
static
DtVrvControlFactory_v0
*
theControlFactory
;
61
62
typedef
std::map<TypeVersionPair, DtVctBaseControlCreator_v0*>
ControlCreatorMap
;
63
ControlCreatorMap
myCreatorMap
;
64
};
65
66
}
//vrvControlToolkit::
67
68
#include <vrvVrl/DtVrvControlFactory_v0.inl>
vrvControlToolkit::DtVrvControlFactory_v0::theControlFactory
static DtVrvControlFactory_v0 * theControlFactory
Definition:
DtVrvControlFactory_v0.h:60
vrvControlToolkit::DtVrvControlFactory_v0::DtVrvControlFactory_v0
DtVrvControlFactory_v0()
vrvControlToolkit::DtVrvControlFactory_v0::initialize
virtual void initialize()
vrvControlToolkit::DtVrvControlFactory_v0
Definition:
DtVrvControlFactory_v0.h:44
vrvControlToolkit::DtVrvControlFactory_v0::ControlCreatorMap
std::map< TypeVersionPair, DtVctBaseControlCreator_v0 * > ControlCreatorMap
Definition:
DtVrvControlFactory_v0.h:62
vrvControlToolkit::DtVctControlCreator_v0::create
virtual DtVrvControl_v0 * create()
Definition:
DtVrvControlFactory_v0.h:39
vrvControlToolkit::DtVrvControlFactory_v0::~DtVrvControlFactory_v0
virtual ~DtVrvControlFactory_v0()
vrvControlToolkit::DtVctBaseControlCreator_v0
Definition:
DtVrvControlFactory_v0.h:19
vrvControlToolkit::DtVrvControlFactory_v0::instance
static DtVrvControlFactory_v0 & instance()
vrvControlToolkit::DtVctBaseControlCreator_v0::~DtVctBaseControlCreator_v0
virtual ~DtVctBaseControlCreator_v0()
Definition:
DtVrvControlFactory_v0.h:23
size
voidpf void uLong size
Definition:
ioapi.h:39
vrvControlToolkitDataTypes_v0.h
vrvControlToolkit::DtVctBaseControlCreator_v0::DtVctBaseControlCreator_v0
DtVctBaseControlCreator_v0()
Definition:
DtVrvControlFactory_v0.h:22
vrvControlToolkit::DtVctBaseControlCreator_v0::create
virtual DtVrvControl_v0 * create()=0
vrvControlToolkit::DtVrvControlFactory_v0::create
DtVrvControl_v0 * create(const char *buffer, int size)
vrvControlToolkit::DtVrvControlFactory_v0::TypeVersionPair
std::pair< DtVrvControlTypeEnum_v0, int > TypeVersionPair
Definition:
DtVrvControlFactory_v0.h:51
vrvControlToolkit::DtVrvControlFactory_v0::myCreatorMap
ControlCreatorMap myCreatorMap
Definition:
DtVrvControlFactory_v0.h:63
vrvControlToolkit::DtVctControlCreator_v0::DtVctControlCreator_v0
DtVctControlCreator_v0()
Definition:
DtVrvControlFactory_v0.h:32
vrvControlToolkit::DtVrvControlFactory_v0::addCreator
virtual void addCreator(const TypeVersionPair &type, DtVctBaseControlCreator_v0 *creator)
vrvControlToolkit::DtVctControlCreator_v0
Definition:
DtVrvControlFactory_v0.h:29
vrvControlToolkit::DtVctControlCreator_v0::~DtVctControlCreator_v0
virtual ~DtVctControlCreator_v0()
Definition:
DtVrvControlFactory_v0.h:33
vrvControlToolkit::DtVrvControl_v0
Definition:
vrvControlToolkitDataTypes_v0.h:69
Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (
www.mak.com
)