The Factory class is used to create and DWG objects which inherit from HPS::Component or one of its subclasses. More...
#include <sprk_dwg.h>
Public Member Functions | |
virtual HPS::Type | Type () const |
This function returns the true type of the underlying object. More... | |
virtual HPS::Type | ObjectType () const |
virtual bool | Empty () const |
Indicates whether this object has any values set on it. More... | |
virtual void | Reset () |
Resets this object to its initial, uninitialized state. More... | |
bool | HasType (HPS::Type in_mask) const |
This function indicates whether this Object has the given Type mask. More... | |
intptr_t | GetClassID () const |
Returns a unique identifier that is shared by all objects of the same class. More... | |
intptr_t | GetInstanceID () const |
Returns an identifier that can be used to identify which instance of a class an object is. More... | |
Static Public Member Functions | |
static Component | CreateComponent (HPS::Component const &in_owner, HPS::Component::ComponentType in_type, DWGObjectID *in_object_id=nullptr) |
Creates a new DWG::Component as a subcomponent of a given Component. More... | |
static CADModel | CreateCADModel (Model const &in_model=HPS::Factory::CreateModel()) |
Creates a new DWG::CADModel. More... | |
static Layout | CreateLayout (HPS::Component const &in_owner, HPS::Component::ComponentType in_type, DWGObjectID *in_object_id=nullptr) |
Creates a new DWG::Layout as a subcomponent of a given Component. More... | |
static Layer | CreateLayer (HPS::Component const &in_owner, DWGObjectID *in_object_id=nullptr) |
Creates a new DWG::Layer as a subcomponent of a given Component. More... | |
template<typename T > | |
static intptr_t | ClassID () |
Unique identifier for this class. More... | |
Static Public Attributes | |
static const HPS::Type | staticType = HPS::Type::None |
This function returns the type the object, as declared. More... | |
Private Member Functions | |
Factory () | |
Private default constructor to prevent instantiation. More... | |
The Factory class is used to create and DWG objects which inherit from HPS::Component or one of its subclasses.
|
private |
Private default constructor to prevent instantiation.
|
inlinestaticinherited |
Unique identifier for this class.
Note: this method uses construction of static objects. If used in a constructor, it should be used in the body not the initializer list.
|
static |
Creates a new DWG::CADModel.
in_model | The Model associated with the newly created DWG::CADModel. |
|
static |
Creates a new DWG::Component as a subcomponent of a given Component.
in_owner | The HPS::Component which owns the newly created DWG::Component. |
in_type | The type of DWG::Component to create. |
in_object | The DWG object ID associated with the newly created DWG::Component. |
|
static |
Creates a new DWG::Layer as a subcomponent of a given Component.
in_owner | The HPS::Component which owns the newly created DWG::Layer. |
in_object | The DWG object ID associated with the newly created DWG::Layer. |
|
static |
Creates a new DWG::Layout as a subcomponent of a given Component.
in_owner | The HPS::Component which owns the newly created DWG::Component. |
in_type | The type of DWG::Component to create. |
in_object | The DWG object ID associated with the newly created DWG::Component. |
|
inlinevirtualinherited |
Indicates whether this object has any values set on it.
Reimplemented in HPS::STL::ImportResultsKit, HPS::STL::ImportOptionsKit, HPS::OBJ::ImportResultsKit, HPS::OBJ::ImportOptionsKit, HPS::Hardcopy::File::ExportOptionsKit, HPS::Stream::ExportOptionsKit, HPS::Stream::ImportResultsKit, HPS::Stream::ImportOptionsKit, HPS::PointCloud::ImportOptionsKit, HPS::PointCloud::ImportResultsKit, HPS::UpdateOptionsKit, HPS::HighlightSearchOptionsKit, HPS::HighlightOptionsKit, HPS::SelectionOptionsKit, HPS::SearchOptionsKit, HPS::CutGeometryGatheringOptionsKit, HPS::ShapeKit, HPS::ShaderKit, HPS::Shader::ImportOptionsKit, HPS::ImageKit, HPS::Image::ImportOptionsKit, HPS::Image::ExportOptionsKit, HPS::TextureOptionsKit, HPS::LinePatternKit, HPS::LinePatternParallelKit, HPS::LinePatternOptionsKit, HPS::GlyphKit, HPS::ApplicationWindowOptionsKit, HPS::OffScreenWindowOptionsKit, HPS::StandAloneWindowOptionsKit, HPS::GridKit, HPS::PolygonKit, HPS::MeshKit, HPS::ShellKit, HPS::ShellRelationResultsKit, HPS::ShellRelationOptionsKit, HPS::ShellOptimizationOptionsKit, HPS::TextKit, HPS::EllipticalArcKit, HPS::EllipseKit, HPS::TrimKit, HPS::NURBSSurfaceKit, HPS::NURBSCurveKit, HPS::SpotlightKit, HPS::InfiniteLineKit, HPS::CuttingSectionKit, HPS::CircularWedgeKit, HPS::CircularArcKit, HPS::CircleKit, HPS::SphereKit, HPS::CylinderKit, HPS::DistantLightKit, HPS::MarkerKit, HPS::LineKit, HPS::AttributeLockKit, HPS::FontInfoState, HPS::WindowInfoKit, HPS::DebuggingKit, HPS::SubwindowKit, HPS::ContourLineKit, HPS::VisualEffectsKit, HPS::TransformMaskKit, HPS::PostProcessEffectsKit, HPS::DrawingAttributeKit, HPS::HiddenLineAttributeKit, HPS::PerformanceKit, HPS::NURBSSurfaceAttributeKit, HPS::MaterialKit, HPS::MaterialMappingKit, HPS::MatrixKit, HPS::CurveAttributeKit, HPS::EdgeAttributeKit, HPS::LineAttributeKit, HPS::TextAttributeKit, HPS::CuttingSectionAttributeKit, HPS::CylinderAttributeKit, HPS::LightingAttributeKit, HPS::SphereAttributeKit, HPS::MarkerAttributeKit, HPS::CullingKit, HPS::ColorInterpolationKit, HPS::TransparencyKit, HPS::SelectabilityKit, HPS::CameraKit, HPS::VisibilityKit, HPS::BoundingKit, HPS::SegmentOptimizationOptionsKit, HPS::Publish::ExportOptionsKit, HPS::Publish::TextFieldKit, HPS::Publish::SignatureFieldKit, HPS::Publish::DropDownListKit, HPS::Exchange::TessellationOptionsKit, HPS::Publish::ListBoxKit, HPS::Exchange::ExportSTEPOptionsKit, HPS::Exchange::ExportParasolidOptionsKit, HPS::Publish::RadioButtonKit, HPS::Exchange::ExportIGESOptionsKit, HPS::Exchange::ExportXMLOptionsKit, HPS::Publish::CheckBoxKit, HPS::Exchange::ExportU3DOptionsKit, HPS::Exchange::ExportSTLOptionsKit, HPS::Publish::ButtonKit, HPS::Exchange::ExportPRCOptionsKit, HPS::Publish::LinkKit, HPS::Exchange::ExportJTOptionsKit, HPS::Publish::SlideTableKit, HPS::Exchange::ExportACISOptionsKit, HPS::Publish::TableKit, HPS::Exchange::Export3MFOptionsKit, HPS::Publish::ImageKit, HPS::Publish::TextKit, HPS::Exchange::ModelFileImportOptionsKit, HPS::Publish::ViewKit, HPS::Exchange::TranslationOptionsKit, HPS::Publish::ArtworkKit, HPS::Publish::AnnotationKit, HPS::ComponentPath, HPS::Exchange::ImportOptionsKit, HPS::Parasolid::ExportOptionsKit, HPS::Exchange::NURBSConversionOptionsKit, HPS::Parasolid::LineTessellationKit, HPS::Exchange::Configuration, HPS::Publish::PageKit, HPS::Parasolid::FacetTessellationKit, HPS::Publish::DocumentKit, HPS::Parasolid::ImportOptionsKit, HPS::DWG::ImportOptionsKit, HPS::OOC::ImportOptionsKit, HPS::Sketchup::ImportOptionsKit, and HPS::Sketchup::ImportResultsKit.
|
inherited |
Returns a unique identifier that is shared by all objects of the same class.
|
inherited |
Returns an identifier that can be used to identify which instance of a class an object is.
Different keys and controls will return the same value if they are backed by the same database resource.
|
inherited |
|
inlinevirtualinherited |
Reimplemented in HPS::STL::ImportNotifier, HPS::STL::ImportResultsKit, HPS::STL::ImportOptionsKit, HPS::OBJ::ExportNotifier, HPS::OBJ::ImportNotifier, HPS::OBJ::ImportResultsKit, HPS::OBJ::ImportOptionsKit, HPS::Hardcopy::File::ExportOptionsKit, HPS::Stream::ExportNotifier, HPS::Stream::ImportNotifier, HPS::Stream::ExportOptionsKit, HPS::Stream::ImportResultsKit, HPS::Stream::ImportOptionsKit, HPS::Stream::Toolkit, HPS::PointCloud::ImportNotifier, HPS::PointCloud::ImportOptionsKit, HPS::PointCloud::ImportResultsKit, HPS::IONotifier, HPS::KeyboardState, HPS::TouchState, HPS::MouseState, HPS::EventHandler, HPS::EventDispatcher, HPS::World, HPS::UpdateOptionsControl, HPS::UpdateOptionsKit, HPS::HighlightControl, HPS::HighlightSearchResults, HPS::HighlightSearchResultsIterator, HPS::HighlightState, HPS::HighlightSearchOptionsKit, HPS::HighlightOptionsKit, HPS::SelectionControl, HPS::SelectionResults, HPS::SelectionResultsIterator, HPS::SelectionItem, HPS::SelectionOptionsControl, HPS::SelectionOptionsKit, HPS::TreeContext, HPS::SearchOptionsKit, HPS::CutGeometryGatheringOptionsKit, HPS::ShapeDefinition, HPS::ShapeKit, HPS::ShaderDefinition, HPS::ShaderKit, HPS::Shader::ImportOptionsKit, HPS::LinePatternDefinition, HPS::MaterialPaletteDefinition, HPS::NamedStyleDefinition, HPS::CubeMapDefinition, HPS::ImageDefinition, HPS::OffScreenWindowKey, HPS::OffScreenWindowOptionsControl, HPS::ImageKit, HPS::Image::ImportOptionsKit, HPS::Image::ExportOptionsKit, HPS::TextureOptionsKit, HPS::TextureDefinition, HPS::GlyphDefinition, HPS::PortfolioKey, HPS::Definition, HPS::LineShapeElement, HPS::AnchorShapeElement, HPS::LeaderLineClippingElement, HPS::CircularArcShapeElement, HPS::EllipticalArcShapeElement, HPS::CircleShapeElement, HPS::EllipseShapeElement, HPS::PolygonShapeElement, HPS::ShapeElement, HPS::LinePatternKit, HPS::LinePatternParallelKit, HPS::GlyphLinePatternElement, HPS::BlankLinePatternElement, HPS::SolidLinePatternElement, HPS::LinePatternElement, HPS::LinePatternOptionsKit, HPS::GlyphKit, HPS::InfiniteLineGlyphElement, HPS::CircularArcGlyphElement, HPS::SphereGlyphElement, HPS::EllipseGlyphElement, HPS::DotGlyphElement, HPS::LineGlyphElement, HPS::GlyphElement, HPS::ApplicationWindowKey, HPS::StandAloneWindowKey, HPS::ApplicationWindowOptionsControl, HPS::ApplicationWindowOptionsKit, HPS::OffScreenWindowOptionsKit, HPS::StandAloneWindowOptionsControl, HPS::StandAloneWindowOptionsKit, HPS::ReferenceKey, HPS::StyleKey, HPS::IncludeKey, HPS::GridKey, HPS::GridKit, HPS::PolygonKey, HPS::PolygonKit, HPS::MeshKey, HPS::MeshKit, HPS::ShellKey, HPS::ShellKit, HPS::ShellRelationResultsKit, HPS::ShellRelationOptionsKit, HPS::ShellOptimizationOptionsKit, HPS::TextKey, HPS::TextKit, HPS::EllipticalArcKey, HPS::EllipticalArcKit, HPS::EllipseKey, HPS::EllipseKit, HPS::TrimKit, HPS::TrimElement, HPS::NURBSSurfaceKey, HPS::NURBSSurfaceKit, HPS::NURBSCurveKey, HPS::NURBSCurveKit, HPS::SpotlightKey, HPS::SpotlightKit, HPS::InfiniteLineKey, HPS::InfiniteLineKit, HPS::CuttingSectionKey, HPS::CuttingSectionKit, HPS::CircularWedgeKey, HPS::CircularWedgeKit, HPS::CircularArcKey, HPS::CircularArcKit, HPS::CircleKey, HPS::CircleKit, HPS::SphereKey, HPS::SphereKit, HPS::CylinderKey, HPS::CylinderKit, HPS::DistantLightKey, HPS::DistantLightKit, HPS::MarkerKey, HPS::MarkerKit, HPS::LineKey, HPS::LineKit, HPS::GeometryKey, HPS::AttributeLockControl, HPS::AttributeLockKit, HPS::FontInfoState, HPS::WindowInfoControl, HPS::WindowInfoKit, HPS::DebuggingControl, HPS::DebuggingKit, HPS::SubwindowControl, HPS::SubwindowKit, HPS::ContourLineControl, HPS::ContourLineKit, HPS::VisualEffectsControl, HPS::VisualEffectsKit, HPS::TransformMaskControl, HPS::TransformMaskKit, HPS::PostProcessEffectsControl, HPS::PostProcessEffectsKit, HPS::DrawingAttributeControl, HPS::DrawingAttributeKit, HPS::HiddenLineAttributeControl, HPS::HiddenLineAttributeKit, HPS::PerformanceControl, HPS::PerformanceKit, HPS::NURBSSurfaceAttributeControl, HPS::NURBSSurfaceAttributeKit, HPS::MaterialKit, HPS::ConditionControl, HPS::StyleControl, HPS::PortfolioControl, HPS::MaterialMappingControl, HPS::MaterialMappingKit, HPS::TextureMatrixControl, HPS::ModellingMatrixControl, HPS::MatrixKit, HPS::CurveAttributeControl, HPS::CurveAttributeKit, HPS::EdgeAttributeControl, HPS::EdgeAttributeKit, HPS::LineAttributeControl, HPS::LineAttributeKit, HPS::TextAttributeControl, HPS::TextAttributeKit, HPS::CuttingSectionAttributeControl, HPS::CuttingSectionAttributeKit, HPS::CylinderAttributeControl, HPS::CylinderAttributeKit, HPS::LightingAttributeControl, HPS::LightingAttributeKit, HPS::SphereAttributeControl, HPS::SphereAttributeKit, HPS::MarkerAttributeControl, HPS::MarkerAttributeKit, HPS::CullingControl, HPS::CullingKit, HPS::ColorInterpolationControl, HPS::ColorInterpolationKit, HPS::TransparencyControl, HPS::TransparencyKit, HPS::SelectabilityControl, HPS::SelectabilityKit, HPS::CameraControl, HPS::CameraKit, HPS::VisibilityControl, HPS::VisibilityKit, HPS::BoundingControl, HPS::BoundingKit, HPS::KeyPath, HPS::WindowKey, HPS::DriverEventHandler, HPS::UpdateNotifier, HPS::SegmentOptimizationOptionsKit, HPS::SegmentKey, HPS::Key, HPS::ConditionalExpression, HPS::FontSearchResults, HPS::Publish::ExportOptionsKit, HPS::FontSearchResultsIterator, HPS::SearchResults, HPS::SearchResultsIterator, HPS::Publish::PageControl, HPS::EventNotifier, HPS::Publish::DocumentKey, HPS::Kit, HPS::Control, HPS::Publish::TextFieldKit, HPS::Publish::SignatureFieldKit, HPS::Publish::DropDownListKit, HPS::Exchange::TessellationOptionsKit, HPS::Publish::ListBoxKit, HPS::Exchange::ExportSTEPOptionsKit, HPS::Exchange::ExportParasolidOptionsKit, HPS::Publish::RadioButtonKit, HPS::Exchange::ExportIGESOptionsKit, HPS::Exchange::ExportXMLOptionsKit, HPS::Publish::CheckBoxKit, HPS::Exchange::ExportU3DOptionsKit, HPS::ComponentTreeItem, HPS::Exchange::ExportSTLOptionsKit, HPS::Publish::ButtonKit, HPS::ComponentTree, HPS::Exchange::ExportPRCOptionsKit, HPS::Publish::LinkKit, HPS::SceneTreeItem, HPS::Exchange::ExportJTOptionsKit, HPS::Publish::SlideTableKit, HPS::Exchange::ExportACISOptionsKit, HPS::SceneTree, HPS::Publish::TableKit, HPS::Exchange::Export3MFOptionsKit, HPS::Publish::ImageKit, HPS::Publish::TextKit, HPS::Exchange::ModelFileImportOptionsKit, HPS::Publish::ViewKit, HPS::BooleanMetadata, HPS::TimeMetadata, HPS::Exchange::TranslationOptionsKit, HPS::StringMetadata, HPS::DoubleMetadata, HPS::UnsignedIntegerMetadata, HPS::Publish::ArtworkKit, HPS::IntegerMetadata, HPS::Metadata, HPS::CADModel, HPS::Capture, HPS::Filter, HPS::Publish::AnnotationKit, HPS::ComponentPath, HPS::Component, HPS::Exchange::ImportOptionsKit, HPS::AxisTriadControl, HPS::Parasolid::ExportOptionsKit, HPS::NavigationCubeControl, HPS::Exchange::NURBSConversionOptionsKit, HPS::OperatorControl, HPS::Parasolid::LineTessellationKit, HPS::Operator, HPS::Exchange::Configuration, HPS::SprocketPath, HPS::Publish::PageKit, HPS::Exchange::ReloadNotifier, HPS::Parasolid::FacetTessellationKit, HPS::Exchange::ExportNotifier, HPS::Exchange::TranslationNotifier, HPS::Publish::DocumentKit, HPS::Exchange::ImportNotifier, HPS::Layout, HPS::Parasolid::ImportOptionsKit, HPS::Model, HPS::Exchange::Filter, HPS::Parasolid::ImportNotifier, HPS::Exchange::Capture, HPS::DWG::ImportOptionsKit, HPS::Parasolid::CADModel, HPS::Exchange::CADModel, HPS::DWG::ImportNotifier, HPS::Parasolid::Component, HPS::View, HPS::Exchange::Sheet, HPS::OOC::ImportOptionsKit, HPS::DWG::Layout, HPS::SprocketKit, HPS::OOC::ImportNotifier, HPS::SprocketControl, HPS::Exchange::ProductOccurrence, HPS::Sketchup::ImportOptionsKit, HPS::DWG::CADModel, HPS::Sketchup::ImportNotifier, HPS::Exchange::Component, HPS::DWG::Layer, HPS::Canvas, HPS::DWG::Component, HPS::ExchangeParasolid::ImportNotifier, and HPS::Sketchup::ImportResultsKit.
|
virtualinherited |
Resets this object to its initial, uninitialized state.
Reimplemented in HPS::EventHandler, HPS::EventDispatcher, HPS::World, HPS::HighlightSearchResults, HPS::HighlightSearchResultsIterator, HPS::SelectionResults, HPS::SelectionResultsIterator, HPS::FontSearchResults, HPS::FontSearchResultsIterator, HPS::SearchResults, and HPS::SearchResultsIterator.
|
virtualinherited |
This function returns the true type of the underlying object.
This function is useful for finding the type of smart pointer objects that have been cast to more generic types.
Reimplemented in HPS::UpdateOptionsControl, HPS::HighlightControl, HPS::SelectionOptionsControl, HPS::OffScreenWindowOptionsControl, HPS::ApplicationWindowOptionsControl, HPS::StandAloneWindowOptionsControl, HPS::AttributeLockControl, HPS::WindowInfoControl, HPS::DebuggingControl, HPS::SubwindowControl, HPS::ContourLineControl, HPS::VisualEffectsControl, HPS::TransformMaskControl, HPS::PostProcessEffectsControl, HPS::DrawingAttributeControl, HPS::HiddenLineAttributeControl, HPS::PerformanceControl, HPS::NURBSSurfaceAttributeControl, HPS::ConditionControl, HPS::StyleControl, HPS::PortfolioControl, HPS::MaterialMappingControl, HPS::TextureMatrixControl, HPS::ModellingMatrixControl, HPS::CurveAttributeControl, HPS::EdgeAttributeControl, HPS::LineAttributeControl, HPS::TextAttributeControl, HPS::CuttingSectionAttributeControl, HPS::CylinderAttributeControl, HPS::LightingAttributeControl, HPS::SphereAttributeControl, HPS::MarkerAttributeControl, HPS::CullingControl, HPS::ColorInterpolationControl, HPS::TransparencyControl, HPS::SelectabilityControl, HPS::CameraControl, HPS::VisibilityControl, HPS::BoundingControl, HPS::Kit, and HPS::Control.
|
staticinherited |
This function returns the type the object, as declared.
This does not necessarily give the true type of the underlying object.