VR-Forces Development_Version 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
vrvCore
DtPostProcessManager.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 <
vrvCore/vrvCore.h
>
13
#include <
vrvUtil/DtVirtualBaseClass.h
>
14
#include <
vrvUtil/DtSignalConnectionManager.h
>
15
16
namespace
makVrv
17
{
18
class
DtChannel;
19
class
DtChannelManager;
20
24
class
DT_DLL_VRVCORE
DtPostProcessManager
:
public
DtVirtualBaseClass
25
{
26
public
:
28
typedef
std::list<std::string>
EffectNameList
;
29
31
virtual
~
DtPostProcessManager
();
32
34
static
DtPostProcessManager
& instance(
DtDe
& de);
35
37
static
std::string theClassName();
38
41
void
setPostProcessorsEnabled(
bool
enable);
42
44
bool
postProcessorsEnabled()
const
;
45
47
virtual
void
update(
DtChannel
*channel) = 0;
48
50
virtual
bool
enableEffects(
DtChannel
* channel,
EffectNameList
& effectPostList) = 0;
51
53
virtual
bool
disableEffects(
DtChannel
* channel,
EffectNameList
& effectPostList) = 0;
54
55
protected
:
57
DtPostProcessManager
();
58
60
DtPostProcessManager
(
DtDe
& de);
61
64
virtual
void
slot_channelCreated(
DtChannelManager
* channelManager,
DtChannel
* channel) = 0;
65
68
virtual
void
slot_channelDestroyed(
DtChannelManager
* channelManager,
DtChannel
* channel) = 0;
69
70
protected
:
71
// For listening for channel creation
72
DtSignalConnectionManager
myConnections
;
73
74
DtDe
&
myDe
;
75
76
// Enable or disable the post processor chain from running
77
// NOTE: This does not change whether individual post effects
78
// are enabled or whether the channel has enabled or disabled effects
79
bool
myEnablePostProcessors
;
80
};
81
84
class
DT_DLL_VRVCORE
DtPostProcessManagerCreator
:
public
DtVirtualBaseClass
85
{
86
public
:
88
static
DtPostProcessManagerCreator
& instance(
DtDe
& de);
89
91
static
void
registerInstance(
DtDe
& de,
DtPostProcessManagerCreator
* instance);
92
94
virtual
DtPostProcessManager
* create(
DtDe
& de) = 0;
95
};
96
}
Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (
www.mak.com
)