Open CASCADE Technology  6.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions
StepData_PDescr Class Reference

This class is intended to describe the authorized form for a
parameter, as a type or a value for a field

A PDescr firstly describes a type, which can be SELECT, i.e.
have several members
More...

#include <StepData_PDescr.hxx>

Inheritance diagram for StepData_PDescr:
Inheritance graph
[legend]

Public Member Functions

 StepData_PDescr ()
 
void SetName (const Standard_CString name)
 
Standard_CString Name () const
 
void SetSelect ()
 Declares this PDescr to be a Select, hence to have members
<me> itself can be the first member
More...
 
void AddMember (const Handle< StepData_PDescr > &member)
 Adds a member to a SELECT description
More...
 
void SetMemberName (const Standard_CString memname)
 Sets a name for SELECT member. To be used if a member is for
an immediate type
More...
 
void SetInteger ()
 Sets <me> for an Integer value
More...
 
void SetReal ()
 Sets <me> for a Real value
More...
 
void SetString ()
 Sets <me> for a String value
More...
 
void SetBoolean ()
 Sets <me> for a Boolean value (false,true)
More...
 
void SetLogical ()
 Sets <me> for a Logical value (false,true,unknown)
More...
 
void SetEnum ()
 Sets <me> for an Enum value
Then, call AddEnumDef ordered from the first one (value 0)
More...
 
void AddEnumDef (const Standard_CString enumdef)
 Adds an enum value as a string
More...
 
void SetType (const Handle< Standard_Type > &atype)
 Sets <me> for an Entity which must match a Type (early-bound)
More...
 
void SetDescr (const Standard_CString dscnam)
 Sets <me> for a Described Entity, whose Description must match
the type name <dscnam>
More...
 
void AddArity (const Standard_Integer arity=1)
 Adds an arity count to <me>, by default 1
1 : a simple field passes to a LIST/ARRAY etc
or a LIST to a LIST OF LIST
2 : a simple field passes to a LIST OF LIST
More...
 
void SetArity (const Standard_Integer arity=1)
 Directly sets the arity count
0 : simple field
1 : LIST or ARRAY etc
2 : LIST OF LIST
More...
 
void SetFrom (const Handle< StepData_PDescr > &other)
 Sets <me> as <other> but duplicated
Hence, some definition may be changed
More...
 
void SetOptional (const Standard_Boolean opt=Standard_True)
 Sets/Unsets <me> to accept undefined values
More...
 
void SetDerived (const Standard_Boolean der=Standard_True)
 Sets/Unsets <me> to be for a derived field
More...
 
void SetField (const Standard_CString name, const Standard_Integer rank)
 Sets <me> to describe a field of an entity
With a name and a rank
More...
 
Standard_Boolean IsSelect () const
 Tells if <me> is for a SELECT
More...
 
Handle_StepData_PDescr Member (const Standard_CString name) const
 
 For a SELECT, returns the member whose name matches <name> <br>
      To this member, the following question can then be asked <br>
      Null Handle if <name> not matched or <me> not a SELECT <br>


Remark : not to be asked for an entity type
Hence, following IsInteger .. Enum* only apply on <me> and
require Member
While IsType applies on <me> and all Select Members
More...

 
Standard_Boolean IsInteger () const
 Tells if <me> is for an Integer
More...
 
Standard_Boolean IsReal () const
 Tells if <me> is for a Real value
More...
 
Standard_Boolean IsString () const
 Tells if <me> is for a String value
More...
 
Standard_Boolean IsBoolean () const
 Tells if <me> is for a Boolean value (false,true)
More...
 
Standard_Boolean IsLogical () const
 Tells if <me> is for a Logical value (false,true,unknown)
More...
 
Standard_Boolean IsEnum () const
 Tells if <me> is for an Enum value
Then, call AddEnumDef ordered from the first one (value 0)
Managed by an EnumTool
More...
 
Standard_Integer EnumMax () const
 Returns the maximum integer for a suitable value (count - 1)
More...
 
Standard_Integer EnumValue (const Standard_CString name) const
 Returns the numeric value found for an enum text
The text must be in capitals and limited by dots
A non-suitable text gives a negative value to be returned
More...
 
Standard_CString EnumText (const Standard_Integer val) const
 Returns the text which corresponds to a numeric value,
between 0 and EnumMax. It is limited by dots
More...
 
Standard_Boolean IsEntity () const
 Tells if <me> is for an Entity, either Described or CDL Type
More...
 
Standard_Boolean IsType (const Handle< Standard_Type > &atype) const
 Tells if <me> is for an entity of a given CDL type (early-bnd)
(works for <me> + nexts if <me> is a Select)
More...
 
Handle_Standard_Type Type () const
 Returns the type to match (IsKind), for a CDL Entity
(else, null handle)
More...
 
Standard_Boolean IsDescr (const Handle< StepData_EDescr > &descr) const
 Tells if <me> is for a Described entity of a given EDescr
(does this EDescr match description name ?). For late-bnd
(works for <me> + nexts if <me> is a Select)
More...
 
Standard_CString DescrName () const
 Returns the description (type name) to match, for a Described
(else, empty string)
More...
 
Standard_Integer Arity () const
 Returns the arity of <me>
More...
 
Handle_StepData_PDescr Simple () const
 For a LIST or LIST OF LIST, Returns the PDescr for the simpler
PDescr. Else, returns <me>
This allows to have different attributes for Optional for
instance, on a field, and on the parameter of a LIST :
[OPTIONAL] LIST OF [OPTIONAL] ...
More...
 
Standard_Boolean IsOptional () const
 Tells if <me> is Optional
More...
 
Standard_Boolean IsDerived () const
 Tells if <me> is Derived
More...
 
Standard_Boolean IsField () const
 Tells if <me> is a Field. Else it is a Type
More...
 
Standard_CString FieldName () const
 
Standard_Integer FieldRank () const
 
virtual void Check (const StepData_Field &afild, Handle< Interface_Check > &ach) const
 Semantic Check of a Field : does it complies with the given
description ?
More...
 
- Public Member Functions inherited from MMgt_TShared
virtual void Delete () const
 Memory deallocator for transient classes. More...
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor. More...
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing. More...
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter. More...
 
virtual ~Standard_Transient ()
 Destructor must be virtual. More...
 
virtual void ShallowDump (Standard_OStream &) const
 
virtual const
Handle_Standard_Type & 
DynamicType () const
 Returns a type information object about this object. More...
 
Standard_Boolean IsInstance (const Handle_Standard_Type &theType) const
 Returns a true value if this is an instance of Type. More...
 
Standard_Boolean IsInstance (const Standard_CString theTypeName) const
 Returns a true value if this is an instance of TypeName. More...
 
Standard_Boolean IsKind (const Handle_Standard_Type &theType) const
 Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
 
Standard_Boolean IsKind (const Standard_CString theTypeName) const
 Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
 
virtual Handle_Standard_Transient This () const
 Returns a Handle which references this object. Must never be called to objects created in stack. More...
 
Standard_Integer GetRefCount () const
 Get the reference counter of this object. More...
 

Detailed Description

This class is intended to describe the authorized form for a
parameter, as a type or a value for a field

A PDescr firstly describes a type, which can be SELECT, i.e.
have several members

Constructor & Destructor Documentation

StepData_PDescr::StepData_PDescr ( )

Member Function Documentation

void StepData_PDescr::AddArity ( const Standard_Integer  arity = 1)

Adds an arity count to <me>, by default 1
1 : a simple field passes to a LIST/ARRAY etc
or a LIST to a LIST OF LIST
2 : a simple field passes to a LIST OF LIST

void StepData_PDescr::AddEnumDef ( const Standard_CString  enumdef)

Adds an enum value as a string

void StepData_PDescr::AddMember ( const Handle< StepData_PDescr > &  member)

Adds a member to a SELECT description

Standard_Integer StepData_PDescr::Arity ( ) const

Returns the arity of <me>

virtual void StepData_PDescr::Check ( const StepData_Field afild,
Handle< Interface_Check > &  ach 
) const
virtual

Semantic Check of a Field : does it complies with the given
description ?

Standard_CString StepData_PDescr::DescrName ( ) const

Returns the description (type name) to match, for a Described
(else, empty string)

Standard_Integer StepData_PDescr::EnumMax ( ) const

Returns the maximum integer for a suitable value (count - 1)

Standard_CString StepData_PDescr::EnumText ( const Standard_Integer  val) const

Returns the text which corresponds to a numeric value,
between 0 and EnumMax. It is limited by dots

Standard_Integer StepData_PDescr::EnumValue ( const Standard_CString  name) const

Returns the numeric value found for an enum text
The text must be in capitals and limited by dots
A non-suitable text gives a negative value to be returned

Standard_CString StepData_PDescr::FieldName ( ) const
Standard_Integer StepData_PDescr::FieldRank ( ) const
Standard_Boolean StepData_PDescr::IsBoolean ( ) const

Tells if <me> is for a Boolean value (false,true)

Standard_Boolean StepData_PDescr::IsDerived ( ) const

Tells if <me> is Derived

Standard_Boolean StepData_PDescr::IsDescr ( const Handle< StepData_EDescr > &  descr) const

Tells if <me> is for a Described entity of a given EDescr
(does this EDescr match description name ?). For late-bnd
(works for <me> + nexts if <me> is a Select)

Standard_Boolean StepData_PDescr::IsEntity ( ) const

Tells if <me> is for an Entity, either Described or CDL Type

Standard_Boolean StepData_PDescr::IsEnum ( ) const

Tells if <me> is for an Enum value
Then, call AddEnumDef ordered from the first one (value 0)
Managed by an EnumTool

Standard_Boolean StepData_PDescr::IsField ( ) const

Tells if <me> is a Field. Else it is a Type

Standard_Boolean StepData_PDescr::IsInteger ( ) const

Tells if <me> is for an Integer

Standard_Boolean StepData_PDescr::IsLogical ( ) const

Tells if <me> is for a Logical value (false,true,unknown)

Standard_Boolean StepData_PDescr::IsOptional ( ) const

Tells if <me> is Optional

Standard_Boolean StepData_PDescr::IsReal ( ) const

Tells if <me> is for a Real value

Standard_Boolean StepData_PDescr::IsSelect ( ) const

Tells if <me> is for a SELECT

Standard_Boolean StepData_PDescr::IsString ( ) const

Tells if <me> is for a String value

Standard_Boolean StepData_PDescr::IsType ( const Handle< Standard_Type > &  atype) const

Tells if <me> is for an entity of a given CDL type (early-bnd)
(works for <me> + nexts if <me> is a Select)

Handle_StepData_PDescr StepData_PDescr::Member ( const Standard_CString  name) const

 For a SELECT, returns the member whose name matches <name> <br>
      To this member, the following question can then be asked <br>
      Null Handle if <name> not matched or <me> not a SELECT <br>


Remark : not to be asked for an entity type
Hence, following IsInteger .. Enum* only apply on <me> and
require Member
While IsType applies on <me> and all Select Members

Standard_CString StepData_PDescr::Name ( ) const
void StepData_PDescr::SetArity ( const Standard_Integer  arity = 1)

Directly sets the arity count
0 : simple field
1 : LIST or ARRAY etc
2 : LIST OF LIST

void StepData_PDescr::SetBoolean ( )

Sets <me> for a Boolean value (false,true)

void StepData_PDescr::SetDerived ( const Standard_Boolean  der = Standard_True)

Sets/Unsets <me> to be for a derived field

void StepData_PDescr::SetDescr ( const Standard_CString  dscnam)

Sets <me> for a Described Entity, whose Description must match
the type name <dscnam>

void StepData_PDescr::SetEnum ( )

Sets <me> for an Enum value
Then, call AddEnumDef ordered from the first one (value 0)

void StepData_PDescr::SetField ( const Standard_CString  name,
const Standard_Integer  rank 
)

Sets <me> to describe a field of an entity
With a name and a rank

void StepData_PDescr::SetFrom ( const Handle< StepData_PDescr > &  other)

Sets <me> as <other> but duplicated
Hence, some definition may be changed

void StepData_PDescr::SetInteger ( )

Sets <me> for an Integer value

void StepData_PDescr::SetLogical ( )

Sets <me> for a Logical value (false,true,unknown)

void StepData_PDescr::SetMemberName ( const Standard_CString  memname)

Sets a name for SELECT member. To be used if a member is for
an immediate type

void StepData_PDescr::SetName ( const Standard_CString  name)
void StepData_PDescr::SetOptional ( const Standard_Boolean  opt = Standard_True)

Sets/Unsets <me> to accept undefined values

void StepData_PDescr::SetReal ( )

Sets <me> for a Real value

void StepData_PDescr::SetSelect ( )

Declares this PDescr to be a Select, hence to have members
<me> itself can be the first member

void StepData_PDescr::SetString ( )

Sets <me> for a String value

void StepData_PDescr::SetType ( const Handle< Standard_Type > &  atype)

Sets <me> for an Entity which must match a Type (early-bound)

Handle_StepData_PDescr StepData_PDescr::Simple ( ) const

For a LIST or LIST OF LIST, Returns the PDescr for the simpler
PDescr. Else, returns <me>
This allows to have different attributes for Optional for
instance, on a field, and on the parameter of a LIST :
[OPTIONAL] LIST OF [OPTIONAL] ...

Handle_Standard_Type StepData_PDescr::Type ( ) const

Returns the type to match (IsKind), for a CDL Entity
(else, null handle)


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