Open CASCADE Technology 7.8.0
Public Member Functions
StepData_SelectType Class Referenceabstract

SelectType is the basis used for SELECT_TYPE definitions from the EXPRESS form. A SELECT_TYPE in EXPRESS is an enumeration of Types, it corresponds in a way to a Super-Type, but with no specific Methods, and no exclusivity (a given Type can be member of several SELECT_TYPES, plus be itself a SUB_TYPE). More...

#include <StepData_SelectType.hxx>

Inherited by StepAP203_ApprovedItem, StepAP203_CertifiedItem, StepAP203_ChangeRequestItem, StepAP203_ClassifiedItem, StepAP203_ContractedItem, StepAP203_DateTimeItem, StepAP203_PersonOrganizationItem, StepAP203_SpecifiedItem, StepAP203_StartRequestItem, StepAP203_WorkItem, StepAP214_ApprovalItem, StepAP214_AutoDesignDateAndPersonItem, StepAP214_AutoDesignDateAndTimeItem, StepAP214_AutoDesignDatedItem, StepAP214_AutoDesignGeneralOrgItem, StepAP214_AutoDesignGroupedItem, StepAP214_AutoDesignPresentedItemSelect, StepAP214_AutoDesignReferencingItem, StepAP214_DocumentReferenceItem, StepAP214_ExternalIdentificationItem, StepAP214_GroupItem, StepAP214_PresentedItemSelect, StepAP242_IdAttributeSelect, StepAP242_ItemIdentifiedRepresentationUsageDefinition, StepBasic_DateTimeSelect, StepBasic_PersonOrganizationSelect, StepBasic_ProductDefinitionOrReference, StepBasic_ProductOrFormationOrDefinition, StepBasic_RoleSelect, StepBasic_SizeSelect, StepBasic_SourceItem, StepBasic_Unit, StepDimTol_DatumOrCommonDatum, StepDimTol_DatumReferenceModifier, StepDimTol_DatumSystemOrReference, StepDimTol_GeometricToleranceTarget, StepDimTol_ShapeToleranceSelect, StepDimTol_ToleranceZoneTarget, StepElement_CurveElementFreedom, StepElement_CurveElementPurpose, StepElement_ElementAspect, StepElement_MeasureOrUnspecifiedValue, StepElement_SurfaceElementPurpose, StepElement_VolumeElementPurpose, StepFEA_CurveElementEndCoordinateSystem, StepFEA_DegreeOfFreedom, StepFEA_ElementOrElementGroup, StepFEA_SymmetricTensor22d, StepFEA_SymmetricTensor23d, StepFEA_SymmetricTensor42d, StepFEA_SymmetricTensor43d, StepGeom_Axis2Placement, StepGeom_CurveOnSurface, StepGeom_PcurveOrSurface, StepGeom_SurfaceBoundary, StepGeom_TrimmingSelect, StepGeom_VectorOrDirection, StepKinematics_KinematicTopologyRepresentationSelect, StepKinematics_RigidPlacement, StepKinematics_SpatialRotation, StepKinematics_SphericalPairSelect, StepRepr_CharacterizedDefinition, StepRepr_ConfigurationDesignItem, StepRepr_RepresentationOrRepresentationReference, StepRepr_RepresentedDefinition, StepRepr_ShapeDefinition, StepRepr_Transformation, StepShape_CsgPrimitive, StepShape_DimensionalCharacteristic, StepShape_GeometricSetSelect, StepShape_ReversibleTopologyItem, StepShape_ShapeDimensionRepresentationItem, StepShape_Shell, StepShape_SurfaceModel, StepShape_ToleranceMethodDefinition, StepShape_ValueQualifier, StepVisual_AnnotationPlaneElement, StepVisual_AreaOrView, StepVisual_CameraModelD3MultiClippingInterectionSelect, StepVisual_CameraModelD3MultiClippingUnionSelect, StepVisual_CurveStyleFontSelect, StepVisual_DraughtingCalloutElement, StepVisual_EdgeOrCurve, StepVisual_FaceOrSurface, StepVisual_FillStyleSelect, StepVisual_FontSelect, StepVisual_InvisibilityContext, StepVisual_InvisibleItem, StepVisual_LayeredItem, StepVisual_MarkerSelect, StepVisual_PathOrCompositeCurve, StepVisual_PresentationRepresentationSelect, StepVisual_PresentationSizeAssignmentSelect, StepVisual_PresentationStyleSelect, StepVisual_RenderingPropertiesSelect, StepVisual_StyleContextSelect, StepVisual_StyledItemTarget, StepVisual_SurfaceStyleElementSelect, StepVisual_TessellatedEdgeOrVertex, and StepVisual_TextOrCharacter.

Public Member Functions

virtual Standard_Integer CaseNum (const Handle< Standard_Transient > &ent) const =0
 Recognizes the Type of an Entity. Returns a positive Number which identifies the Type in the definition List of the SelectType. Returns Zero if its Type in not in this List.
 
Standard_Boolean Matches (const Handle< Standard_Transient > &ent) const
 Returns True if the Type of an Entity complies with the definition list of the SelectType. Also checks for a SelectMember Default Implementation looks for CaseNum or CaseMem positive.
 
void SetValue (const Handle< Standard_Transient > &ent)
 Stores an Entity. This allows to define a specific SelectType class with one read method per member Type, which returns the Value casted with the good Type.
 
void Nullify ()
 Nullifies the Stored Entity.
 
const Handle< Standard_Transient > & Value () const
 Returns the Stored Entity. Can be used to define specific read methods (see above)
 
Standard_Boolean IsNull () const
 Returns True if there is no Stored Entity (i.e. it is Null)
 
Handle< Standard_TypeType () const
 Returns the Effective (Dynamic) Type of the Stored Entity If it is Null, returns TYPE(Transient)
 
Standard_Integer CaseNumber () const
 Recognizes the Type of the stored Entity, or zero if it is Null or SelectMember. Calls the first method CaseNum on Value.
 
virtual Handle< StepData_PDescrDescription () const
 Returns the Description which corresponds to <me> Null if no specific description to give. This description is used to control reading an check validity. Default returns a Null Handle, i.e. undefined description It can suffice if CaseNum and CaseMem give enough control.
 
virtual Handle< StepData_SelectMemberNewMember () const
 Returns a preferred SelectMember. Default returns a Null By default, a SelectMember can be set according to data type and Name : it is a SelectNamed if Name is defined.
 
virtual Standard_Integer CaseMem (const Handle< StepData_SelectMember > &ent) const
 Recognize a SelectMember (kind, name). Returns a positive value which identifies the case in the List of immediate cases (distinct from the List of Entity Types). Zero if not recognizes Default returns 0, saying that no immediate value is allowed.
 
Standard_Integer CaseMember () const
 Returns the Type of the stored SelectMember, or zero if it is Null or Entity. Calls the method CaseMem on Value.
 
Handle< StepData_SelectMemberMember () const
 Returns Value as a SelectMember. Null if not a SelectMember.
 
Standard_CString SelectName () const
 Returns the type name of SelectMember. If no SelectMember or with no type name, returns an empty string To change it, pass through the SelectMember itself.
 
Standard_Integer Int () const
 This internal method gives access to a value implemented by an Integer (to read it)
 
void SetInt (const Standard_Integer val)
 This internal method gives access to a value implemented by an Integer (to set it) : a SelectMember MUST ALREADY BE THERE !
 
Standard_Integer Integer () const
 Gets the value as an Integer.
 
void SetInteger (const Standard_Integer val, const Standard_CString name="")
 Sets a new Integer value, with an optional type name Warning : If a SelectMember is already set, works on it : value and name must then be accepted by this SelectMember.
 
Standard_Boolean Boolean () const
 
void SetBoolean (const Standard_Boolean val, const Standard_CString name="")
 
StepData_Logical Logical () const
 
void SetLogical (const StepData_Logical val, const Standard_CString name="")
 
Standard_Real Real () const
 
void SetReal (const Standard_Real val, const Standard_CString name="")
 
virtual ~StepData_SelectType ()
 

Detailed Description

SelectType is the basis used for SELECT_TYPE definitions from the EXPRESS form. A SELECT_TYPE in EXPRESS is an enumeration of Types, it corresponds in a way to a Super-Type, but with no specific Methods, and no exclusivity (a given Type can be member of several SELECT_TYPES, plus be itself a SUB_TYPE).

A SelectType can be field of a Transient Entity or only used to control an input Argument

This class implies to designate each member Type by a Case Number which is a positive Integer value (this allows a faster treatment).

With this class, a specific SelectType can :

Constructor & Destructor Documentation

◆ ~StepData_SelectType()

virtual StepData_SelectType::~StepData_SelectType ( )
virtual

Member Function Documentation

◆ Boolean()

Standard_Boolean StepData_SelectType::Boolean ( ) const

◆ CaseMem()

virtual Standard_Integer StepData_SelectType::CaseMem ( const Handle< StepData_SelectMember > &  ent) const
virtual

Recognize a SelectMember (kind, name). Returns a positive value which identifies the case in the List of immediate cases (distinct from the List of Entity Types). Zero if not recognizes Default returns 0, saying that no immediate value is allowed.

Reimplemented in StepBasic_SizeSelect, StepElement_CurveElementFreedom, StepElement_CurveElementPurpose, StepElement_ElementAspect, StepElement_MeasureOrUnspecifiedValue, StepElement_SurfaceElementPurpose, StepElement_VolumeElementPurpose, StepFEA_DegreeOfFreedom, StepFEA_SymmetricTensor23d, StepFEA_SymmetricTensor43d, StepGeom_TrimmingSelect, and StepVisual_MarkerSelect.

◆ CaseMember()

Standard_Integer StepData_SelectType::CaseMember ( ) const

Returns the Type of the stored SelectMember, or zero if it is Null or Entity. Calls the method CaseMem on Value.

◆ CaseNum()

virtual Standard_Integer StepData_SelectType::CaseNum ( const Handle< Standard_Transient > &  ent) const
pure virtual

Recognizes the Type of an Entity. Returns a positive Number which identifies the Type in the definition List of the SelectType. Returns Zero if its Type in not in this List.

Implemented in StepAP203_ApprovedItem, StepAP203_CertifiedItem, StepAP203_ChangeRequestItem, StepAP203_ClassifiedItem, StepAP203_ContractedItem, StepAP203_DateTimeItem, StepAP203_PersonOrganizationItem, StepAP203_SpecifiedItem, StepAP203_StartRequestItem, StepAP203_WorkItem, StepAP214_ApprovalItem, StepAP214_AutoDesignDateAndPersonItem, StepAP214_AutoDesignDateAndTimeItem, StepAP214_AutoDesignDatedItem, StepAP214_AutoDesignGeneralOrgItem, StepAP214_AutoDesignGroupedItem, StepAP214_AutoDesignPresentedItemSelect, StepAP214_AutoDesignReferencingItem, StepAP214_DocumentReferenceItem, StepAP214_ExternalIdentificationItem, StepAP214_GroupItem, StepAP214_PresentedItemSelect, StepAP214_SecurityClassificationItem, StepAP242_IdAttributeSelect, StepAP242_ItemIdentifiedRepresentationUsageDefinition, StepBasic_DateTimeSelect, StepBasic_PersonOrganizationSelect, StepBasic_ProductDefinitionOrReference, StepBasic_ProductOrFormationOrDefinition, StepBasic_RoleSelect, StepBasic_Unit, StepDimTol_DatumOrCommonDatum, StepDimTol_DatumReferenceModifier, StepDimTol_DatumSystemOrReference, StepDimTol_GeometricToleranceTarget, StepDimTol_ShapeToleranceSelect, StepDimTol_ToleranceZoneTarget, StepFEA_CurveElementEndCoordinateSystem, StepFEA_ElementOrElementGroup, StepFEA_SymmetricTensor22d, StepFEA_SymmetricTensor42d, StepGeom_Axis2Placement, StepGeom_CurveOnSurface, StepGeom_PcurveOrSurface, StepGeom_SurfaceBoundary, StepGeom_VectorOrDirection, StepRepr_CharacterizedDefinition, StepRepr_ConfigurationDesignItem, StepRepr_RepresentedDefinition, StepRepr_ShapeDefinition, StepRepr_Transformation, StepShape_CsgPrimitive, StepShape_DimensionalCharacteristic, StepShape_GeometricSetSelect, StepShape_ReversibleTopologyItem, StepShape_ShapeDimensionRepresentationItem, StepShape_Shell, StepShape_SurfaceModel, StepShape_ToleranceMethodDefinition, StepShape_ValueQualifier, StepVisual_AnnotationPlaneElement, StepVisual_AreaOrView, StepVisual_CameraModelD3MultiClippingInterectionSelect, StepVisual_CameraModelD3MultiClippingUnionSelect, StepVisual_CurveStyleFontSelect, StepVisual_DraughtingCalloutElement, StepVisual_FillStyleSelect, StepVisual_FontSelect, StepVisual_InvisibilityContext, StepVisual_InvisibleItem, StepVisual_LayeredItem, StepVisual_PresentationRepresentationSelect, StepVisual_PresentationSizeAssignmentSelect, StepVisual_PresentationStyleSelect, StepVisual_StyleContextSelect, StepVisual_StyledItemTarget, StepVisual_SurfaceStyleElementSelect, StepVisual_TextOrCharacter, StepAP214_AutoDesignOrganizationItem, StepAP214_DateAndTimeItem, StepAP214_DateItem, StepAP214_OrganizationItem, StepAP214_PersonAndOrganizationItem, StepBasic_SizeSelect, StepBasic_SourceItem, StepElement_CurveElementFreedom, StepElement_CurveElementPurpose, StepElement_ElementAspect, StepElement_MeasureOrUnspecifiedValue, StepElement_SurfaceElementPurpose, StepElement_VolumeElementPurpose, StepFEA_DegreeOfFreedom, StepFEA_SymmetricTensor23d, StepFEA_SymmetricTensor43d, StepGeom_TrimmingSelect, StepKinematics_KinematicTopologyRepresentationSelect, StepKinematics_RigidPlacement, StepKinematics_SpatialRotation, StepKinematics_SphericalPairSelect, StepRepr_RepresentationOrRepresentationReference, StepVisual_EdgeOrCurve, StepVisual_FaceOrSurface, StepVisual_MarkerSelect, StepVisual_PathOrCompositeCurve, StepVisual_RenderingPropertiesSelect, and StepVisual_TessellatedEdgeOrVertex.

◆ CaseNumber()

Standard_Integer StepData_SelectType::CaseNumber ( ) const

Recognizes the Type of the stored Entity, or zero if it is Null or SelectMember. Calls the first method CaseNum on Value.

◆ Description()

virtual Handle< StepData_PDescr > StepData_SelectType::Description ( ) const
virtual

Returns the Description which corresponds to <me> Null if no specific description to give. This description is used to control reading an check validity. Default returns a Null Handle, i.e. undefined description It can suffice if CaseNum and CaseMem give enough control.

◆ Int()

Standard_Integer StepData_SelectType::Int ( ) const

This internal method gives access to a value implemented by an Integer (to read it)

◆ Integer()

Standard_Integer StepData_SelectType::Integer ( ) const

Gets the value as an Integer.

◆ IsNull()

Standard_Boolean StepData_SelectType::IsNull ( ) const

Returns True if there is no Stored Entity (i.e. it is Null)

◆ Logical()

StepData_Logical StepData_SelectType::Logical ( ) const

◆ Matches()

Standard_Boolean StepData_SelectType::Matches ( const Handle< Standard_Transient > &  ent) const

Returns True if the Type of an Entity complies with the definition list of the SelectType. Also checks for a SelectMember Default Implementation looks for CaseNum or CaseMem positive.

◆ Member()

Handle< StepData_SelectMember > StepData_SelectType::Member ( ) const

Returns Value as a SelectMember. Null if not a SelectMember.

◆ NewMember()

virtual Handle< StepData_SelectMember > StepData_SelectType::NewMember ( ) const
virtual

Returns a preferred SelectMember. Default returns a Null By default, a SelectMember can be set according to data type and Name : it is a SelectNamed if Name is defined.

This method allows to define, for a specific SelectType, a specific SelectMember than SelectNamed. For instance for a Real plus a Name, a SelectReal plus a case number is a good solution, lighter than SelectNamed which is very multipurpose

Reimplemented in StepBasic_SizeSelect, StepBasic_SourceItem, StepElement_CurveElementFreedom, StepElement_CurveElementPurpose, StepElement_ElementAspect, StepElement_MeasureOrUnspecifiedValue, StepElement_SurfaceElementPurpose, StepElement_VolumeElementPurpose, StepFEA_DegreeOfFreedom, StepFEA_SymmetricTensor23d, StepFEA_SymmetricTensor43d, StepGeom_TrimmingSelect, and StepVisual_MarkerSelect.

◆ Nullify()

void StepData_SelectType::Nullify ( )

Nullifies the Stored Entity.

◆ Real()

Standard_Real StepData_SelectType::Real ( ) const

◆ SelectName()

Standard_CString StepData_SelectType::SelectName ( ) const

Returns the type name of SelectMember. If no SelectMember or with no type name, returns an empty string To change it, pass through the SelectMember itself.

◆ SetBoolean()

void StepData_SelectType::SetBoolean ( const Standard_Boolean  val,
const Standard_CString  name = "" 
)

◆ SetInt()

void StepData_SelectType::SetInt ( const Standard_Integer  val)

This internal method gives access to a value implemented by an Integer (to set it) : a SelectMember MUST ALREADY BE THERE !

◆ SetInteger()

void StepData_SelectType::SetInteger ( const Standard_Integer  val,
const Standard_CString  name = "" 
)

Sets a new Integer value, with an optional type name Warning : If a SelectMember is already set, works on it : value and name must then be accepted by this SelectMember.

◆ SetLogical()

void StepData_SelectType::SetLogical ( const StepData_Logical  val,
const Standard_CString  name = "" 
)

◆ SetReal()

void StepData_SelectType::SetReal ( const Standard_Real  val,
const Standard_CString  name = "" 
)

◆ SetValue()

void StepData_SelectType::SetValue ( const Handle< Standard_Transient > &  ent)

Stores an Entity. This allows to define a specific SelectType class with one read method per member Type, which returns the Value casted with the good Type.

◆ Type()

Handle< Standard_Type > StepData_SelectType::Type ( ) const

Returns the Effective (Dynamic) Type of the Stored Entity If it is Null, returns TYPE(Transient)

◆ Value()

const Handle< Standard_Transient > & StepData_SelectType::Value ( ) const

Returns the Stored Entity. Can be used to define specific read methods (see above)


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