VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Friends
makVrv::DtPostProcessManager Class Reference

This class provides the OSG-specific management of post-processing effects.

Inheritance diagram for makVrv::DtPostProcessManager:
Inheritance graph
[legend]

Public Types

typedef std::map< std::string,
DtPostProcessor * > 
ProcessorTypeToPostProcessorMap
 
- Public Types inherited from makVrv::DtPostProcessManagerInterface
typedef std::list< std::string > EffectNameList
 

Public Member Functions

virtual ~DtPostProcessManager ()
 
virtual void update (DtChannel *inChannel)
 
bool hasPostProcessor (DtChannel *channel, const std::string &processorType)
 
bool hasEffect (DtChannel *channel, const std::string &effect)
 
DtPostProcessorpostProcessorFromType (DtChannel *channel, const std::string &type)
 
DtPostProcessorlastPostProcessorInChain (DtChannel *channel)
 
ProcessorTypeToPostProcessorMappostProcessorTypeMap (DtChannel *channel)
 
bool enablePostProcessor (DtChannel *channel, const std::string &processorType)
 
bool disablePostProcessor (DtChannel *channel, const std::string &processorType)
 
bool enableEffect (DtChannel *channel, const std::string &effect)
 
bool disableEffect (DtChannel *channel, const std::string &effect)
 
bool enableEffects (DtChannel *channel, EffectNameList &effectPostList)
 
bool disableEffects (DtChannel *channel, EffectNameList &effectPostList)
 
- Public Member Functions inherited from makVrv::DtPostProcessManagerInterface
virtual ~DtPostProcessManagerInterface ()
 
void setPostProcessorsEnabled (bool enable)
 
bool postProcessorsEnabled () const
 
- Public Member Functions inherited from makVrv::DtVirtualBaseClass
 DtVirtualBaseClass ()
 
virtual ~DtVirtualBaseClass ()
 

Protected Types

typedef std::map< std::string,
DtPostProcessor * > 
EffectToPostProcessorMap
 
typedef std::unordered_map
< DtChannel
*, EffectToPostProcessorMap
ChannelEffectToPostMap
 
typedef std::unordered_map
< DtChannel
*, ProcessorTypeToPostProcessorMap
ChannelTypeToPostMap
 
typedef std::map< DtChannel
*, DtPostProcessor * > 
ChannelToPostProcessorMap
 

Protected Member Functions

virtual void slot_channelCreated (DtChannelManager *channelManager, DtChannel *channel)
 
virtual void slot_channelDestroyed (DtChannelManager *channelManager, DtChannel *channel)
 
virtual void slot_observerSettingChanged (DtObserverObject *observer, int setting, bool value)
 
bool setPostProcessorEnable (DtChannel *channel, const std::string &processorType, bool enabled)
 
bool setEffectEnable (DtChannel *channel, const std::string &effect, bool enabled)
 
DtPostProcessorpostProcessorFromEffect (DtChannel *channel, const std::string &effect)
 
void deletePostProcessorMaps (DtChannel *channel)
 
 DtPostProcessManager (DtDe &de)
 
- Protected Member Functions inherited from makVrv::DtPostProcessManagerInterface
 DtPostProcessManagerInterface ()
 
 DtPostProcessManagerInterface (DtDe &de)
 

Protected Attributes

ChannelEffectToPostMap myEffectToPostProcessorMap
 
ChannelTypeToPostMap myPostProcessorTypeToPostProcessorMap
 
ChannelToPostProcessorMap myChannelToLastPostProcessorInChainMap
 
- Protected Attributes inherited from makVrv::DtPostProcessManagerInterface
DtSignalConnectionManager myConnections
 
DtDemyDe
 
bool myEnablePostProcessors
 

Friends

class DtPostProcessManagerCreator
 

Additional Inherited Members

- Static Public Member Functions inherited from makVrv::DtPostProcessManagerInterface
static
DtPostProcessManagerInterface
instance (DtDe &de)
 
static std::string theClassName ()
 

Member Typedef Documentation

Constructor & Destructor Documentation

virtual makVrv::DtPostProcessManager::~DtPostProcessManager ( )
virtual
makVrv::DtPostProcessManager::DtPostProcessManager ( DtDe de)
protected

Member Function Documentation

