Open CASCADE Technology  7.7.0
Public Member Functions
BinObjMgt_Persistent Class Reference

Binary persistent representation of an object. Really it is used as a buffer for read/write an object. More...

#include <BinObjMgt_Persistent.hxx>

Public Member Functions

 BinObjMgt_Persistent ()
 Empty constructor. More...
 
BinObjMgt_Persistent & PutCharacter (const Standard_Character theValue)
 
BinObjMgt_Persistent & operator<< (const Standard_Character theValue)
 
BinObjMgt_Persistent & PutByte (const Standard_Byte theValue)
 
BinObjMgt_Persistent & operator<< (const Standard_Byte theValue)
 
BinObjMgt_Persistent & PutExtCharacter (const Standard_ExtCharacter theValue)
 
BinObjMgt_Persistent & operator<< (const Standard_ExtCharacter theValue)
 
BinObjMgt_Persistent & PutInteger (const Standard_Integer theValue)
 
BinObjMgt_Persistent & operator<< (const Standard_Integer theValue)
 
BinObjMgt_Persistent & PutBoolean (const Standard_Boolean theValue)
 
BinObjMgt_Persistent & operator<< (const Standard_Boolean theValue)
 
BinObjMgt_Persistent & PutReal (const Standard_Real theValue)
 
BinObjMgt_Persistent & operator<< (const Standard_Real theValue)
 
BinObjMgt_Persistent & PutShortReal (const Standard_ShortReal theValue)
 
BinObjMgt_Persistent & operator<< (const Standard_ShortReal theValue)
 
BinObjMgt_Persistent & PutCString (const Standard_CString theValue)
 Offset in output buffer is not aligned. More...
 
BinObjMgt_Persistent & operator<< (const Standard_CString theValue)
 
BinObjMgt_Persistent & PutAsciiString (const TCollection_AsciiString &theValue)
 Offset in output buffer is word-aligned. More...
 
BinObjMgt_Persistent & operator<< (const TCollection_AsciiString &theValue)
 
BinObjMgt_Persistent & PutExtendedString (const TCollection_ExtendedString &theValue)
 Offset in output buffer is word-aligned. More...
 
BinObjMgt_Persistent & operator<< (const TCollection_ExtendedString &theValue)
 
BinObjMgt_Persistent & PutLabel (const TDF_Label &theValue)
 
BinObjMgt_Persistent & operator<< (const TDF_Label &theValue)
 
BinObjMgt_Persistent & PutGUID (const Standard_GUID &theValue)
 
BinObjMgt_Persistent & operator<< (const Standard_GUID &theValue)
 
BinObjMgt_Persistent & PutCharArray (const BinObjMgt_PChar theArray, const Standard_Integer theLength)
 Put C array of char, theLength is the number of elements. More...
 
BinObjMgt_Persistent & PutByteArray (const BinObjMgt_PByte theArray, const Standard_Integer theLength)
 Put C array of unsigned chars, theLength is the number of elements. More...
 
BinObjMgt_Persistent & PutExtCharArray (const BinObjMgt_PExtChar theArray, const Standard_Integer theLength)
 Put C array of ExtCharacter, theLength is the number of elements. More...
 
BinObjMgt_Persistent & PutIntArray (const BinObjMgt_PInteger theArray, const Standard_Integer theLength)
 Put C array of int, theLength is the number of elements. More...
 
BinObjMgt_Persistent & PutRealArray (const BinObjMgt_PReal theArray, const Standard_Integer theLength)
 Put C array of double, theLength is the number of elements. More...
 
BinObjMgt_Persistent & PutShortRealArray (const BinObjMgt_PShortReal theArray, const Standard_Integer theLength)
 Put C array of float, theLength is the number of elements. More...
 
const BinObjMgt_Persistent & GetCharacter (Standard_Character &theValue) const
 
const BinObjMgt_Persistent & operator>> (Standard_Character &theValue) const
 
const BinObjMgt_Persistent & GetByte (Standard_Byte &theValue) const
 
const BinObjMgt_Persistent & operator>> (Standard_Byte &theValue) const
 
const BinObjMgt_Persistent & GetExtCharacter (Standard_ExtCharacter &theValue) const
 
const BinObjMgt_Persistent & operator>> (Standard_ExtCharacter &theValue) const
 
const BinObjMgt_Persistent & GetInteger (Standard_Integer &theValue) const
 
const BinObjMgt_Persistent & operator>> (Standard_Integer &theValue) const
 
const BinObjMgt_Persistent & GetBoolean (Standard_Boolean &theValue) const
 
