Chemical Data Processing Library C++ API - Version 1.2.0
Public Member Functions | List of all members
CDPL::Vis::View2D Class Referenceabstract

The abstract base of classes implementing the 2D visualization of data objects. More...

#include <View2D.hpp>

+ Inheritance diagram for CDPL::Vis::View2D:

Public Member Functions

virtual ~View2D ()
 Virtual destructor. More...
 
virtual void render (Renderer2D &renderer)=0
 Renders the visual representation of the model using the specified Vis::Renderer2D instance. More...
 
virtual void setFontMetrics (FontMetrics *font_metrics)=0
 Specifies a font metrics object that will be used to measure the dimension of text labels. More...
 
virtual void getModelBounds (Rectangle2D &bounds)=0
 Calculates the bounding rectangle of the visualized model. More...
 
- Public Member Functions inherited from CDPL::Base::ControlParameterContainer
std::size_t getNumParameters () const
 Returns the number of container entries. More...
 
template<typename T >
void setParameter (const LookupKey &key, T &&val)
 Sets the value of the control-parameter specified by key to val. More...
 
const AnygetParameter (const LookupKey &key, bool throw_=false, bool local=false) const
 Returns the value of the control-parameter specified by key. More...
 
template<typename T >
const T & getParameter (const LookupKey &key, bool local=false) const
 Returns the value of the control-parameter specified by key as a const reference to an object of type T. More...
 
template<typename T >
const T & getParameterOrDefault (const LookupKey &key, const T &def_val, bool local=false) const
 Returns the value of the control-parameter specified by key as a const reference to an object of type T, or the default value def_val if a stored value does not exist. More...
 
bool removeParameter (const LookupKey &key)
 Removes the entry for the control-parameter specified by key. More...
 
void clearParameters ()
 Erases all container entries. More...
 
bool isParameterSet (const LookupKey &key, bool local=false) const
 Tells whether or not a value has been assigned to the control-parameter specified by key. More...
 
void addParameters (const ControlParameterContainer &cntnr)
 Adds the control-parameter value entries in the ControlParameterContainer instance cntnr. More...
 
void copyParameters (const ControlParameterContainer &cntnr)
 Replaces the current set of properties by a copy of the entries in cntnr. More...
 
ConstParameterIterator getParametersBegin () const
 Returns a constant iterator pointing to the beginning of the entries. More...
 
ConstParameterIterator getParametersEnd () const
 Returns a constant iterator pointing to the end of the entries. More...
 
ConstParameterIterator begin () const
 Returns a constant iterator pointing to the beginning of the entries. More...
 
ConstParameterIterator end () const
 Returns a constant iterator pointing to the end of the entries. More...
 
void setParent (const ControlParameterContainer *cntnr)
 Sets or removes the parent control-parameter container used to resolve requests for missing entries. More...
 
const ControlParameterContainergetParent () const
 Returns a pointer to the parent control-parameter container. More...
 
std::size_t registerParameterChangedCallback (const ParameterChangedCallbackFunction &func)
 Registers a callback target function that gets invoked when the value of a control-parameter has changed. More...
 
void unregisterParameterChangedCallback (std::size_t id)
 Unregisters the callback specified by id. More...
 
std::size_t registerParameterRemovedCallback (const ParameterRemovedCallbackFunction &func)
 Registers a callback target function that gets invoked when a control-parameter entry has been removed. More...
 
void unregisterParameterRemovedCallback (std::size_t id)
 Unregisters the callback specified by id. More...
 
std::size_t registerParentChangedCallback (const ParentChangedCallbackFunction &func)
 Registers a callback target function that gets invoked when the parent container has been changed or was detached. More...
 
void unregisterParentChangedCallback (std::size_t id)
 Unregisters the callback specified by id. More...
 
const ControlParameterContainergetParameters () const
 Returns a const reference to itself. More...
 

Additional Inherited Members

- Public Types inherited from CDPL::Base::ControlParameterContainer
typedef ParameterMap::value_type ParameterEntry
 A Base::LookupKey / Base::Any pair used to store the control-parameter values and associated keys. More...
 
typedef ParameterMap::const_iterator ConstParameterIterator
 A constant iterator used to iterate over the control-parameter entries. More...
 
typedef std::function< void(const LookupKey &, const Any &)> ParameterChangedCallbackFunction
 A functor class that wraps callback target functions which get invoked when the value of a control-parameter has changed. More...
 
typedef std::function< void(const LookupKey &)> ParameterRemovedCallbackFunction
 A functor class that wraps callback target functions which get invoked when a control-parameter entry has been removed. More...
 
typedef std::function< void()> ParentChangedCallbackFunction
 A functor class that wraps callback target functions which get invoked when the parent container has been changed or was detached. More...
 
- Protected Member Functions inherited from CDPL::Base::ControlParameterContainer
 ControlParameterContainer ()
 Constructs an empty ControlParameterContainer instance. More...
 
 ControlParameterContainer (const ControlParameterContainer &cntnr)
 Constructs a copy of the ControlParameterContainer instance cntnr. More...
 
virtual ~ControlParameterContainer ()
 Destructor. More...
 
ControlParameterContaineroperator= (const ControlParameterContainer &cntnr)
 Assignment operator. More...
 

Detailed Description

The abstract base of classes implementing the 2D visualization of data objects.

Subclasses of View2D implement the generation of two-dimensional visual representations of data objects with a given type. According to the Model-View-Controller [WMVC] concept, a View2D instance thus plays the role of the View for a Model represented by the visualized data object. The rendering of a model's visual represention on a given target device is performed by the render() method, which uses a passed Vis::Renderer2DRenderer2D instance for drawing the graphical primitives constituting the overall depiction. The behaviour of a View2D instance can be configured using control-parameters and properties (if the type of the data object is a direct or indirect subclass of Base::PropertyContainer). Control-parameters can be modified and queried using the methods provided by Base::ControlParameterContainer which is a public base class of View2D.

Constructor & Destructor Documentation

◆ ~View2D()

virtual CDPL::Vis::View2D::~View2D ( )
inlinevirtual

Virtual destructor.

Member Function Documentation

◆ render()

virtual void CDPL::Vis::View2D::render ( Renderer2D renderer)
pure virtual

Renders the visual representation of the model using the specified Vis::Renderer2D instance.

Parameters
rendererThe Renderer2D instance.

Implemented in CDPL::Vis::StructureView2D, CDPL::Vis::StructureGridView2D, and CDPL::Vis::ReactionView2D.

◆ setFontMetrics()

virtual void CDPL::Vis::View2D::setFontMetrics ( FontMetrics font_metrics)
pure virtual

Specifies a font metrics object that will be used to measure the dimension of text labels.

Parameters
font_metricsA pointer to the font metrics object or null.

Implemented in CDPL::Vis::StructureView2D, CDPL::Vis::StructureGridView2D, and CDPL::Vis::ReactionView2D.

◆ getModelBounds()

virtual void CDPL::Vis::View2D::getModelBounds ( Rectangle2D bounds)
pure virtual

Calculates the bounding rectangle of the visualized model.

Parameters
boundsA Rectangle2D object storing the calculated bounding rectangle.

Implemented in CDPL::Vis::StructureView2D, CDPL::Vis::StructureGridView2D, and CDPL::Vis::ReactionView2D.


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