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
    Interface_FileReaderData Class Referenceabstract

    This class defines services which permit to access Data issued from a File, in a form which does not depend of physical format : thus, each Record has an attached ParamList (to be managed) and resulting Entity. More...

    #include <Interface_FileReaderData.hxx>

    Inheritance diagram for Interface_FileReaderData:

    Public Member Functions

    virtual int NbRecords () const
     Returns the count of registered records That is, value given for Initialization (can be redefined).
    virtual int NbEntities () const
     Returns the count of entities. Depending of each norm, records can be Entities or SubParts (SubList in STEP, SubGroup in SET ...). NbEntities counts only Entities, not Subs Used for memory reservation in InterfaceModel Default implementation uses FindNextRecord Can be redefined into a more performant way.
    virtual int FindNextRecord (const int numnum) const =0
     Determines the record number defining an Entity following a given record number. Specific to each sub-class of FileReaderData. Returning zero means no record found.
    void InitParams (const int numnum)
     attaches an empty ParamList to a Record
    void AddParam (const int numnum, const char *const aval, const Interface_ParamType atype, const int nument=0)
     Adds a parameter to record no "num" and fills its fields (EntityNumber is optional) Warning : <aval> is assumed to be memory-managed elsewhere : it is NOT copied. This gives a best speed : strings remain stored in pages of characters.
    void AddParam (const int numnum, const TCollection_AsciiString &aval, const Interface_ParamType atype, const int nument=0)
     Same as above, but gets a AsciiString from TCollection Remark that the content of the AsciiString is locally copied (because its content is most often lost after using).
    void AddParam (const int numnum, const Interface_FileParameter &FP)
     Same as above, but gets a complete FileParameter Warning : Content of <FP> is NOT copied : its original address and space in memory are assumed to be managed elsewhere (see ParamSet).
    void SetParam (const int numnum, const int nump, const Interface_FileParameter &FP)
     Sets a new value for a parameter of a record, given by : num : record number; nump : parameter number in the record.
    int NbParams (const int numnum) const
     Returns count of parameters attached to record "num" If <num> = 0, returns the total recorded count of parameters.
    occ::handle< Interface_ParamListParams (const int numnum) const
     Returns the complete ParamList of a record (read only) num = 0 to return the whole param list for the file.
    const Interface_FileParameterParam (const int numnum, const int nump) const
     Returns parameter "nump" of record "num", as a complete FileParameter.
    Interface_FileParameterChangeParam (const int numnum, const int nump)
     Same as above, but in order to be modified on place.
    Interface_ParamType ParamType (const int numnum, const int nump) const
     Returns type of parameter "nump" of record "num" Returns literal value of parameter "nump" of record "num" was C++ : return const &.
    const char * ParamCValue (const int numnum, const int nump) const
     Same as above, but as a CString was C++ : return const.
    bool IsParamDefined (const int numnum, const int nump) const
     Returns True if parameter "nump" of record "num" is defined (it is not if its type is ParamVoid).
    int ParamNumber (const int numnum, const int nump) const
     Returns record number of an entity referenced by a parameter of type Ident; 0 if no EntityNumber has been determined Note that it is used to reference Entities but also Sublists (sublists are not objects, but internal descriptions).
    const occ::handle< Standard_Transient > & ParamEntity (const int numnum, const int nump) const
     Returns the StepEntity referenced by a parameter Error if none.
    int ParamFirstRank (const int numnum) const
     Returns the absolute rank of the beginning of a record (its list is from ParamFirstRank+1 to ParamFirstRank+NbParams).
    const occ::handle< Standard_Transient > & BoundEntity (const int numnum) const
     Returns the entity bound to a record, set by SetEntities.
    void BindEntity (const int numnum, const occ::handle< Standard_Transient > &ent)
     Binds an entity to a record.
    void SetErrorLoad (const bool valval)
     Sets the status "Error Load" on, to overside check fails <val> True : declares unloaded <val> False : declares loaded If not called before loading (see FileReaderTool), check fails give the status IsErrorLoad says if SetErrorLoad has been called by user ResetErrorLoad resets it (called by FileReaderTool) This allows to specify that the currently loaded entity remains unloaded (because of syntactic fail).
    bool IsErrorLoad () const
     Returns True if the status "Error Load" has been set (to True or False).
    bool ResetErrorLoad ()
     Returns the former value of status "Error Load" then resets it Used to read the status then ensure it is reset.
    void Destroy ()
     Destructor (waiting for memory management).
     ~Interface_FileReaderData () override
    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.

    Static Public Member Functions

    static double Fastof (const char *const str)
     Same spec.s as standard <atof> but 5 times faster.
    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.

    Protected Member Functions

     Interface_FileReaderData (const int nbr, const int npar)
     Initializes arrays of Entities and of ParamLists attached to registered records <nbr> must be the maximum number of records to get (no way to extend it at run-time) : count entities and sub-entities ... <npar> is the total count of parameters (if it is not exact, it will be extended as necessary).
    Interface_FileParameterChangeParameter (const int numpar)
     Returns a parameter given its absolute rank in the file in order to be consulted or modified in specilaized actions.
    void ParamPosition (const int numpar, int &numnum, int &nump) const
     For a given absolute rank of parameter, determines the record to which its belongs, and the parameter number for it.

    Additional Inherited Members

    typedef void base_type
     Returns a type descriptor about this object.

    Detailed Description

    This class defines services which permit to access Data issued from a File, in a form which does not depend of physical format : thus, each Record has an attached ParamList (to be managed) and resulting Entity.

    Each Interface defines its own FileReaderData : on one hand by defining deferred methods given here, on the other hand by describing literal data and their accesses, with the help of basic classes such as String, Array1OfString, etc...

    FileReaderData is used by a FileReaderTool, which is also specific of each Norm, to read an InterfaceModel of the Norm FileReaderData inherits TShared to be accessed by Handle : this allows FileReaderTool to define more easily the specific methods, and improves memory management.

    Constructor & Destructor Documentation

    ◆ ~Interface_FileReaderData()

    Interface_FileReaderData::~Interface_FileReaderData ( )
    inlineoverride

    ◆ Interface_FileReaderData()

    Interface_FileReaderData::Interface_FileReaderData ( const int nbr,
    const int npar )
    protected

    Initializes arrays of Entities and of ParamLists attached to registered records <nbr> must be the maximum number of records to get (no way to extend it at run-time) : count entities and sub-entities ... <npar> is the total count of parameters (if it is not exact, it will be extended as necessary).

    Hence, to each record can be bound an Entity and a list of Parameters. Each kind of FileReaderData can add other data, by having them in parallel (other arrays with same sizes) Else, it must manage binding between items and their data

    Member Function Documentation

    ◆ AddParam() [1/3]

    void Interface_FileReaderData::AddParam ( const int num,
    const char *const aval,
    const Interface_ParamType atype,
    const int nument = 0 )

    Adds a parameter to record no "num" and fills its fields (EntityNumber is optional) Warning : <aval> is assumed to be memory-managed elsewhere : it is NOT copied. This gives a best speed : strings remain stored in pages of characters.

    ◆ AddParam() [2/3]

    void Interface_FileReaderData::AddParam ( const int num,
    const Interface_FileParameter & FP )

    Same as above, but gets a complete FileParameter Warning : Content of <FP> is NOT copied : its original address and space in memory are assumed to be managed elsewhere (see ParamSet).

    ◆ AddParam() [3/3]

    void Interface_FileReaderData::AddParam ( const int num,
    const TCollection_AsciiString & aval,
    const Interface_ParamType atype,
    const int nument = 0 )

    Same as above, but gets a AsciiString from TCollection Remark that the content of the AsciiString is locally copied (because its content is most often lost after using).

    ◆ BindEntity()

    void Interface_FileReaderData::BindEntity ( const int num,
    const occ::handle< Standard_Transient > & ent )

    Binds an entity to a record.

    ◆ BoundEntity()

    const occ::handle< Standard_Transient > & Interface_FileReaderData::BoundEntity ( const int num) const

    Returns the entity bound to a record, set by SetEntities.

    ◆ ChangeParam()

    Interface_FileParameter & Interface_FileReaderData::ChangeParam ( const int num,
    const int nump )

    Same as above, but in order to be modified on place.

    ◆ ChangeParameter()

    Interface_FileParameter & Interface_FileReaderData::ChangeParameter ( const int numpar)
    protected

    Returns a parameter given its absolute rank in the file in order to be consulted or modified in specilaized actions.

    ◆ Destroy()

    void Interface_FileReaderData::Destroy ( )

    Destructor (waiting for memory management).

    ◆ Fastof()

    double Interface_FileReaderData::Fastof ( const char *const str)
    static

    Same spec.s as standard <atof> but 5 times faster.

    ◆ FindNextRecord()

    virtual int Interface_FileReaderData::FindNextRecord ( const int num) const
    pure virtual

    Determines the record number defining an Entity following a given record number. Specific to each sub-class of FileReaderData. Returning zero means no record found.

    Implemented in IGESData_IGESReaderData, and StepData_StepReaderData.

    ◆ InitParams()

    void Interface_FileReaderData::InitParams ( const int num)

    attaches an empty ParamList to a Record

    ◆ IsErrorLoad()

    bool Interface_FileReaderData::IsErrorLoad ( ) const

    Returns True if the status "Error Load" has been set (to True or False).

    ◆ IsParamDefined()

    bool Interface_FileReaderData::IsParamDefined ( const int num,
    const int nump ) const

    Returns True if parameter "nump" of record "num" is defined (it is not if its type is ParamVoid).

    ◆ NbEntities()

    virtual int Interface_FileReaderData::NbEntities ( ) const
    virtual

    Returns the count of entities. Depending of each norm, records can be Entities or SubParts (SubList in STEP, SubGroup in SET ...). NbEntities counts only Entities, not Subs Used for memory reservation in InterfaceModel Default implementation uses FindNextRecord Can be redefined into a more performant way.

    Reimplemented in IGESData_IGESReaderData, and StepData_StepReaderData.

    ◆ NbParams()

    int Interface_FileReaderData::NbParams ( const int num) const

    Returns count of parameters attached to record "num" If <num> = 0, returns the total recorded count of parameters.

    ◆ NbRecords()

    virtual int Interface_FileReaderData::NbRecords ( ) const
    virtual

    Returns the count of registered records That is, value given for Initialization (can be redefined).

    ◆ Param()

    const Interface_FileParameter & Interface_FileReaderData::Param ( const int num,
    const int nump ) const

    Returns parameter "nump" of record "num", as a complete FileParameter.

    ◆ ParamCValue()

    const char * Interface_FileReaderData::ParamCValue ( const int num,
    const int nump ) const

    Same as above, but as a CString was C++ : return const.

    ◆ ParamEntity()

    const occ::handle< Standard_Transient > & Interface_FileReaderData::ParamEntity ( const int num,
    const int nump ) const

    Returns the StepEntity referenced by a parameter Error if none.

    ◆ ParamFirstRank()

    int Interface_FileReaderData::ParamFirstRank ( const int num) const

    Returns the absolute rank of the beginning of a record (its list is from ParamFirstRank+1 to ParamFirstRank+NbParams).

    ◆ ParamNumber()

    int Interface_FileReaderData::ParamNumber ( const int num,
    const int nump ) const

    Returns record number of an entity referenced by a parameter of type Ident; 0 if no EntityNumber has been determined Note that it is used to reference Entities but also Sublists (sublists are not objects, but internal descriptions).

    ◆ ParamPosition()

    void Interface_FileReaderData::ParamPosition ( const int numpar,
    int & num,
    int & nump ) const
    protected

    For a given absolute rank of parameter, determines the record to which its belongs, and the parameter number for it.

    ◆ Params()

    occ::handle< Interface_ParamList > Interface_FileReaderData::Params ( const int num) const

    Returns the complete ParamList of a record (read only) num = 0 to return the whole param list for the file.

    ◆ ParamType()

    Interface_ParamType Interface_FileReaderData::ParamType ( const int num,
    const int nump ) const

    Returns type of parameter "nump" of record "num" Returns literal value of parameter "nump" of record "num" was C++ : return const &.

    ◆ ResetErrorLoad()

    bool Interface_FileReaderData::ResetErrorLoad ( )

    Returns the former value of status "Error Load" then resets it Used to read the status then ensure it is reset.

    ◆ SetErrorLoad()

    void Interface_FileReaderData::SetErrorLoad ( const bool val)

    Sets the status "Error Load" on, to overside check fails <val> True : declares unloaded <val> False : declares loaded If not called before loading (see FileReaderTool), check fails give the status IsErrorLoad says if SetErrorLoad has been called by user ResetErrorLoad resets it (called by FileReaderTool) This allows to specify that the currently loaded entity remains unloaded (because of syntactic fail).

    ◆ SetParam()

    void Interface_FileReaderData::SetParam ( const int num,
    const int nump,
    const Interface_FileParameter & FP )

    Sets a new value for a parameter of a record, given by : num : record number; nump : parameter number in the record.


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