OCCT3D OCCT 8.0.1
OCCT documentation

Search guides and API reference

Enter at least two characters.

    Open CASCADE Technology Reference Manual 8.0.1
    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:

    Public Member Functions

     StepData_Protocol ()
    int NbResources () const override
     Gives the count of Protocols used as Resource (can be zero) Here, No resource.
    occ::handle< Interface_ProtocolResource (const int numnum) const override
     Returns a Resource, given a rank. Here, none.
    int CaseNumber (const occ::handle< Standard_Transient > &objobj) 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.
    int TypeNumber (const occ::handle< Standard_Type > &atype) const override
     Returns a Case Number, specific of each recognized Type Here, only Unknown Entity is recognized.
    virtual const char * SchemaName (const occ::handle< Interface_InterfaceModel > &theModel) 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.
    occ::handle< Interface_InterfaceModelNewModel () const override
     Creates an empty Model for Step Norm.
    bool IsSuitableModel (const occ::handle< Interface_InterfaceModel > &model) const override
     Returns True if <model> is a Model of Step Norm.
    occ::handle< Standard_TransientUnknownEntity () const override
     Creates a new Unknown Entity for Step (UndefinedEntity).
    bool IsUnknownEntity (const occ::handle< Standard_Transient > &ent) const override
     Returns True if <ent> is an Unknown Entity for the Norm, i.e. Type UndefinedEntity, status Unknown.
    virtual int DescrNumber (const occ::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 occ::handle< StepData_EDescr > &adescr, const int 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.
    bool HasDescr () const
     Tells if a Protocol brings at least one ESDescr, i.e. if it defines at least one entity description by ESDescr mechanism.
    occ::handle< StepData_EDescrDescr (const int numnum) const
     Returns the description attached to a case number, or null.
    occ::handle< StepData_EDescrDescr (const char *const namename, const bool anylevel=true) const
     Returns a description according to its name <anylevel> True (D) : for <me> and its resources <anylevel> False : for <me> only.
    occ::handle< StepData_ESDescrESDescr (const char *const namename, const bool anylevel=true) const
     Idem as Descr but cast to simple description.
    occ::handle< StepData_ECDescrECDescr (const NCollection_Sequence< TCollection_AsciiString > &namesnames, const bool anylevel=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 occ::handle< StepData_PDescr > &pdescr)
     Records an PDescr.
    occ::handle< StepData_PDescrPDescr (const char *const namename, const bool anylevel=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 occ::handle< StepData_ESDescr > &esdescr)
     Records an ESDescr, intended to build complex descriptions.
    occ::handle< StepData_EDescrBasicDescr (const char *const namename, const bool anylevel=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 bool IsDynamicType (const occ::handle< Standard_Transient > &objobj) const
     Returns True if type of <obj> is that defined from CDL This is the default but it may change according implementation.
    virtual int NbTypes (const occ::handle< Standard_Transient > &objobj) 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).
    occ::handle< Standard_TypeType (const occ::handle< Standard_Transient > &objobj, const int 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 bool GlobalCheck (const Interface_Graph &G, occ::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 ()=default
     Destructor must be virtual.
    virtual const opencascade::handle< Standard_Type > & DynamicType () const
     Returns a type descriptor about this object.
    bool IsInstance (const opencascade::handle< Standard_Type > &theType) const
     Returns a true value if this is an instance of Type.
    bool IsInstance (const char *const theTypeName) const
     Returns a true value if this is an instance of TypeName.
    bool 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.
    bool IsKind (const char *const 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.
    int GetRefCount () const noexcept
     Get the reference counter of this object.
    void IncrementRefCounter () noexcept
     Increments the reference counter of this object. Uses relaxed memory ordering since incrementing only requires atomicity, not synchronization with other memory operations.
    int DecrementRefCounter () noexcept
     Decrements the reference counter of this object; returns the decremented value. Uses release ordering for the decrement to ensure all writes to the object are visible before the count reaches zero. An acquire fence is added only when the count reaches zero, ensuring proper synchronization before deletion. This is more efficient than using acq_rel for every decrement.
    virtual void Delete () const
     Memory deallocator for transient classes.

    Additional Inherited Members

    typedef void base_type
     Returns a type descriptor about this object.
    Static Public Member Functions inherited from Interface_Protocol
    static occ::handle< Interface_ProtocolActive ()
     Returns the Active Protocol, if defined (else, returns a Null Handle, which means "no defined active protocol").
    static void SetActive (const occ::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 constexpr const char * get_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 occ::handle< StepData_ESDescr > & esdescr)

    Records an ESDescr, intended to build complex descriptions.

    ◆ AddDescr()

    void StepData_Protocol::AddDescr ( const occ::handle< StepData_EDescr > & adescr,
    const int 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 occ::handle< StepData_PDescr > & pdescr)

    Records an PDescr.

    ◆ BasicDescr()

    occ::handle< StepData_EDescr > StepData_Protocol::BasicDescr ( const char *const name,
    const bool anylevel = true ) const

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

    ◆ CaseNumber()

    int StepData_Protocol::CaseNumber ( const occ::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]

    occ::handle< StepData_EDescr > StepData_Protocol::Descr ( const char *const name,
    const bool anylevel = 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]

    occ::handle< StepData_EDescr > StepData_Protocol::Descr ( const int num) const

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

    ◆ DescrNumber()

    virtual int StepData_Protocol::DescrNumber ( const occ::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()

    occ::handle< StepData_ECDescr > StepData_Protocol::ECDescr ( const NCollection_Sequence< TCollection_AsciiString > & names,
    const bool anylevel = 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()

    occ::handle< StepData_ESDescr > StepData_Protocol::ESDescr ( const char *const name,
    const bool anylevel = true ) const

    Idem as Descr but cast to simple description.

    ◆ HasDescr()

    bool 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()

    bool StepData_Protocol::IsSuitableModel ( const occ::handle< Interface_InterfaceModel > & model) const
    overridevirtual

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

    Implements Interface_Protocol.

    ◆ IsUnknownEntity()

    bool StepData_Protocol::IsUnknownEntity ( const occ::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()

    int StepData_Protocol::NbResources ( ) const
    overridevirtual

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

    Implements Interface_Protocol.

    ◆ NewModel()

    occ::handle< Interface_InterfaceModel > StepData_Protocol::NewModel ( ) const
    overridevirtual

    Creates an empty Model for Step Norm.

    Implements Interface_Protocol.

    ◆ PDescr()

    occ::handle< StepData_PDescr > StepData_Protocol::PDescr ( const char *const name,
    const bool anylevel = true ) const

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

    ◆ Resource()

    occ::handle< Interface_Protocol > StepData_Protocol::Resource ( const int num) const
    overridevirtual

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

    Implements Interface_Protocol.

    ◆ SchemaName()

    virtual const char * StepData_Protocol::SchemaName ( const occ::handle< Interface_InterfaceModel > & theModel) 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()

    int StepData_Protocol::TypeNumber ( const occ::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()

    occ::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: