The Factory class is used to create and Exchange objects which inherit from HPS::Component or one of its subclasses. More...
#include <sprk_exchange.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, A3DEntity *in_entity=nullptr) |
Creates a new Exchange::Component as a subcomponent of a given Component. More... | |
static CADModel | CreateCADModel (Model const &in_model=HPS::Factory::CreateModel(), A3DAsmModelFile *in_entity=nullptr, bool in_owns_entity=false) |
Creates a new Exchange::CADModel. More... | |
static Filter | CreateFilter (HPS::Component const &in_owner, A3DEntity *in_entity=nullptr) |
Creates a new Exchange::Filter as a subcomponent of a given Component. More... | |
static Capture | CreateCapture (HPS::Component const &in_owner, A3DEntity *in_entity=nullptr, bool in_is_default=false) |
Creates a new Exchange::Capture as a subcomponent of a given Component. More... | |
static Sheet | CreateSheet (HPS::Component const &in_owner, A3DEntity *in_entity=nullptr) |
Creates a new Exchange::Sheet 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 Exchange 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 Exchange::CADModel.
in_model | The Model associated with the newly created Exchange::CADModel. |
in_entity | The Exchange entity associated with the newly created Exchange::CADModel. |
in_owns_entity | Whether the newly created Exchange::CADModel owns the associated A3DAsmModelFile (see the documentation for Exchange::CADModel::GetEntityOwnership for more details). |
|
static |
Creates a new Exchange::Capture as a subcomponent of a given Component.
in_owner | The HPS::Component which owns the newly created Exchange::Capture. |
in_entity | The Exchange entity associated with the newly created Exchange::Capture. |
in_is_default | Whether the newly created Exchange::Capture is the default capture for the CADModel, i.e., the capture that will be activated when CADModel::ActivateDefaultCapture is invoked. Note that if one is creating a default capture, the owner must be a CADModel (or subclass thereof) and this will delete the old default capture on that CADModel if one was present. |
|
static |
Creates a new Exchange::Component as a subcomponent of a given Component.
in_owner | The HPS::Component which owns the newly created Exchange::Component. |
in_type | The type of Exchange::Component to create. |
in_entity | The Exchange entity associated with the newly created Exchange::Component. |
|
static |
Creates a new Exchange::Filter as a subcomponent of a given Component.
in_owner | The HPS::Component which owns the newly created Exchange::Filter. |
in_entity | The Exchange entity associated with the newly created Exchange::Filter. |
|
static |
Creates a new Exchange::Sheet as a subcomponent of a given Component.
in_owner | The HPS::Component which owns the newly created Exchange::Sheet. |
in_entity | The Exchange entity associated with the newly created Exchange::Sheet. |
|
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.