const BinObjMgt_Persistent & operator>> (Standard_Boolean &theValue) const
 
const BinObjMgt_Persistent & GetReal (Standard_Real &theValue) const
 
const BinObjMgt_Persistent & operator>> (Standard_Real &theValue) const
 
const BinObjMgt_Persistent & GetShortReal (Standard_ShortReal &theValue) const
 
const BinObjMgt_Persistent & operator>> (Standard_ShortReal &theValue) const
 
const BinObjMgt_Persistent & GetAsciiString (TCollection_AsciiString &theValue) const
 
const BinObjMgt_Persistent & operator>> (TCollection_AsciiString &theValue) const
 
const BinObjMgt_Persistent & GetExtendedString (TCollection_ExtendedString &theValue) const
 
const BinObjMgt_Persistent & operator>> (TCollection_ExtendedString &theValue) const
 
const BinObjMgt_Persistent & GetLabel (const Handle< TDF_Data > &theDS, TDF_Label &theValue) const
 
const BinObjMgt_Persistent & GetGUID (Standard_GUID &theValue) const
 
const BinObjMgt_Persistent & operator>> (Standard_GUID &theValue) const
 
const BinObjMgt_Persistent & GetCharArray (const BinObjMgt_PChar theArray, const Standard_Integer theLength) const
 Get C array of char, theLength is the number of elements; theArray must point to a space enough to place theLength elements. More...
 
const BinObjMgt_Persistent & GetByteArray (const BinObjMgt_PByte theArray, const Standard_Integer theLength) const
 Get C array of unsigned chars, theLength is the number of elements; theArray must point to a space enough to place theLength elements. More...
 
const BinObjMgt_Persistent & GetExtCharArray (const BinObjMgt_PExtChar theArray, const Standard_Integer theLength) const
 Get C array of ExtCharacter, theLength is the number of elements; theArray must point to a space enough to place theLength elements. More...
 
const BinObjMgt_Persistent & GetIntArray (const BinObjMgt_PInteger theArray, const Standard_Integer theLength) const
 Get C array of int, theLength is the number of elements; theArray must point to a space enough to place theLength elements. More...
 
const BinObjMgt_Persistent & GetRealArray (const BinObjMgt_PReal theArray, const Standard_Integer theLength) const
 Get C array of double, theLength is the number of elements; theArray must point to a space enough to place theLength elements. More...
 
const BinObjMgt_Persistent & GetShortRealArray (const BinObjMgt_PShortReal theArray, const Standard_Integer theLength) const
 Get C array of float, theLength is the number of elements; theArray must point to a space enough to place theLength elements. More...
 
Standard_Integer Position () const
 Tells the current position for get/put. More...
 
Standard_Boolean SetPosition (const Standard_Integer thePos) const
 Sets the current position for get/put. Resets an error state depending on the validity of thePos. Returns the new state (value of IsOK()) More...
 
void Truncate ()
 Truncates the buffer by current position, i.e. updates mySize. More...
 
Standard_Boolean IsError () const
 Indicates an error after Get methods or SetPosition. More...
 
Standard_Boolean operator! () const
 
Standard_Boolean IsOK () const
 Indicates a good state after Get methods or SetPosition. More...
 
 operator Standard_Boolean () const
 
void Init ()
 Initializes me to reuse again. More...
 
void SetId (const Standard_Integer theId)
 Sets the Id of the object. More...
 
void SetTypeId (const Standard_Integer theId)
 Sets the Id of the type of the object. More...
 
Standard_Integer Id () const
 Returns the Id of the object. More...
 
Standard_Integer TypeId () const
 Returns the Id of the type of the object. More...
 
Standard_Integer Length () const
 Returns the length of data. More...
 
Standard_OStream & Write (Standard_OStream &theOS, const Standard_Boolean theDirectStream=Standard_False)
 Stores <me> to the stream. inline Standard_OStream& operator<< (Standard_OStream&, BinObjMgt_Persistent&) is also available. If theDirectStream is true, after this data the direct stream data is stored. More...
 
Standard_IStream & Read (Standard_IStream &theIS)
 Retrieves <me> from the stream. inline Standard_IStream& operator>> (Standard_IStream&, BinObjMgt_Persistent&) is also available. More...
 
void Destroy ()
 Frees the allocated memory; This object can be reused after call to Init. More...
 
 ~BinObjMgt_Persistent ()
 
void SetOStream (Standard_OStream &theStream)
 Sets the stream for direct writing. More...
 
void SetIStream (Standard_IStream &theStream)
 Sets the stream for direct reading. More...
 
Standard_OStream * GetOStream ()
 Gets the stream for and enables direct writing. More...
 
