Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-09-09 09:17:14

0001 // Copyright (c) 2020 OPEN CASCADE SAS
0002 //
0003 // This file is part of Open CASCADE Technology software library.
0004 //
0005 // This library is free software; you can redistribute it and/or modify it under
0006 // the terms of the GNU Lesser General Public License version 2.1 as published
0007 // by the Free Software Foundation, with special exception defined in the file
0008 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
0009 // distribution for complete text of the license and disclaimer of any warranty.
0010 //
0011 // Alternatively, this file may be used under the terms of Open CASCADE
0012 // commercial license or contractual agreement.
0013 
0014 #ifndef _TDocStdFormatVersion_HeaderFile
0015 #define _TDocStdFormatVersion_HeaderFile
0016 
0017 //! Storage format versions of OCAF documents in XML and binary file formats.
0018 //!
0019 //! OCAF document file format evolves and a new version number indicates each improvement of the
0020 //! format. This enumeration lists all versions of an OCAF document. TDocStd_FormatVersion_CURRENT
0021 //! value refers to the last file format version. By default, Open CASCADE Technology writes new
0022 //! documents using the last file format version. The last version of Open CASCADE Technology is
0023 //! able to read old documents of any version. However, a previous version of Open CASCADE
0024 //! Technology may not be able to read a new document. In this case use the method
0025 //! ChangeStorageFormatVersion() from TDocStd_Document to change the file format version. Then, save
0026 //! the document by means of SaveAs() from TDocStd_Application.
0027 //!
0028 //! If it is necessary to improve an XML or binary file format of OCAF document, follow please the
0029 //! next steps:
0030 //! - increment the file format version in this enumeration. Put a reference to the last file format
0031 //! version by means of TDocStd_FormatVersion_CURRENT.
0032 //! - introduce the improvement in OCAF attribute storage and retrieval drivers, if necessary.
0033 //!   As an example, please consider the file XmlMDataStd_TreeNodeDriver.cxx.
0034 //! - test the improvement on current file format version and on the previous one.
0035 enum TDocStd_FormatVersion
0036 {
0037   TDocStd_FormatVersion_VERSION_2 = 2, //!< First supported version
0038 
0039   TDocStd_FormatVersion_VERSION_3, //!< OCCT 6.3.0
0040                                    //!< * XML: Adding DeltaOnModification functionality to set of
0041                                    //!< Standard attributes [#0019403]
0042                                    //!< * BIN: Add Delta to numbers data, changes in ShapeSection
0043                                    //!< [#0019986, #0019403]
0044 
0045   TDocStd_FormatVersion_VERSION_4, //!< OCCT 6.3.1
0046                                    //!< * XML: Naming mechanism improvement [#0021004]
0047                                    //!< * BIN: entry, ContextLabel for tree [#0021004]
0048 
0049   TDocStd_FormatVersion_VERSION_5, //!< OCCT 6.3.1
0050                                    //!< * XML: Separation of OCAF to Lite and Standard parts
0051                                    //!< completion [#0021093]
0052                                    //!< * BIN: Convert old format to new [#0021093]
0053 
0054   TDocStd_FormatVersion_VERSION_6, //!< OCCT 6.5.0
0055                                    //!< * XML: Add location [#0022192]
0056                                    //!< * BIN: Add location [#0022192]
0057 
0058   TDocStd_FormatVersion_VERSION_7, //!< OCCT 6.7.0
0059                                    //!< * XML: Add orientation [#0023766]
0060                                    //!< * BIN: Add orientation, type migration [#0023766]
0061 
0062   TDocStd_FormatVersion_VERSION_8, //!< OCCT 7.0.0
0063                                    //!< * XML: Replace TPrsStd_AISPresentation attribute with
0064                                    //!< TDataXtd_Presentation [#0026290]
0065                                    //!< * BIN: Stop convert old format [#0026290]
0066 
0067   TDocStd_FormatVersion_VERSION_9, //!< OCCT 7.1.0
0068                                    //!< * BIN: Add GUIDs, Process user defined guid [#0027932]
0069 
0070   TDocStd_FormatVersion_VERSION_10, //!< OCCT 7.2.0
0071                                     //!< * BIN: ReadTOC changed to handle 64-bit file length
0072                                     //!< [#0028736]
0073 
0074   TDocStd_FormatVersion_VERSION_11, //!< OCCT 7.6.0
0075                                     //!< * BIN, XML: TopTools_FormatVersion_CURRENT changed to 3 and
0076                                     //!< BinTools_FormatVersion_CURRENT changed to 4 to preserve
0077                                     //!< per-vertex normal information in case of triangulation-only
0078                                     //!< Faces [#0031136]
0079   TDocStd_FormatVersion_VERSION_12, //!< OCCT 7.6.0
0080                                     //!< * BIN: New binary format for fast reading of part of OCAF
0081                                     //!< document [#0031918]
0082 
0083   TDocStd_FormatVersion_CURRENT = TDocStd_FormatVersion_VERSION_12 //!< Current version
0084 };
0085 
0086 enum
0087 {
0088   TDocStd_FormatVersion_LOWER = TDocStd_FormatVersion_VERSION_2,
0089   TDocStd_FormatVersion_UPPER = TDocStd_FormatVersion_VERSION_12
0090 };
0091 
0092 #endif // _TDocStdFormatVersion_HeaderFile