Hide menu
Loading...
Searching...
No Matches
cadex::ModelData::ModelElementVisitor Class Referenceabstract

Defines a visitor of the scene graph elements. More...

#include <cadex/ModelData/ModelElementVisitor.hxx>

Inheritance diagram for cadex::ModelData::ModelElementVisitor:
cadex::ModelData::CombinedElementVisitor cadex::ModelData::ModelElementUniqueVisitor cadex::ModelData::ModelElementVoidVisitor

Public Member Functions

virtual void operator() (const Part &thePart)=0
 
virtual bool VisitEnter (const Assembly &theAssembly)=0
 
virtual void VisitLeave (const Assembly &theAssembly)=0
 
virtual bool VisitEnter (const Instance &theInstance)=0
 
virtual void VisitLeave (const Instance &theInstance)=0
 

Detailed Description

Defines a visitor of the scene graph elements.

The Visitor follows a hierarchical visitor pattern (see http://c2.com/cgi/wiki?HierarchicalVisitorPattern) what enables to track entering and leaving composite entities - assemblies and instances.

Methods VisitEnter() returns true if the child elements of the assembly or a referred element of the instance should be visited. If the method returns false then they will not be visited. The method VisitLeave() will always be called.

Member Function Documentation

◆ operator()()

virtual void cadex::ModelData::ModelElementVisitor::operator() ( const Part & thePart)
pure virtual

◆ VisitEnter() [1/2]

virtual bool cadex::ModelData::ModelElementVisitor::VisitEnter ( const Assembly & theAssembly)
pure virtual

◆ VisitEnter() [2/2]

virtual bool cadex::ModelData::ModelElementVisitor::VisitEnter ( const Instance & theInstance)
pure virtual

◆ VisitLeave() [1/2]

virtual void cadex::ModelData::ModelElementVisitor::VisitLeave ( const Assembly & theAssembly)
pure virtual

◆ VisitLeave() [2/2]

virtual void cadex::ModelData::ModelElementVisitor::VisitLeave ( const Instance & theInstance)
pure virtual