Standard_IStream * GetIStream ()
 Gets the stream for and enables direct reading. More...
 
Standard_Boolean IsDirect ()
 Returns true if after this record a direct writing to the stream is performed. More...
 
Handle< BinObjMgt_Position > StreamStart ()
 Returns the start position of the direct writing in the stream. More...
 

Detailed Description

Binary persistent representation of an object. Really it is used as a buffer for read/write an object.

It takes care of Little/Big endian by inversing bytes in objects of standard types (see FSD_FileHeader.hxx for the default value of DO_INVERSE).

Constructor & Destructor Documentation

◆ BinObjMgt_Persistent()

BinObjMgt_Persistent::BinObjMgt_Persistent ( )

Empty constructor.

◆ ~BinObjMgt_Persistent()

BinObjMgt_Persistent::~BinObjMgt_Persistent ( )
inline

Member Function Documentation

◆ Destroy()

void BinObjMgt_Persistent::Destroy ( )

Frees the allocated memory; This object can be reused after call to Init.

◆ GetAsciiString()

const BinObjMgt_Persistent& BinObjMgt_Persistent::GetAsciiString ( TCollection_AsciiString &  theValue) const

◆ GetBoolean()

const BinObjMgt_Persistent& BinObjMgt_Persistent::GetBoolean ( Standard_Boolean &  theValue) const

◆ GetByte()

const BinObjMgt_Persistent& BinObjMgt_Persistent::GetByte ( Standard_Byte &  theValue) const

◆ GetByteArray()

const BinObjMgt_Persistent& BinObjMgt_Persistent::GetByteArray ( const BinObjMgt_PByte  theArray,
const Standard_Integer  theLength 
) const

Get C array of unsigned chars, theLength is the number of elements; theArray must point to a space enough to place theLength elements.

◆ GetCharacter()

const BinObjMgt_Persistent& BinObjMgt_Persistent::GetCharacter ( Standard_Character &  theValue) const

◆ GetCharArray()

const BinObjMgt_Persistent& BinObjMgt_Persistent::GetCharArray ( const BinObjMgt_PChar  theArray,
const Standard_Integer  theLength 
) const

Get C array of char, theLength is the number of elements; theArray must point to a space enough to place theLength elements.

◆ GetExtCharacter()

const BinObjMgt_Persistent& BinObjMgt_Persistent::GetExtCharacter ( Standard_ExtCharacter &  theValue) const

◆ GetExtCharArray()

const BinObjMgt_Persistent& BinObjMgt_Persistent::GetExtCharArray ( const BinObjMgt_PExtChar  theArray,
const Standard_Integer  theLength 
) const

Get C array of ExtCharacter, theLength is the number of elements; theArray must point to a space enough to place theLength elements.

◆ GetExtendedString()

const BinObjMgt_Persistent& BinObjMgt_Persistent::GetExtendedString ( TCollection_ExtendedString &  theValue) const

◆ GetGUID()

const BinObjMgt_Persistent& BinObjMgt_Persistent::GetGUID ( Standard_GUID &  theValue) const

◆ GetIntArray()

const BinObjMgt_Persistent& BinObjMgt_Persistent::GetIntArray ( const BinObjMgt_PInteger  theArray,
const Standard_Integer  theLength 
) const

Get C array of int, theLength is the number of elements; theArray must point to a space enough to place theLength elements.

◆ GetInteger()

const BinObjMgt_Persistent& BinObjMgt_Persistent::GetInteger ( Standard_Integer &  theValue) const

◆ GetIStream()

Standard_IStream* BinObjMgt_Persistent::GetIStream ( )

Gets the stream for and enables direct reading.

◆ GetLabel()

const BinObjMgt_Persistent& BinObjMgt_Persistent::GetLabel ( const Handle< TDF_Data > &  theDS,
TDF_Label &  theValue 
) const

◆ GetOStream()

Standard_OStream* BinObjMgt_Persistent::GetOStream ( )

Gets the stream for and enables direct writing.

◆ GetReal()

const BinObjMgt_Persistent& BinObjMgt_Persistent::GetReal ( Standard_Real &  theValue) const

◆ GetRealArray()

const BinObjMgt_Persistent& BinObjMgt_Persistent::GetRealArray ( const BinObjMgt_PReal  theArray,
const Standard_Integer  theLength 
) const

Get C array of double, theLength is the number of elements; theArray must point to a space enough to place theLength elements.

◆ GetShortReal()

const BinObjMgt_Persistent& BinObjMgt_Persistent::GetShortReal ( Standard_ShortReal &  theValue) const

◆ GetShortRealArray()

