Hide menu
cadex::ModelPrs_Selection Class Reference

Encapsulates a container of selected scene nodes. More...

Inheritance diagram for cadex::ModelPrs_Selection:
cadex::Base_PublicObject

Public Types

typedef cadex::internal::ModelPrs_SelectionImpl ImplType
 

Public Member Functions

 ModelPrs_Selection ()
 Constructor. More...
 
 ModelPrs_Selection (initialized)
 Constructor. More...
 
void Accept (ModelPrs_SelectionVisitor &theVisitor) const
 Accepts a visitor.
 
void Append (const ModelPrs_SceneNode &theNode)
 Appends the node.
 
void Append (const ModelPrs_SceneNode &theNode, const std::vector< ModelData_Shape > &theShapes)
 Appends the node and the shapes.
 
- Public Member Functions inherited from cadex::Base_PublicObject
 Base_PublicObject ()
 Constructor. More...
 
void Nullify ()
 Resets reference to implementation object.
 
bool IsNull () const
 Returns true if the object is nullified. More...
 
 operator bool () const
 Casts the object to the bool type. More...
 
internal::Base_HandledObject * Impl () const
 Return a handle to backend (reserved for internal use).
 
const internal::Base_Handle & HImpl () const
 
template<typename T >
T * Impl () const
 Reserved for internal use.
 
bool operator== (const Base_PublicObject &theObject) const
 
bool operator!= (const Base_PublicObject &theObject) const
 

Additional Inherited Members

- Protected Member Functions inherited from cadex::Base_PublicObject
 Base_PublicObject (const internal::Base_HandledObject *theObject)
 Constructor (reserved for internal use).
 
template<typename T >
T * GetOrCreateImpl ()
 Reserved for internal use.
 

Detailed Description

Encapsulates a container of selected scene nodes.

Warning
This class is a part of Visualization Toolkit add-on, which is licensed separately from the base CAD Exchanger SDK.

Each scene node may be accompined by list of shapes when selected a subshape(-s). For this reason ModelPrs_SelectionVisitor is provide a two Visit() methods.

A selection contains a shared pointer to its internal implementation, so simple copying an object will just copy a shared pointer. Therefore any modification of the copied object will propagate to original object.

See also
Using pimpl pattern
Examples
visualization/qtquick_qml/manipulator/main.cxx, visualization/qtquick_qml/measurements/main.cxx, and visualization/qtquick_qml/selectionhandling/main.cxx.

Constructor & Destructor Documentation

◆ ModelPrs_Selection() [1/2]

cadex::ModelPrs_Selection::ModelPrs_Selection ( )

Constructor.

Creates null object.

See also
IsNull()

◆ ModelPrs_Selection() [2/2]

cadex::ModelPrs_Selection::ModelPrs_Selection ( initialized  )

Constructor.

Creates an object with implementation.

See also
IsNull()