VolViz
A volume visualization tool
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
VolViz::Private_::Geometry Class Referenceabstract

#include <Geometry.h>

+ Inheritance diagram for VolViz::Private_::Geometry:
+ Collaboration diagram for VolViz::Private_::Geometry:

Public Types

using UniquePtr = std::unique_ptr< Geometry >
 

Public Member Functions

virtual ~Geometry ()=default
 
void init ()
 
void update ()
 
void render (std::uint32_t index, bool selected)
 
template<class Descriptor , typename = std::enable_if_t<std::is_base_of< GeometryDescriptor, std::decay_t<Descriptor>>::value>>
void enqueueUpdate (Descriptor &&descriptor)
 

Public Attributes

Position position {Position::Zero()}
 
Orientation orientation {Orientation::Identity()}
 
Length scale {1 * milli * meter}
 
MoveMask moveMask {MoveMask::All}
 
Color color {Colors::White()}
 

Protected Member Functions

 Geometry (VisualizerImpl &visualizer)
 
 Geometry (GeometryDescriptor const &descriptor, VisualizerImpl &visualizer)
 
virtual void doInit ()
 
virtual void doRender (std::uint32_t index, bool selected)=0
 
virtual void doUpdate ()
 
virtual void doEnqueueUpdate (GeometryDescriptor const &descriptor)
 
virtual void doEnqueueUpdate (GeometryDescriptor &&descriptor)
 

Protected Attributes

VisualizerImplvisualizer_
 

Member Typedef Documentation

Constructor & Destructor Documentation

virtual VolViz::Private_::Geometry::~Geometry ( )
virtualdefault
VolViz::Private_::Geometry::Geometry ( VisualizerImpl visualizer)
protected
VolViz::Private_::Geometry::Geometry ( GeometryDescriptor const &  descriptor,
VisualizerImpl visualizer 
)
protected

Member Function Documentation

void VolViz::Private_::Geometry::doEnqueueUpdate ( GeometryDescriptor const &  descriptor)
protectedvirtual
void VolViz::Private_::Geometry::doEnqueueUpdate ( GeometryDescriptor &&  descriptor)
protectedvirtual
void VolViz::Private_::Geometry::doInit ( )
protectedvirtual
virtual void VolViz::Private_::Geometry::doRender ( std::uint32_t  index,
bool  selected 
)
protectedpure virtual
void VolViz::Private_::Geometry::doUpdate ( )
protectedvirtual
template<class Descriptor , typename = std::enable_if_t<std::is_base_of< GeometryDescriptor, std::decay_t<Descriptor>>::value>>
void VolViz::Private_::Geometry::enqueueUpdate ( Descriptor &&  descriptor)
inline
void VolViz::Private_::Geometry::init ( )
void VolViz::Private_::Geometry::render ( std::uint32_t  index,
bool  selected 
)
void VolViz::Private_::Geometry::update ( )
inline

Member Data Documentation

Color VolViz::Private_::Geometry::color {Colors::White()}
MoveMask VolViz::Private_::Geometry::moveMask {MoveMask::All}
Orientation VolViz::Private_::Geometry::orientation {Orientation::Identity()}
Position VolViz::Private_::Geometry::position {Position::Zero()}
Length VolViz::Private_::Geometry::scale {1 * milli * meter}
VisualizerImpl& VolViz::Private_::Geometry::visualizer_
protected

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