/////////////////////////////////////////////////////////////////////////////// // Copyright (C) 2002-2016, Open Design Alliance (the "Alliance"). // All rights reserved. // // This software and its documentation and related materials are owned by // the Alliance. The software may only be incorporated into application // programs owned by members of the Alliance, subject to a signed // Membership Agreement and Supplemental Software License Agreement with the // Alliance. The structure and organization of this software are the valuable // trade secrets of the Alliance and its suppliers. The software is also // protected by copyright law and international treaty provisions. Application // programs incorporating this software must include the following statement // with their copyright notices: // // This application incorporates Teigha(R) software pursuant to a license // agreement with Open Design Alliance. // Teigha(R) Copyright (C) 2002-2016 by Open Design Alliance. // All rights reserved. // // By use of this software, its documentation or related materials, you // acknowledge and accept the above terms. /////////////////////////////////////////////////////////////////////////////// #ifndef _OD_TF_Included_ #define _OD_TF_Included_ #include "DbHandle.h" #include "DbObjectId.h" #include "DbDatabase.h" #include "Ge/GePoint2d.h" #include "Ge/GePoint3d.h" #include "Ge/GeScale3d.h" #include "TD_PackPush.h" #ifdef TF_DLL_EXPORTS #define TFDLL_EXPORT OD_TOOLKIT_EXPORT #define TFDLL_EXPORT_STATIC OD_STATIC_EXPORT #else #define TFDLL_EXPORT OD_TOOLKIT_IMPORT #define TFDLL_EXPORT_STATIC OD_STATIC_IMPORT #endif struct OdTfFiler { virtual OdRxObject* database() const = 0; virtual void seek(OdInt64 offset, OdDb::FilerSeekType seekType) = 0; /** Description: Returns the current I/O pointer position of this Filer object. */ virtual OdUInt64 tell() const = 0; /** Description: Returns the bool *value* of the current item of this Filer object. */ virtual bool rdBool() = 0; /** Description: Returns the *string* *value* of the current item of this Filer object. Arguments: */ virtual OdString rdString() = 0; /** Description: Returns the specified number of *bytes* from this Filer object. Arguments: buffer (O) Receives the bytes. numBytes (I) Number of *bytes*. */ virtual void rdBytes( void* buffer, OdUInt32 numBytes) = 0; /** Description: Returns the Int8 *value* of the current item of this Filer object. */ virtual OdInt8 rdInt8() = 0; /** Description: Returns the UInt8 *value* of the current item of this Filer object. */ virtual OdUInt8 rdUInt8() = 0; /** Description: Returns the Int16 *value* of the current item of this Filer object. */ virtual OdInt16 rdInt16() = 0; /** Description: Returns the Int32 *value* of the current item of this Filer object. */ virtual OdInt32 rdInt32() = 0; /** Description: Returns the Int64 *value* of the current item of this Filer object. */ virtual OdInt64 rdInt64() = 0; /** Description: Returns the double *value* of the current item of this Filer object. */ virtual double rdDouble() = 0; /** Description: Returns the *handle* *value* of the current item of this Filer object. */ virtual OdDbHandle rdDbHandle() = 0; /** Description: Returns the SoftOwnershipId *value* of the current item of this Filer object. */ virtual OdDbStub* rdSoftOwnershipId() = 0; /** Description: Returns the HardOwnershipId *value* of the current item of this Filer object. */ virtual OdDbStub* rdHardOwnershipId() = 0; /** Description: Returns the HardPointerId *value* of the current item of this Filer object. */ virtual OdDbStub* rdHardPointerId() = 0; /** Description: Returns the SoftPointerId *value* of the current item of this Filer object. */ virtual OdDbStub* rdSoftPointerId() = 0; /** Description: Returns the 2D *point* *value* of the current item of this Filer object. */ virtual OdGePoint2d rdPoint2d() = 0; /** Description: Returns the 3D *point* *value* of the current item of this Filer object. */ virtual OdGePoint3d rdPoint3d() = 0; /** Description: Returns the 2D *vector* *value* of the current item of this Filer object. */ virtual OdGeVector2d rdVector2d() = 0; /** Description: Returns the 3D vector *value* of the current item of this Filer object. */ virtual OdGeVector3d rdVector3d() = 0; /** Description: Returns the *scale* *value* of the current item of this Filer object. */ virtual OdGeScale3d rdScale3d() = 0; /** Description: Writes the specified bool *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrBool( bool value) = 0; /** Description: Writes the specified *string* *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrString( const OdString &value) = 0; /** Description: Writes the specified number of *bytes* to this Filer object. Arguments: buffer (I) array of *bytes*. numBytes (I) Number of *bytes*. */ virtual void wrBytes( const void* buffer, OdUInt32 numBytes) = 0; /** Description: Writes the specified Int8 *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrInt8( OdInt8 value) = 0; /** Description: Writes the specified UInt8 *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrUInt8( OdUInt8 value) = 0; /** Description: Writes the specified Int16 *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrInt16( OdInt16 value) = 0; /** Description: Writes the specified Int32 *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrInt32( OdInt32 value) = 0; /** Description: Writes the specified Int64 *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrInt64( OdInt64 value) = 0; /** Description: Writes the specified double *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrDouble(double value) = 0; /** Description: Writes the specified *handle* *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrDbHandle( const OdDbHandle& value) = 0; /** Description: Writes the specified SoftOwnershipId *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrSoftOwnershipId( OdDbStub* value) = 0; /** Description: Writes the specified HardOwnershipId *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrHardOwnershipId( OdDbStub* value) = 0; /** Description: Writes the specified SoftPointerId *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrSoftPointerId( OdDbStub* value) = 0; /** Description: Writes the specified HardPointerId *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrHardPointerId( OdDbStub* value) = 0; /** Description: Writes the specified 2D *point* *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrPoint2d( const OdGePoint2d& value) = 0; /** Description: Writes the specified 3D *point* *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrPoint3d( const OdGePoint3d& value) = 0; /** Description: Writes the specified 2D *vector* *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrVector2d( const OdGeVector2d& value) = 0; /** Description: Writes the specified 3D *vector* *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrVector3d( const OdGeVector3d& value) = 0; /** Description: Writes the specified 3D *scale* *value* to this Filer object. Arguments: value (I) Value. */ virtual void wrScale3d( const OdGeScale3d& value) = 0; virtual void wrSubobject(int id, const char* name) = 0; virtual const char* rdSubobject(int& id) = 0; virtual void wrDateTime(OdTimeStamp) = 0; virtual void rdDateTime(OdTimeStamp&) = 0; }; struct TFDLL_EXPORT OdTfObjectPE : OdRxObject { ODRX_DECLARE_MEMBERS(OdTfObjectPE); virtual int schemaVersion(OdRxObject*) = 0; virtual OdString schema(OdRxObject*) = 0; virtual bool in(OdRxObject*, OdTfFiler*) = 0; virtual void out(OdRxObject*, OdTfFiler*) = 0; }; typedef OdSmartPtr OdTfObjectPEPtr; #include "TD_PackPop.h" #endif // _OD_TF_Included_