Hide menu
cadex::ModelData_Model::ElementVisitor Class Referenceabstract

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

Inheritance diagram for cadex::ModelData_Model::ElementVisitor:
cadex::ModelData_Model::CombinedElementVisitor cadex::ModelData_Model::VoidElementVisitor cadex::ModelData_SceneGraphElementUniqueVisitor

Public Member Functions

virtual void operator() (const ModelData_Part &thePart)=0
 
virtual bool VisitEnter (const ModelData_Assembly &theAssembly)=0
 
virtual void VisitLeave (const ModelData_Assembly &theAssembly)=0
 
virtual bool VisitEnter (const ModelData_Instance &theInstance)=0
 
virtual void VisitLeave (const ModelData_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.

Examples:
exploring/bom/main.cxx, and exploring/pmi/main.cxx.