const BinObjMgt_Persistent& BinObjMgt_Persistent::GetShortRealArray ( const BinObjMgt_PShortReal  theArray,
const Standard_Integer  theLength 
) const

Get C array of float, theLength is the number of elements; theArray must point to a space enough to place theLength elements.

◆ Id()

Standard_Integer BinObjMgt_Persistent::Id ( ) const

Returns the Id of the object.

◆ Init()

void BinObjMgt_Persistent::Init ( )

Initializes me to reuse again.

◆ IsDirect()

Standard_Boolean BinObjMgt_Persistent::IsDirect ( )
inline

Returns true if after this record a direct writing to the stream is performed.

◆ IsError()

Standard_Boolean BinObjMgt_Persistent::IsError ( ) const

Indicates an error after Get methods or SetPosition.

◆ IsOK()

Standard_Boolean BinObjMgt_Persistent::IsOK ( ) const

Indicates a good state after Get methods or SetPosition.

◆ Length()

Standard_Integer BinObjMgt_Persistent::Length ( ) const

Returns the length of data.

◆ operator Standard_Boolean()

BinObjMgt_Persistent::operator Standard_Boolean ( ) const
inline

◆ operator!()

Standard_Boolean BinObjMgt_Persistent::operator! ( ) const
inline

◆ operator<<() [1/12]

BinObjMgt_Persistent& BinObjMgt_Persistent::operator<< ( const Standard_Character  theValue)
inline

◆ operator<<() [2/12]

BinObjMgt_Persistent& BinObjMgt_Persistent::operator<< ( const Standard_Byte  theValue)
inline

◆ operator<<() [3/12]

BinObjMgt_Persistent& BinObjMgt_Persistent::operator<< ( const Standard_ExtCharacter  theValue)
inline

◆ operator<<() [4/12]

BinObjMgt_Persistent& BinObjMgt_Persistent::operator<< ( const Standard_Integer  theValue)
inline

◆ operator<<() [5/12]

BinObjMgt_Persistent& BinObjMgt_Persistent::operator<< ( const Standard_Boolean  theValue)
inline

◆ operator<<() [6/12]

BinObjMgt_Persistent& BinObjMgt_Persistent::operator<< ( const Standard_Real  theValue)
inline

◆ operator<<() [7/12]

BinObjMgt_Persistent& BinObjMgt_Persistent::operator<< ( const Standard_ShortReal  theValue)
inline

◆ operator<<() [8/12]

BinObjMgt_Persistent& BinObjMgt_Persistent::operator<< ( const Standard_CString  theValue)
inline

◆ operator<<() [9/12]

BinObjMgt_Persistent& BinObjMgt_Persistent::operator<< ( const TCollection_AsciiString &  theValue)
inline

◆ operator<<() [10/12]

BinObjMgt_Persistent& BinObjMgt_Persistent::operator<< ( const TCollection_ExtendedString &  theValue)
inline

◆ operator<<() [11/12]

BinObjMgt_Persistent& BinObjMgt_Persistent::operator<< ( const TDF_Label &  theValue)
inline

◆ operator<<() [12/12]

BinObjMgt_Persistent& BinObjMgt_Persistent::operator<< ( const Standard_GUID &  theValue)
inline

◆ operator>>() [1/10]

const BinObjMgt_Persistent& BinObjMgt_Persistent::operator>> ( Standard_Character &  theValue) const
inline

◆ operator>>() [2/10]

const BinObjMgt_Persistent& BinObjMgt_Persistent::operator>> ( Standard_Byte &  theValue) const
inline

◆ operator>>() [3/10]

const BinObjMgt_Persistent& BinObjMgt_Persistent::operator>> ( Standard_ExtCharacter &  theValue) const
inline

◆ operator>>() [4/10]

const BinObjMgt_Persistent& BinObjMgt_Persistent::operator>> ( Standard_Integer &  theValue) const
inline

◆ operator>>() [5/10]

const BinObjMgt_Persistent& BinObjMgt_Persistent::operator>> ( Standard_Boolean &  theValue) const
inline

◆ operator>>() [6/10]

const BinObjMgt_Persistent& BinObjMgt_Persistent::operator>> ( Standard_Real &  theValue) const
inline

◆ operator>>() [7/10]

const BinObjMgt_Persistent& BinObjMgt_Persistent::operator>> ( Standard_ShortReal &  theValue) const
inline

◆ operator>>() [8/10]

const BinObjMgt_Persistent& BinObjMgt_Persistent::operator>> ( TCollection_AsciiString &  theValue) const
inline

◆ operator>>() [9/10]

