gramods
Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
gramods::gmGraphics::MultiscopicView Class Referenceabstract

The base of Views that support multiscopic perspectives. More...

#include <MultiscopicView.hh>

Inheritance diagram for gramods::gmGraphics::MultiscopicView:
Inheritance graph
[legend]
Collaboration diagram for gramods::gmGraphics::MultiscopicView:
Collaboration graph
[legend]

Public Member Functions

void renderFullPipeline (ViewSettings settings) override final
 Dispatches specified renders, both method argument and class members. More...
 
void traverse (Visitor *visitor) override
 Propagates the specified visitor. More...
 
void setMultiscopicMultiplexer (std::shared_ptr< MultiscopicMultiplexer > sm)
 Sets the multiscopic multiplexing to use for rendering. More...
 
- Public Member Functions inherited from gramods::gmGraphics::ViewBase
void addNode (std::shared_ptr< Node > node)
 Adds a scenegraph to the view. More...
 
void setViewpoint (std::shared_ptr< Viewpoint > viewpoint)
 Sets the viewpoint to use in the views rendered by this ViewBase. More...
 
void addViewpoint (std::shared_ptr< Viewpoint > viewpoint)
 Adds a viewpoint to use in the views rendered by this ViewBase. More...
 
void traverse (Visitor *visitor) override
 Propagates the specified visitor. More...
 
- Public Member Functions inherited from gramods::gmCore::Object
 Object ()
 Initializes internal data. More...
 
virtual ~Object ()
 Cleaning up internal data. More...
 
virtual void initialize ()
 Called to initialize the Object. More...
 
virtual void accept (Visitor *visitor)
 Calls the visitors apply method with this as argument. More...
 
bool isInitialized ()
 Returns true if the Object is initialized. More...
 

Static Public Attributes

static gramods::gmCore::OFactory::OFactoryInformation _gm_ofi
 
- Static Public Attributes inherited from gramods::gmGraphics::View
static gramods::gmCore::OFactory::OFactoryInformation _gm_ofi
 
- Static Public Attributes inherited from gramods::gmGraphics::ViewBase
static gramods::gmCore::OFactory::OFactoryInformation _gm_ofi
 

Protected Member Functions

virtual void renderFullPipeline (ViewSettings settings, Eye eye)=0
 Renders one eye at a time, or just a mono eye. More...
 
- Protected Member Functions inherited from gramods::gmGraphics::ViewBase
void populateViewSettings (ViewSettings &settings)
 Adds the dispatcher's local renderers and viewpoint, if set. More...
 

Protected Attributes

std::shared_ptr< MultiscopicMultiplexermultiscopic_multiplexer
 
- Protected Attributes inherited from gramods::gmGraphics::ViewBase
Node::list nodes
 
std::vector< std::shared_ptr< Viewpoint > > viewpoints
 

Detailed Description

The base of Views that support multiscopic perspectives.

Member Function Documentation

◆ renderFullPipeline() [1/2]

void gramods::gmGraphics::MultiscopicView::renderFullPipeline ( ViewSettings  settings)
finaloverridevirtual

Dispatches specified renders, both method argument and class members.

The default implementation calls the renderers but with a default Camera, and should be overloaded by sub classes to implement their respective effects.

Reimplemented from gramods::gmGraphics::ViewBase.

◆ renderFullPipeline() [2/2]

virtual void gramods::gmGraphics::MultiscopicView::renderFullPipeline ( ViewSettings  settings,
Eye  eye 
)
protectedpure virtual

◆ setMultiscopicMultiplexer()

gramods::gmCore::OFactory::PointerSetterInsert gm_ofi_MultiscopicView_pointer_multiscopicMultiplexer &MultiscopicView::_gm_ofi(& gramods::gmGraphics::MultiscopicView::setMultiscopicMultiplexer ( std::shared_ptr< MultiscopicMultiplexer sm)
inline

Sets the multiscopic multiplexing to use for rendering.

If not set, monoscopic rendering will be used.

XML-attribute: multiscopicMultiplexer

◆ traverse()

void gramods::gmGraphics::MultiscopicView::traverse ( Visitor visitor)
overridevirtual

Propagates the specified visitor.

See also
Object::Visitor

Reimplemented from gramods::gmCore::Object.

Reimplemented in gramods::gmGraphics::TextureProjectedView, and gramods::gmGraphics::SpatialSphericalView.


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