HPS::Exchange::Factory Class Reference

#include <sprk_exchange.h>

Inheritance diagram for HPS::Exchange::Factory:
HPS::Sprocket HPS::Object

Static Public Member Functions

static CADModel CreateCADModel (Model const &in_model=HPS::Factory::CreateModel(), A3DAsmModelFile *in_entity=nullptr, bool in_owns_entity=false)
 
static Capture CreateCapture (HPS::Component const &in_owner, A3DEntity *in_entity=nullptr, bool in_is_default=false)
 
static Component CreateComponent (HPS::Component const &in_owner, HPS::Component::ComponentType in_type, A3DEntity *in_entity=nullptr)
 
static Filter CreateFilter (HPS::Component const &in_owner, A3DEntity *in_entity=nullptr)
 
static Sheet CreateSheet (HPS::Component const &in_owner, A3DEntity *in_entity=nullptr)
 
static Component DeInstanceComponent (HPS::ComponentPath const &in_component_path)
 
- Static Public Member Functions inherited from HPS::Object
template<typename T >
static intptr_t ClassID ()
 

Additional Inherited Members

- Public Member Functions inherited from HPS::Sprocket
Sprocket (Sprocket &&in_that)
 
- Public Member Functions inherited from HPS::Object
virtual bool Empty () const
 
intptr_t GetClassID () const
 
intptr_t GetInstanceID () const
 
bool HasType (HPS::Type in_mask) const
 
Object (Object const &that)
 
 Object (Object &&in_that)
 
virtual HPS::Type ObjectType () const
 
Objectoperator= (Object const &other_object)
 
Objectoperator= (Object &&in_that)
 
virtual void Reset ()
 
virtual HPS::Type Type () const
 
- Static Public Attributes inherited from HPS::Object
static const HPS::Type staticType = HPS::Type::None
 

Detailed Description

The Factory class is used to create and Exchange objects which inherit from HPS::Component or one of its subclasses.

Member Function Documentation

◆ CreateCADModel()

static CADModel HPS::Exchange::Factory::CreateCADModel ( Model const &  in_model = HPS::Factory::CreateModel(),
A3DAsmModelFile *  in_entity = nullptr,
bool  in_owns_entity = false 
)
static

Creates a new Exchange::CADModel.

Parameters
in_modelThe Model associated with the newly created Exchange::CADModel.
in_entityThe Exchange entity associated with the newly created Exchange::CADModel.
in_owns_entityWhether the newly created Exchange::CADModel owns the associated A3DAsmModelFile (see the documentation for Exchange::CADModel::GetEntityOwnership for more details).

◆ CreateCapture()

static Capture HPS::Exchange::Factory::CreateCapture ( HPS::Component const &  in_owner,
A3DEntity *  in_entity = nullptr,
bool  in_is_default = false 
)
static

Creates a new Exchange::Capture as a subcomponent of a given Component.

Parameters
in_ownerThe HPS::Component which owns the newly created Exchange::Capture.
in_entityThe Exchange entity associated with the newly created Exchange::Capture.
in_is_defaultWhether 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.

◆ CreateComponent()

static Component HPS::Exchange::Factory::CreateComponent ( HPS::Component const &  in_owner,
HPS::Component::ComponentType  in_type,
A3DEntity *  in_entity = nullptr 
)
static

Creates a new Exchange::Component as a subcomponent of a given Component.

Parameters
in_ownerThe HPS::Component which owns the newly created Exchange::Component.
in_typeThe type of Exchange::Component to create.
in_entityThe Exchange entity associated with the newly created Exchange::Component.

◆ CreateFilter()

static Filter HPS::Exchange::Factory::CreateFilter ( HPS::Component const &  in_owner,
A3DEntity *  in_entity = nullptr 
)
static

Creates a new Exchange::Filter as a subcomponent of a given Component.

Parameters
in_ownerThe HPS::Component which owns the newly created Exchange::Filter.
in_entityThe Exchange entity associated with the newly created Exchange::Filter.

◆ CreateSheet()

static Sheet HPS::Exchange::Factory::CreateSheet ( HPS::Component const &  in_owner,
A3DEntity *  in_entity = nullptr 
)
static

Creates a new Exchange::Sheet as a subcomponent of a given Component.

Parameters
in_ownerThe HPS::Component which owns the newly created Exchange::Sheet.
in_entityThe Exchange entity associated with the newly created Exchange::Sheet.

◆ DeInstanceComponent()

static Component HPS::Exchange::Factory::DeInstanceComponent ( HPS::ComponentPath const &  in_component_path)
static

Returns the component at whose level changes can be made without influencing other instances of the same component. The ComponentPath passed to this function needs to include a component of type Representation Item.

Parameters
in_component_pathThe ComponentPath to operate on.
Returns
The newly de-instanced Component.

The documentation for this class was generated from the following file: