Open CASCADE Technology 7.8.0
Public Member Functions
StepData_Protocol Class Reference

Description of Basic Protocol for Step The class Protocol from StepData itself describes a default Protocol, which recognizes only UnknownEntities. Sub-classes will redefine CaseNumber and, if necessary, NbResources and Resources. More...

#include <StepData_Protocol.hxx>

Inheritance diagram for StepData_Protocol:
Inheritance graph
[legend]

Public Member Functions

 StepData_Protocol ()
 
Standard_Integer NbResources () const override
 Gives the count of Protocols used as Resource (can be zero) Here, No resource.
 
Handle< Interface_ProtocolResource (const Standard_Integer num) const override
 Returns a Resource, given a rank. Here, none.
 
virtual Standard_Integer CaseNumber (const Handle< Standard_Transient > &obj) const override
 Returns a unique positive number for any recognized entity Redefined to work by calling both TypeNumber and, for a Described Entity (late binding) DescrNumber.
 
Standard_Integer TypeNumber (const Handle< Standard_Type > &atype) const override
 Returns a Case Number, specific of each recognized Type Here, only Unknown Entity is recognized.
 
virtual Standard_CString SchemaName () const
 Returns the Schema Name attached to each class of Protocol To be redefined by each sub-class Here, SchemaName returns "(DEFAULT)" was C++ : return const.
 
Handle< Interface_InterfaceModelNewModel () const override
 Creates an empty Model for Step Norm.
 
Standard_Boolean IsSuitableModel (const Handle< Interface_InterfaceModel > &model) const override
 Returns True if <model> is a Model of Step Norm.
 
Handle< Standard_TransientUnknownEntity () const override
 Creates a new Unknown Entity for Step (UndefinedEntity)
 
Standard_Boolean IsUnknownEntity (const Handle< Standard_Transient > &ent) const override
 Returns True if <ent> is an Unknown Entity for the Norm, i.e. Type UndefinedEntity, status Unknown.
 
virtual Standard_Integer DescrNumber (const Handle< StepData_EDescr > &adescr) const
 Returns a unique positive CaseNumber for types described by an EDescr (late binding) Warning : TypeNumber and DescrNumber must give together a unique positive case number for each distinct case, type or descr.
 
void AddDescr (const Handle< StepData_EDescr > &adescr, const Standard_Integer CN)
 Records an EDescr with its case number Also records its name for an ESDescr (simple type): an ESDescr is then used, for case number, or for type name.
 
Standard_Boolean HasDescr () const
 Tells if a Protocol brings at least one ESDescr, i.e. if it defines at least one entity description by ESDescr mechanism.
 
Handle< StepData_EDescrDescr (const Standard_Integer num) const
 Returns the description attached to a case number, or null.
 
Handle< StepData_EDescrDescr (const Standard_CString name, const Standard_Boolean anylevel=Standard_True) const
 Returns a description according to its name <anylevel> True (D) : for <me> and its resources <anylevel> False : for <me> only.
 
Handle< StepData_ESDescrESDescr (const Standard_CString name, const Standard_Boolean anylevel=Standard_True) const
 Idem as Descr but cast to simple description.
 
Handle< StepData_ECDescrECDescr (const TColStd_SequenceOfAsciiString &names, const Standard_Boolean anylevel=Standard_True) const
 Returns a complex description according to list of names <anylevel> True (D) : for <me> and its resources <anylevel> False : for <me> only.
 
void AddPDescr (const Handle< StepData_PDescr > &pdescr)
 Records an PDescr.
 
Handle< StepData_PDescrPDescr (const Standard_CString name, const Standard_Boolean anylevel=Standard_True) const
 Returns a parameter description according to its name <anylevel> True (D) : for <me> and its resources <anylevel> False : for <me> only.
 
void AddBasicDescr (const Handle< StepData_ESDescr > &esdescr)
 Records an ESDescr, intended to build complex descriptions.
 
Handle< StepData_EDescrBasicDescr (const Standard_CString name, const Standard_Boolean anylevel=Standard_True) const
 Returns a basic description according to its name <anylevel> True (D) : for <me> and its resources <anylevel> False : for <me> only.
 
- Public Member Functions inherited from Interface_Protocol
virtual Standard_Boolean IsDynamicType (const Handle< Standard_Transient > &obj) const
 Returns True if type of <obj> is that defined from CDL This is the default but it may change according implementation.
 
virtual Standard_Integer NbTypes (const Handle< Standard_Transient > &obj) const
 Returns the count of DISTINCT types under which an entity may be processed. Each one is candidate to be recognized by TypeNumber, <obj> is then processed according it By default, returns 1 (the DynamicType)
 
Handle< Standard_TypeType (const Handle< Standard_Transient > &obj, const Standard_Integer nt=1) const
 Returns a type under which <obj> can be recognized and processed, according its rank in its definition list (see NbTypes). By default, returns DynamicType.
 
virtual Standard_Boolean GlobalCheck (const Interface_Graph &G, Handle< Interface_Check > &ach) const
 Evaluates a Global Check for a model (with its Graph) Returns True when done, False if data in model do not apply.
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor.
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing.
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter.
 
virtual ~Standard_Transient ()
 Destructor must be virtual.
 
virtual const opencascade::handle< Standard_Type > & DynamicType () const
 Returns a type descriptor about this object.
 
Standard_Boolean IsInstance (const opencascade::handle< Standard_Type > &theType) const
 Returns a true value if this is an instance of Type.
 
Standard_Boolean IsInstance (const Standard_CString theTypeName) const
 Returns a true value if this is an instance of TypeName.
 
Standard_Boolean IsKind (const opencascade::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.
 
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.
 
Standard_TransientThis () const
 Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero.
 
Standard_Integer GetRefCount () const noexcept
 Get the reference counter of this object.
 
void IncrementRefCounter () noexcept
 Increments the reference counter of this object.
 
Standard_Integer DecrementRefCounter () noexcept
 Decrements the reference counter of this object; returns the decremented value.
 
virtual void Delete () const
 Memory deallocator for transient classes.
 

Additional Inherited Members

- Public Types inherited from Standard_Transient
typedef void base_type
 Returns a type descriptor about this object.
 
- Static Public Member Functions inherited from Interface_Protocol
static Handle< Interface_ProtocolActive ()
 Returns the Active Protocol, if defined (else, returns a Null Handle, which means "no defined active protocol")
 
static void SetActive (const Handle< Interface_Protocol > &aprotocol)
 Sets a given Protocol to be the Active one (for the users of Active, see just above). Applies to every sub-type of Protocol.
 
static void ClearActive ()
 Erases the Active Protocol (hence it becomes undefined)
 
- Static Public Member Functions inherited from Standard_Transient
static constexpr const charget_type_name ()
 Returns a type descriptor about this object.
 
static const opencascade::handle< Standard_Type > & get_type_descriptor ()
 Returns type descriptor of Standard_Transient class.
 

Detailed Description

Description of Basic Protocol for Step The class Protocol from StepData itself describes a default Protocol, which recognizes only UnknownEntities. Sub-classes will redefine CaseNumber and, if necessary, NbResources and Resources.

Constructor & Destructor Documentation

◆ StepData_Protocol()

StepData_Protocol::StepData_Protocol ( )

Member Function Documentation

◆ AddBasicDescr()

void StepData_Protocol::AddBasicDescr ( const Handle< StepData_ESDescr > &  esdescr)

Records an ESDescr, intended to build complex descriptions.

◆ AddDescr()

void StepData_Protocol::AddDescr ( const Handle< StepData_EDescr > &  adescr,
const Standard_Integer  CN 
)

Records an EDescr with its case number Also records its name for an ESDescr (simple type): an ESDescr is then used, for case number, or for type name.

◆ AddPDescr()

void StepData_Protocol::AddPDescr ( const Handle< StepData_PDescr > &  pdescr)

Records an PDescr.

◆ BasicDescr()

Handle< StepData_EDescr > StepData_Protocol::BasicDescr ( const Standard_CString  name,
const Standard_Boolean  anylevel = Standard_True 
) const

Returns a basic description according to its name <anylevel> True (D) : for <me> and its resources <anylevel> False : for <me> only.

◆ CaseNumber()

virtual Standard_Integer StepData_Protocol::CaseNumber ( const Handle< Standard_Transient > &  obj) const
overridevirtual

Returns a unique positive number for any recognized entity Redefined to work by calling both TypeNumber and, for a Described Entity (late binding) DescrNumber.

Reimplemented from Interface_Protocol.

◆ Descr() [1/2]

Handle< StepData_EDescr > StepData_Protocol::Descr ( const Standard_CString  name,
const Standard_Boolean  anylevel = Standard_True 
) const

Returns a description according to its name <anylevel> True (D) : for <me> and its resources <anylevel> False : for <me> only.

◆ Descr() [2/2]

Handle< StepData_EDescr > StepData_Protocol::Descr ( const Standard_Integer  num) const

Returns the description attached to a case number, or null.

◆ DescrNumber()

virtual Standard_Integer StepData_Protocol::DescrNumber ( const Handle< StepData_EDescr > &  adescr) const
virtual

Returns a unique positive CaseNumber for types described by an EDescr (late binding) Warning : TypeNumber and DescrNumber must give together a unique positive case number for each distinct case, type or descr.

◆ ECDescr()

Handle< StepData_ECDescr > StepData_Protocol::ECDescr ( const TColStd_SequenceOfAsciiString names,
const Standard_Boolean  anylevel = Standard_True 
) const

Returns a complex description according to list of names <anylevel> True (D) : for <me> and its resources <anylevel> False : for <me> only.

◆ ESDescr()

Handle< StepData_ESDescr > StepData_Protocol::ESDescr ( const Standard_CString  name,
const Standard_Boolean  anylevel = Standard_True 
) const

Idem as Descr but cast to simple description.

◆ HasDescr()

Standard_Boolean StepData_Protocol::HasDescr ( ) const

Tells if a Protocol brings at least one ESDescr, i.e. if it defines at least one entity description by ESDescr mechanism.

◆ IsSuitableModel()

Standard_Boolean StepData_Protocol::IsSuitableModel ( const Handle< Interface_InterfaceModel > &  model) const
overridevirtual

Returns True if <model> is a Model of Step Norm.

Implements Interface_Protocol.

◆ IsUnknownEntity()

Standard_Boolean StepData_Protocol::IsUnknownEntity ( const Handle< Standard_Transient > &  ent) const
overridevirtual

Returns True if <ent> is an Unknown Entity for the Norm, i.e. Type UndefinedEntity, status Unknown.

Implements Interface_Protocol.

◆ NbResources()

Standard_Integer StepData_Protocol::NbResources ( ) const
overridevirtual

Gives the count of Protocols used as Resource (can be zero) Here, No resource.

Implements Interface_Protocol.

◆ NewModel()

Handle< Interface_InterfaceModel > StepData_Protocol::NewModel ( ) const
overridevirtual

Creates an empty Model for Step Norm.

Implements Interface_Protocol.

◆ PDescr()

Handle< StepData_PDescr > StepData_Protocol::PDescr ( const Standard_CString  name,
const Standard_Boolean  anylevel = Standard_True 
) const

Returns a parameter description according to its name <anylevel> True (D) : for <me> and its resources <anylevel> False : for <me> only.

◆ Resource()

Handle< Interface_Protocol > StepData_Protocol::Resource ( const Standard_Integer  num) const
overridevirtual

Returns a Resource, given a rank. Here, none.

Implements Interface_Protocol.

◆ SchemaName()

virtual Standard_CString StepData_Protocol::SchemaName ( ) const
virtual

Returns the Schema Name attached to each class of Protocol To be redefined by each sub-class Here, SchemaName returns "(DEFAULT)" was C++ : return const.

Reimplemented in HeaderSection_Protocol, StepAP214_Protocol, and StepData_FileProtocol.

◆ TypeNumber()

Standard_Integer StepData_Protocol::TypeNumber ( const Handle< Standard_Type > &  atype) const
overridevirtual

Returns a Case Number, specific of each recognized Type Here, only Unknown Entity is recognized.

Implements Interface_Protocol.

◆ UnknownEntity()

Handle< Standard_Transient > StepData_Protocol::UnknownEntity ( ) const
overridevirtual

Creates a new Unknown Entity for Step (UndefinedEntity)

Implements Interface_Protocol.


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