virtual void makVrv::DtPostProcessManager::update ( DtChannel inChannel)
virtual

Called by the channel prior to rendering the channel Configures the post processors for this channel.

Implements makVrv::DtPostProcessManagerInterface.

bool makVrv::DtPostProcessManager::hasPostProcessor ( DtChannel channel,
const std::string &  processorType 
)

Is a post processor of this type in this channel?

bool makVrv::DtPostProcessManager::enablePostProcessor ( DtChannel channel,
const std::string &  processorType 
)

Enable or disable a post processor by name for a particular channel.

bool makVrv::DtPostProcessManager::disablePostProcessor ( DtChannel channel,
const std::string &  processorType 
)

Enable or disable a post processor by name for a particular channel.

bool makVrv::DtPostProcessManager::hasEffect ( DtChannel channel,
const std::string &  effect 
)

Is there an effect with this name in this channel?

bool makVrv::DtPostProcessManager::enableEffect ( DtChannel channel,
const std::string &  effect 
)

Enable or disable an effect by name for a particular channel.

bool makVrv::DtPostProcessManager::disableEffect ( DtChannel channel,
const std::string &  effect 
)

Enable or disable an effect by name for a particular channel.

bool makVrv::DtPostProcessManager::enableEffects ( DtChannel channel,
EffectNameList effectPostList 
)
virtual

Enable or disable a list of effects by name for a particular channel.

Implements makVrv::DtPostProcessManagerInterface.

bool makVrv::DtPostProcessManager::disableEffects ( DtChannel channel,
EffectNameList effectPostList 
)
virtual

Enable or disable a list of effects by name for a particular channel.

Implements makVrv::DtPostProcessManagerInterface.

DtPostProcessor* makVrv::DtPostProcessManager::postProcessorFromType ( DtChannel channel,
const std::string &  type 
)

Find the post processor with this type (ex. 'wateronscreen')

DtPostProcessor* makVrv::DtPostProcessManager::lastPostProcessorInChain ( DtChannel channel)

Get the last post processor in chain for a given channel This function can return NULL.

ProcessorTypeToPostProcessorMap* makVrv::DtPostProcessManager::postProcessorTypeMap ( DtChannel channel)

Get the map of post processor types to post processor pointers.

virtual void makVrv::DtPostProcessManager::slot_channelCreated ( DtChannelManager channelManager,
DtChannel channel 
)
protectedvirtual

Create list of post processors.

Implements makVrv::DtPostProcessManagerInterface.

virtual void makVrv::DtPostProcessManager::slot_channelDestroyed ( DtChannelManager channelManager,
DtChannel channel 
)
protectedvirtual

Function when a channel is destroyed so we can delete the post processors and data structures associated with this channel.

Implements makVrv::DtPostProcessManagerInterface.

virtual void makVrv::DtPostProcessManager::slot_observerSettingChanged ( DtObserverObject observer,
int  setting,
bool  value 
)
protectedvirtual

Function for when an observerSettings is changed.

bool makVrv::DtPostProcessManager::setPostProcessorEnable ( DtChannel channel,
const std::string &  processorType,
bool  enabled 
)
protected

Enable or disable a whole post processor by name for a particular channel.

bool makVrv::DtPostProcessManager::setEffectEnable ( DtChannel channel,
const std::string &  effect,
bool  enabled 
)
protected

Enable or disable an effect by name for a particular channel.

DtPostProcessor* makVrv::DtPostProcessManager::postProcessorFromEffect ( DtChannel channel,
const std::string &  effect 
)
protected

Find the post processor with this effect (ex. 'oceanspray') Our channel shouldn't have two effects with the same name.

void makVrv::DtPostProcessManager::deletePostProcessorMaps ( DtChannel channel)
protected

delete the post processors associated with this channel and clear any related data structures

Friends And Related Function Documentation

friend class DtPostProcessManagerCreator
friend

Member Data Documentation

ChannelEffectToPostMap makVrv::DtPostProcessManager::myEffectToPostProcessorMap
protected
ChannelTypeToPostMap makVrv::DtPostProcessManager::myPostProcessorTypeToPostProcessorMap
protected
ChannelToPostProcessorMap makVrv::DtPostProcessManager::myChannelToLastPostProcessorInChainMap
protected

The documentation for this class was generated from the following file:

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)