const BinObjMgt_Persistent& BinObjMgt_Persistent::operator>> ( TCollection_ExtendedString &  theValue) const
inline

◆ operator>>() [10/10]

const BinObjMgt_Persistent& BinObjMgt_Persistent::operator>> ( Standard_GUID &  theValue) const
inline

◆ Position()

Standard_Integer BinObjMgt_Persistent::Position ( ) const

Tells the current position for get/put.

◆ PutAsciiString()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutAsciiString ( const TCollection_AsciiString &  theValue)

Offset in output buffer is word-aligned.

◆ PutBoolean()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutBoolean ( const Standard_Boolean  theValue)

◆ PutByte()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutByte ( const Standard_Byte  theValue)

◆ PutByteArray()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutByteArray ( const BinObjMgt_PByte  theArray,
const Standard_Integer  theLength 
)

Put C array of unsigned chars, theLength is the number of elements.

◆ PutCharacter()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutCharacter ( const Standard_Character  theValue)

◆ PutCharArray()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutCharArray ( const BinObjMgt_PChar  theArray,
const Standard_Integer  theLength 
)

Put C array of char, theLength is the number of elements.

◆ PutCString()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutCString ( const Standard_CString  theValue)

Offset in output buffer is not aligned.

◆ PutExtCharacter()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutExtCharacter ( const Standard_ExtCharacter  theValue)

◆ PutExtCharArray()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutExtCharArray ( const BinObjMgt_PExtChar  theArray,
const Standard_Integer  theLength 
)

Put C array of ExtCharacter, theLength is the number of elements.

◆ PutExtendedString()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutExtendedString ( const TCollection_ExtendedString &  theValue)

Offset in output buffer is word-aligned.

◆ PutGUID()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutGUID ( const Standard_GUID &  theValue)

◆ PutIntArray()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutIntArray ( const BinObjMgt_PInteger  theArray,
const Standard_Integer  theLength 
)

Put C array of int, theLength is the number of elements.

◆ PutInteger()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutInteger ( const Standard_Integer  theValue)

◆ PutLabel()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutLabel ( const TDF_Label &  theValue)

◆ PutReal()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutReal ( const Standard_Real  theValue)

◆ PutRealArray()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutRealArray ( const BinObjMgt_PReal  theArray,
const Standard_Integer  theLength 
)

Put C array of double, theLength is the number of elements.

◆ PutShortReal()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutShortReal ( const Standard_ShortReal  theValue)

◆ PutShortRealArray()

BinObjMgt_Persistent& BinObjMgt_Persistent::PutShortRealArray ( const BinObjMgt_PShortReal  theArray,
const Standard_Integer  theLength 
)

Put C array of float, theLength is the number of elements.

◆ Read()

Standard_IStream& BinObjMgt_Persistent::Read ( Standard_IStream &  theIS)

Retrieves <me> from the stream. inline Standard_IStream& operator>> (Standard_IStream&, BinObjMgt_Persistent&) is also available.

◆ SetId()

void BinObjMgt_Persistent::SetId ( const Standard_Integer  theId)

Sets the Id of the object.

◆ SetIStream()

void BinObjMgt_Persistent::SetIStream ( Standard_IStream &  theStream)
inline

Sets the stream for direct reading.

◆ SetOStream()

void BinObjMgt_Persistent::SetOStream ( Standard_OStream &  theStream)
inline

Sets the stream for direct writing.

◆ SetPosition()

Standard_Boolean BinObjMgt_Persistent::SetPosition ( const Standard_Integer  thePos) const

Sets the current position for get/put. Resets an error state depending on the validity of thePos. Returns the new state (value of IsOK())

◆ SetTypeId()

void BinObjMgt_Persistent::SetTypeId ( const Standard_Integer  theId)

Sets the Id of the type of the object.

◆ StreamStart()

Handle< BinObjMgt_Position > BinObjMgt_Persistent::StreamStart ( )
inline

Returns the start position of the direct writing in the stream.

◆ Truncate()

void BinObjMgt_Persistent::Truncate ( )

Truncates the buffer by current position, i.e. updates mySize.

◆ TypeId()

Standard_Integer BinObjMgt_Persistent::TypeId ( ) const

Returns the Id of the type of the object.

◆ Write()

Standard_OStream& BinObjMgt_Persistent::Write ( Standard_OStream &  theOS,
const Standard_Boolean  theDirectStream = Standard_False 
)

Stores <me> to the stream. inline Standard_OStream& operator<< (Standard_OStream&, BinObjMgt_Persistent&) is also available. If theDirectStream is true, after this data the direct stream data is stored.


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