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
vrvOsg
DtEffectControllerFactory.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2015 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
9
10
#pragma once
11
12
#include <
vrvOsg/vrvOsg.h
>
13
#include <
vrvUtil/DtVirtualBaseClass.h
>
14
15
#include <boost/unordered_map.hpp>
16
#include <string>
17
#include <vector>
18
19
namespace
makVrv
20
{
21
22
class
DtDe;
23
class
DtEffectControllerCreator;
24
class
DtOsgEffectTextureController;
25
class
DtOsgFileCache;
26
class
DtOsgShaderManager;
27
28
class
DT_DLL_VRVOSG
DtEffectControllerCreator
29
{
30
public
:
31
DtEffectControllerCreator
();
32
virtual
~
DtEffectControllerCreator
();
33
virtual
DtOsgEffectTextureController
* create(
34
DtOsgFileCache
& fileCache,
35
DtOsgShaderManager
& shaderMgr,
36
DtDe
& de) = 0;
37
};
38
43
class
DT_DLL_VRVOSG
DtEffectControllerFactory
:
public
DtVirtualBaseClass
44
{
45
public
:
46
48
static
DtEffectControllerFactory
& instance(
DtDe
& de);
49
50
static
void
registerInstance(
DtDe
& de,
DtEffectControllerFactory
* anInstance);
51
53
virtual
~
DtEffectControllerFactory
();
54
57
virtual
void
registerCreator(
const
std::string& name,
DtEffectControllerCreator
* creator);
58
60
virtual
DtOsgEffectTextureController
* create(
61
const
std::string& name,
62
DtOsgFileCache
& fileCache,
63
DtOsgShaderManager
& shaderMgr)
const
;
64
65
typedef
std::vector<DtOsgEffectTextureController*>
ControllerVec
;
66
68
virtual
ControllerVec
createAll(
69
DtOsgFileCache
& fileCache,
70
DtOsgShaderManager
& shaderMgr)
const
;
71
72
protected
:
75
DtEffectControllerFactory
(
DtDe
& de);
76
77
protected
:
78
typedef
boost::unordered_map<std::string, DtEffectControllerCreator*>
RegistrationMap
;
79
80
DtDe
&
myDe
;
81
RegistrationMap
myCreators
;
82
};
83
}
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
)