Storage class for debug visualizations. More...
#include <kanzi/core.ui/node/debug_visualization_storage.hpp>
Public Types | |
| using | InternalDebugVisualizationStorage |
| Bounding visualization storage. | |
| using | TNode |
| Node type being drawn. | |
Public Member Functions | |
| void | clearExpiredVisualizations () |
| Clears expired bounding visualizations. | |
| DebugVisualizationStorage ()=default | |
| Constructor. | |
| DebugVisualizationStorage (const DebugVisualizationStorage &)=delete | |
| Deleted copy constructor. | |
| DebugVisualization * | emplace (const shared_ptr< TNode > &sharedNode, DebugVisualizationSharedPtr sharedVisualization) |
| Emplaces the visualization into the internal storage. | |
| void | eraseVisualization (const shared_ptr< TNode > &node) |
| Erase a single visualization from the storage, if it exists. | |
| void | eraseVisualizations () |
| Erase all visualizations in the storage. | |
| DebugVisualization * | evaluateVisualizationForNode (Renderer &renderer, const shared_ptr< TNode > &sharedNode) |
| Evaluates a visualization for given node. | |
| TDerivedClass * | getThisObject () |
| Gets the derived class object. | |
| DebugVisualizationStorage & | operator= (const DebugVisualizationStorage &)=delete |
| Deleted copy operator. | |
Protected Attributes | |
| InternalDebugVisualizationStorage | m_storage |
| Storage for visualizations. | |
Storage class for debug visualizations.
Must be created as needed in places visualizing debug objects.
| using kanzi::DebugVisualizationStorage< T, TDerivedClass >::TNode |
Node type being drawn.
| using kanzi::DebugVisualizationStorage< T, TDerivedClass >::InternalDebugVisualizationStorage |
Bounding visualization storage.
|
explicitdefault |
Constructor.
|
delete |
Deleted copy constructor.
|
delete |
Deleted copy operator.
|
inline |
Gets the derived class object.
|
inline |
Emplaces the visualization into the internal storage.
| sharedNode | Node being rendered. |
| sharedVisualization | Visualization created. |
|
inline |
Evaluates a visualization for given node.
This function passes an existing visualization or nullptr to evaluateVisualization() function to be implemented by the deriving class. Derived class is responsible for creating the visualization if it's nullptr.
The inheriting classes' evaluateVisualization() does not need to actually draw the visualization, or necessarily even create it. The implementation is fully up to the deriving class. Typical use case is to either create and render the visualization or create and return it (without rendering).
|
inline |
Erase all visualizations in the storage.
|
inline |
Erase a single visualization from the storage, if it exists.
| node | Node the visualization is associated with. |
|
inline |
Clears expired bounding visualizations.
|
protected |
Storage for visualizations.