Hide menu
Loading...
Searching...
No Matches

Base class for all public classes. More...

#include <cadex/BaseObject.hxx>

Inheritance diagram for cadex::BaseObject:
cadex::Drawing::Drawing cadex::Drawing::Drawing::LayerIterator cadex::Drawing::Drawing::SheetIterator cadex::Drawing::Element cadex::Drawing::HatchDefinitionLine cadex::Drawing::Layer cadex::Drawing::Sheet cadex::Drawing::Sheet::ViewIterator cadex::Drawing::View cadex::Geom::Geometry cadex::ModelAlgo::MeshGenerator cadex::ModelAlgo::MeshGeneratorParameters cadex::ModelData::Body cadex::ModelData::Model cadex::ModelData::ModelElement cadex::ModelData::ModelElementIterator cadex::ModelData::ModelReader cadex::ModelData::ModelReaderParameters cadex::ModelData::Shape cadex::ModelData::ShapeIterator cadex::PMI::Camera cadex::PMI::Data cadex::PMI::Element cadex::PMI::GraphicalComponent cadex::PMI::GraphicalRepresentation cadex::PMI::Outline cadex::PMI::SavedView cadex::PMI::SemanticAttribute cadex::PMI::SemanticComponent cadex::PMI::SemanticRepresentation cadex::ProgressStatus cadex::View::BackgroundStyle cadex::View::ImageWriter cadex::View::ImageWriterParameters

Public Types

typedef std::shared_ptr< internal::BaseObjectImpl > ImplType
 

Public Member Functions

size_t Id () const
 Return unique identifier of public object.
 
internal::BaseObjectImpl * Impl () const
 
bool IsNull () const
 
 operator bool () const
 
template<typename T >
bool IsOfType () const
 
template<typename T >
T * Impl () const
 Reserved for internal use.
 

Protected Member Functions

 BaseObject (const ImplType &theImpl)
 

Detailed Description

Base class for all public classes.

BaseObject is a base class which contains data implementation of public objects. Any copy of the object is shallow copy: pointer to implementation will be copied. Therefore any modification of the copied object will propagate to original object.