mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-14 13:30:48 +03:00
Coding - Apply .clang-format formatting #286
Update empty method guards to new style with regex (see PR). Used clang-format 18.1.8. New actions to validate code formatting is added. Update .clang-format with disabling of include sorting. It is temporary changes, then include will be sorted. Apply formatting for /src and /tools folder. The files with .hxx,.cxx,.lxx,.h,.pxx,.hpp,*.cpp extensions.
This commit is contained in:
@@ -16,10 +16,10 @@
|
||||
// =======================================================================
|
||||
// function : Encode
|
||||
// =======================================================================
|
||||
Standard_Size FSD_Base64::Encode (char* theEncodedStr,
|
||||
const Standard_Size theStrLen,
|
||||
const Standard_Byte* theData,
|
||||
const Standard_Size theDataLen)
|
||||
Standard_Size FSD_Base64::Encode(char* theEncodedStr,
|
||||
const Standard_Size theStrLen,
|
||||
const Standard_Byte* theData,
|
||||
const Standard_Size theDataLen)
|
||||
{
|
||||
static const char aBase64Chars[] =
|
||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
||||
@@ -28,7 +28,7 @@ Standard_Size FSD_Base64::Encode (char* theEncodedStr,
|
||||
return 0;
|
||||
}
|
||||
|
||||
Standard_Size aPad = theDataLen % 3;
|
||||
Standard_Size aPad = theDataLen % 3;
|
||||
const Standard_Size aSize64 = 4 * ((theDataLen + 2) / 3);
|
||||
if (theEncodedStr == NULL)
|
||||
{
|
||||
@@ -42,9 +42,8 @@ Standard_Size FSD_Base64::Encode (char* theEncodedStr,
|
||||
Standard_Size iStr = 0;
|
||||
for (Standard_Size i = 0; i < theDataLen - aPad; i += 3)
|
||||
{
|
||||
uint32_t aWord = (uint32_t(theData[i]) << 16) +
|
||||
(uint32_t(theData[i + 1]) << 8) +
|
||||
theData[i + 2];
|
||||
uint32_t aWord =
|
||||
(uint32_t(theData[i]) << 16) + (uint32_t(theData[i + 1]) << 8) + theData[i + 2];
|
||||
theEncodedStr[iStr++] = aBase64Chars[aWord >> 18];
|
||||
theEncodedStr[iStr++] = aBase64Chars[aWord >> 12 & 0x3F];
|
||||
theEncodedStr[iStr++] = aBase64Chars[aWord >> 6 & 0x3F];
|
||||
@@ -54,14 +53,14 @@ Standard_Size FSD_Base64::Encode (char* theEncodedStr,
|
||||
{
|
||||
if (aPad != 0)
|
||||
{
|
||||
uint32_t aWord = uint32_t(theData[theDataLen - 2]) << 8 | theData[theDataLen - 1];
|
||||
uint32_t aWord = uint32_t(theData[theDataLen - 2]) << 8 | theData[theDataLen - 1];
|
||||
theEncodedStr[iStr++] = aBase64Chars[aWord >> 10];
|
||||
theEncodedStr[iStr++] = aBase64Chars[aWord >> 4 & 0x03F];
|
||||
theEncodedStr[iStr++] = aBase64Chars[(aWord & 0xF) << 2];
|
||||
}
|
||||
else
|
||||
{
|
||||
uint32_t aWord = theData[theDataLen - 1];
|
||||
uint32_t aWord = theData[theDataLen - 1];
|
||||
theEncodedStr[iStr++] = aBase64Chars[aWord >> 2];
|
||||
theEncodedStr[iStr++] = aBase64Chars[(aWord & 3) << 4];
|
||||
theEncodedStr[iStr++] = '=';
|
||||
@@ -78,39 +77,36 @@ Standard_Size FSD_Base64::Encode (char* theEncodedStr,
|
||||
// function : Encode
|
||||
// =======================================================================
|
||||
TCollection_AsciiString FSD_Base64::Encode(const Standard_Byte* theData,
|
||||
const Standard_Size theDataLen)
|
||||
const Standard_Size theDataLen)
|
||||
{
|
||||
Standard_Size aStrLen = Encode (NULL, 0, theData, theDataLen);
|
||||
TCollection_AsciiString aStr ((Standard_Integer)aStrLen, 0);
|
||||
Encode (const_cast<char*>(aStr.ToCString()), aStrLen, theData, theDataLen);
|
||||
Standard_Size aStrLen = Encode(NULL, 0, theData, theDataLen);
|
||||
TCollection_AsciiString aStr((Standard_Integer)aStrLen, 0);
|
||||
Encode(const_cast<char*>(aStr.ToCString()), aStrLen, theData, theDataLen);
|
||||
return aStr;
|
||||
}
|
||||
|
||||
// =======================================================================
|
||||
// function : Decode
|
||||
// =======================================================================
|
||||
Standard_Size FSD_Base64::Decode (Standard_Byte* theDecodedData,
|
||||
const Standard_Size theDataLen,
|
||||
Standard_CString theEncodedStr,
|
||||
const Standard_Size theStrLen)
|
||||
Standard_Size FSD_Base64::Decode(Standard_Byte* theDecodedData,
|
||||
const Standard_Size theDataLen,
|
||||
Standard_CString theEncodedStr,
|
||||
const Standard_Size theStrLen)
|
||||
{
|
||||
static const Standard_Byte aBase64Codes[256] =
|
||||
{
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62, 63, 62, 62, 63, 52, 53, 54, 55,
|
||||
56, 57, 58, 59, 60, 61, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 5, 6,
|
||||
7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 0,
|
||||
0, 0, 0, 63, 0, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
|
||||
41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51
|
||||
};
|
||||
static const Standard_Byte aBase64Codes[256] = {
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 62, 63, 62, 62, 63, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
|
||||
19, 20, 21, 22, 23, 24, 25, 0, 0, 0, 0, 63, 0, 26, 27, 28, 29, 30, 31, 32, 33,
|
||||
34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51};
|
||||
if (theStrLen == 0)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Calculate pad bytes and number of bytes without pad
|
||||
uint32_t aPad (theStrLen % 4 || theEncodedStr[theStrLen - 1] == '=');
|
||||
uint32_t aPad(theStrLen % 4 || theEncodedStr[theStrLen - 1] == '=');
|
||||
const Standard_Size aNbIter = ((theStrLen + 3) / 4 - aPad) * 4;
|
||||
if (theStrLen > aNbIter + 2 && theEncodedStr[aNbIter + 2] != '=')
|
||||
{
|
||||
@@ -131,26 +127,26 @@ Standard_Size FSD_Base64::Decode (Standard_Byte* theDecodedData,
|
||||
// Decoding loop
|
||||
for (Standard_Size i = 0; i < aNbIter; i += 4)
|
||||
{
|
||||
unsigned aWord = (aBase64Codes[unsigned (theEncodedStr[i])] << 18) +
|
||||
(aBase64Codes[unsigned (theEncodedStr[i + 1])] << 12) +
|
||||
(aBase64Codes[unsigned (theEncodedStr[i + 2])] << 6) +
|
||||
aBase64Codes[unsigned (theEncodedStr[i + 3])];
|
||||
*theDecodedData++ = static_cast<Standard_Byte> (aWord >> 16);
|
||||
*theDecodedData++ = static_cast<Standard_Byte> (aWord >> 8 & 0xFF);
|
||||
*theDecodedData++ = static_cast<Standard_Byte> (aWord & 0xFF);
|
||||
unsigned aWord = (aBase64Codes[unsigned(theEncodedStr[i])] << 18)
|
||||
+ (aBase64Codes[unsigned(theEncodedStr[i + 1])] << 12)
|
||||
+ (aBase64Codes[unsigned(theEncodedStr[i + 2])] << 6)
|
||||
+ aBase64Codes[unsigned(theEncodedStr[i + 3])];
|
||||
*theDecodedData++ = static_cast<Standard_Byte>(aWord >> 16);
|
||||
*theDecodedData++ = static_cast<Standard_Byte>(aWord >> 8 & 0xFF);
|
||||
*theDecodedData++ = static_cast<Standard_Byte>(aWord & 0xFF);
|
||||
}
|
||||
|
||||
// Decoding pad bytes
|
||||
if (aPad > 0)
|
||||
{
|
||||
unsigned aWord = (aBase64Codes[unsigned (theEncodedStr[aNbIter])] << 18) +
|
||||
(aBase64Codes[unsigned (theEncodedStr[aNbIter + 1])] << 12);
|
||||
*theDecodedData++ = static_cast<Standard_Byte> (aWord >> 16);
|
||||
unsigned aWord = (aBase64Codes[unsigned(theEncodedStr[aNbIter])] << 18)
|
||||
+ (aBase64Codes[unsigned(theEncodedStr[aNbIter + 1])] << 12);
|
||||
*theDecodedData++ = static_cast<Standard_Byte>(aWord >> 16);
|
||||
|
||||
if (aPad > 1)
|
||||
{
|
||||
aWord += (aBase64Codes[unsigned (theEncodedStr[aNbIter + 2])] << 6);
|
||||
*theDecodedData++ = static_cast<Standard_Byte> (aWord >> 8 & 0xFF);
|
||||
aWord += (aBase64Codes[unsigned(theEncodedStr[aNbIter + 2])] << 6);
|
||||
*theDecodedData++ = static_cast<Standard_Byte>(aWord >> 8 & 0xFF);
|
||||
}
|
||||
}
|
||||
return aDecodedSize;
|
||||
@@ -159,19 +155,20 @@ Standard_Size FSD_Base64::Decode (Standard_Byte* theDecodedData,
|
||||
// =======================================================================
|
||||
// function : Decode
|
||||
// =======================================================================
|
||||
Handle(NCollection_Buffer) FSD_Base64::Decode (Standard_CString theEncodedStr,
|
||||
const Standard_Size theStrLen)
|
||||
Handle(NCollection_Buffer) FSD_Base64::Decode(Standard_CString theEncodedStr,
|
||||
const Standard_Size theStrLen)
|
||||
{
|
||||
const Standard_Size aDataSize = Decode (NULL, 0, theEncodedStr, theStrLen);
|
||||
Handle(NCollection_Buffer) aBuf = new NCollection_Buffer (NCollection_BaseAllocator::CommonBaseAllocator());
|
||||
const Standard_Size aDataSize = Decode(NULL, 0, theEncodedStr, theStrLen);
|
||||
Handle(NCollection_Buffer) aBuf =
|
||||
new NCollection_Buffer(NCollection_BaseAllocator::CommonBaseAllocator());
|
||||
if (aDataSize == 0)
|
||||
{
|
||||
return aBuf;
|
||||
}
|
||||
if (!aBuf->Allocate (aDataSize))
|
||||
if (!aBuf->Allocate(aDataSize))
|
||||
{
|
||||
return Handle(NCollection_Buffer)();
|
||||
}
|
||||
Decode (aBuf->ChangeData(), aDataSize, theEncodedStr, theStrLen);
|
||||
Decode(aBuf->ChangeData(), aDataSize, theEncodedStr, theStrLen);
|
||||
return aBuf;
|
||||
}
|
||||
|
@@ -21,48 +21,49 @@
|
||||
class FSD_Base64
|
||||
{
|
||||
public:
|
||||
|
||||
//! Function encoding a buffer to base64 string.
|
||||
//! @param[out] theEncodedStr the place for encoded string. Terminating null is not put.
|
||||
//! If it is NULL just return the needed size.
|
||||
//! @param[in] theStrLen the length of the buffer theEncodedStr in bytes.
|
||||
//! This value must not be less than value returned when theEncodedStr is NULL.
|
||||
//! This value must not be less than value returned when theEncodedStr is
|
||||
//! NULL.
|
||||
//! @param[in] theData the input binary data.
|
||||
//! @param[in] theDataLen the length of input data in bytes.
|
||||
//! @return the length of the encoded string not including terminating null.
|
||||
//! If theStrLen is not enough for storing all data nothing is written and 0 is returned.
|
||||
Standard_EXPORT static Standard_Size Encode (char* theEncodedStr,
|
||||
const Standard_Size theStrLen,
|
||||
const Standard_Byte* theData,
|
||||
const Standard_Size theDataLen);
|
||||
Standard_EXPORT static Standard_Size Encode(char* theEncodedStr,
|
||||
const Standard_Size theStrLen,
|
||||
const Standard_Byte* theData,
|
||||
const Standard_Size theDataLen);
|
||||
|
||||
//! Function encoding a buffer to base64 string.
|
||||
//! @param[in] theData the input binary data
|
||||
//! @param[in] theDataLen the length of input data in bytes
|
||||
//! @return Base64 encoded string.
|
||||
Standard_EXPORT static TCollection_AsciiString Encode(const Standard_Byte* theData,
|
||||
const Standard_Size theDataLen);
|
||||
const Standard_Size theDataLen);
|
||||
|
||||
//! Function decoding base64 string.
|
||||
//! @param[out] theDecodedData the place for decoded data.
|
||||
//! If it is NULL just return the needed size.
|
||||
//! @param[in] theDataLen the length of the buffer theDecodedData in bytes.
|
||||
//! This value must not be less than value returned when theDecodedData is NULL.
|
||||
//! This value must not be less than value returned when theDecodedData is
|
||||
//! NULL.
|
||||
//! @param[in] theEncodedStr the input encoded string.
|
||||
//! @param[in] theStrLen the length of input encoded string.
|
||||
//! @return the length of the decoded data in bytes. If theDataLen is not enough
|
||||
//! for storing all data nothing is written and 0 is returned.
|
||||
Standard_EXPORT static Standard_Size Decode (Standard_Byte* theDecodedData,
|
||||
const Standard_Size theDataLen,
|
||||
Standard_CString theEncodedStr,
|
||||
const Standard_Size theStrLen);
|
||||
Standard_EXPORT static Standard_Size Decode(Standard_Byte* theDecodedData,
|
||||
const Standard_Size theDataLen,
|
||||
Standard_CString theEncodedStr,
|
||||
const Standard_Size theStrLen);
|
||||
|
||||
//! Function decoding base64 string.
|
||||
//! @param[in] theStr the input encoded string
|
||||
//! @param[in] theLen the length of input encoded string
|
||||
//! @return null handle in case of out of memory condition
|
||||
Standard_EXPORT static Handle(NCollection_Buffer) Decode (Standard_CString theStr,
|
||||
const Standard_Size theLen);
|
||||
Standard_EXPORT static Handle(NCollection_Buffer) Decode(Standard_CString theStr,
|
||||
const Standard_Size theLen);
|
||||
};
|
||||
|
||||
#endif // _FSD_Base64_HeaderFile
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -32,331 +32,346 @@ class TCollection_AsciiString;
|
||||
class TCollection_ExtendedString;
|
||||
class Storage_HeaderData;
|
||||
|
||||
// Macro that tells if bytes must be reversed when read/write
|
||||
// Macro that tells if bytes must be reversed when read/write
|
||||
// data to/from a binary file. It is needed to provide binary file compatibility
|
||||
// between little and big endian platforms.
|
||||
#ifndef OCCT_BINARY_FILE_DO_INVERSE
|
||||
#if defined ( SOLARIS ) || defined ( IRIX )
|
||||
// Do inverse on big endian platform
|
||||
#define OCCT_BINARY_FILE_DO_INVERSE 1
|
||||
#else
|
||||
#define OCCT_BINARY_FILE_DO_INVERSE 0
|
||||
#endif
|
||||
#if defined(SOLARIS) || defined(IRIX)
|
||||
// Do inverse on big endian platform
|
||||
#define OCCT_BINARY_FILE_DO_INVERSE 1
|
||||
#else
|
||||
#define OCCT_BINARY_FILE_DO_INVERSE 0
|
||||
#endif
|
||||
#endif
|
||||
|
||||
DEFINE_STANDARD_HANDLE(FSD_BinaryFile,Storage_BaseDriver)
|
||||
DEFINE_STANDARD_HANDLE(FSD_BinaryFile, Storage_BaseDriver)
|
||||
|
||||
class FSD_BinaryFile : public Storage_BaseDriver
|
||||
class FSD_BinaryFile : public Storage_BaseDriver
|
||||
{
|
||||
public:
|
||||
DEFINE_STANDARD_RTTIEXT(FSD_BinaryFile,Storage_BaseDriver)
|
||||
DEFINE_STANDARD_RTTIEXT(FSD_BinaryFile, Storage_BaseDriver)
|
||||
|
||||
public:
|
||||
|
||||
Standard_EXPORT FSD_BinaryFile();
|
||||
|
||||
Standard_EXPORT Storage_Error Open (const TCollection_AsciiString& aName, const Storage_OpenMode aMode) Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT Storage_Error Open(const TCollection_AsciiString& aName,
|
||||
const Storage_OpenMode aMode) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Standard_Boolean IsEnd() Standard_OVERRIDE;
|
||||
|
||||
|
||||
//! return position in the file. Return -1 upon error.
|
||||
Standard_EXPORT Storage_Position Tell() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static Storage_Error IsGoodFileType (const TCollection_AsciiString& aName);
|
||||
|
||||
|
||||
Standard_EXPORT static Storage_Error IsGoodFileType(const TCollection_AsciiString& aName);
|
||||
|
||||
Standard_EXPORT Storage_Error BeginWriteInfoSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static Standard_Integer WriteInfo (Standard_OStream& theOStream,
|
||||
const Standard_Integer nbObj,
|
||||
const TCollection_AsciiString& dbVersion,
|
||||
const TCollection_AsciiString& date,
|
||||
const TCollection_AsciiString& schemaName,
|
||||
const TCollection_AsciiString& schemaVersion,
|
||||
const TCollection_ExtendedString& appName,
|
||||
const TCollection_AsciiString& appVersion,
|
||||
const TCollection_ExtendedString& objectType,
|
||||
const TColStd_SequenceOfAsciiString& userInfo,
|
||||
const Standard_Boolean theOnlyCount = Standard_False);
|
||||
|
||||
Standard_EXPORT void WriteInfo (const Standard_Integer nbObj,
|
||||
const TCollection_AsciiString& dbVersion,
|
||||
const TCollection_AsciiString& date,
|
||||
const TCollection_AsciiString& schemaName,
|
||||
const TCollection_AsciiString& schemaVersion,
|
||||
const TCollection_ExtendedString& appName,
|
||||
const TCollection_AsciiString& appVersion,
|
||||
const TCollection_ExtendedString& objectType,
|
||||
const TColStd_SequenceOfAsciiString& userInfo) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static Standard_Integer WriteInfo(
|
||||
Standard_OStream& theOStream,
|
||||
const Standard_Integer nbObj,
|
||||
const TCollection_AsciiString& dbVersion,
|
||||
const TCollection_AsciiString& date,
|
||||
const TCollection_AsciiString& schemaName,
|
||||
const TCollection_AsciiString& schemaVersion,
|
||||
const TCollection_ExtendedString& appName,
|
||||
const TCollection_AsciiString& appVersion,
|
||||
const TCollection_ExtendedString& objectType,
|
||||
const TColStd_SequenceOfAsciiString& userInfo,
|
||||
const Standard_Boolean theOnlyCount = Standard_False);
|
||||
|
||||
Standard_EXPORT void WriteInfo(const Standard_Integer nbObj,
|
||||
const TCollection_AsciiString& dbVersion,
|
||||
const TCollection_AsciiString& date,
|
||||
const TCollection_AsciiString& schemaName,
|
||||
const TCollection_AsciiString& schemaVersion,
|
||||
const TCollection_ExtendedString& appName,
|
||||
const TCollection_AsciiString& appVersion,
|
||||
const TCollection_ExtendedString& objectType,
|
||||
const TColStd_SequenceOfAsciiString& userInfo) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_Error EndWriteInfoSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_Error EndWriteInfoSection(Standard_OStream& theOStream);
|
||||
|
||||
|
||||
Standard_EXPORT Storage_Error BeginReadInfoSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void ReadInfo (Standard_Integer& nbObj,
|
||||
TCollection_AsciiString& dbVersion,
|
||||
TCollection_AsciiString& date,
|
||||
TCollection_AsciiString& schemaName,
|
||||
TCollection_AsciiString& schemaVersion,
|
||||
TCollection_ExtendedString& appName,
|
||||
TCollection_AsciiString& appVersion,
|
||||
TCollection_ExtendedString& objectType,
|
||||
TColStd_SequenceOfAsciiString& userInfo) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void ReadCompleteInfo (Standard_IStream& theIStream, Handle(Storage_Data)& theData) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void ReadInfo(Standard_Integer& nbObj,
|
||||
TCollection_AsciiString& dbVersion,
|
||||
TCollection_AsciiString& date,
|
||||
TCollection_AsciiString& schemaName,
|
||||
TCollection_AsciiString& schemaVersion,
|
||||
TCollection_ExtendedString& appName,
|
||||
TCollection_AsciiString& appVersion,
|
||||
TCollection_ExtendedString& objectType,
|
||||
TColStd_SequenceOfAsciiString& userInfo) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void ReadCompleteInfo(Standard_IStream& theIStream,
|
||||
Handle(Storage_Data)& theData) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_Error EndReadInfoSection() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT Storage_Error BeginWriteCommentSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_Error BeginWriteCommentSection (Standard_OStream& theOStream);
|
||||
|
||||
Standard_EXPORT void WriteComment (const TColStd_SequenceOfExtendedString& userComments) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static Standard_Integer WriteComment (Standard_OStream& theOStream,
|
||||
const TColStd_SequenceOfExtendedString& theComments,
|
||||
const Standard_Boolean theOnlyCount = Standard_False);
|
||||
|
||||
|
||||
Standard_EXPORT Storage_Error BeginWriteCommentSection(Standard_OStream& theOStream);
|
||||
|
||||
Standard_EXPORT void WriteComment(const TColStd_SequenceOfExtendedString& userComments)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static Standard_Integer WriteComment(
|
||||
Standard_OStream& theOStream,
|
||||
const TColStd_SequenceOfExtendedString& theComments,
|
||||
const Standard_Boolean theOnlyCount = Standard_False);
|
||||
|
||||
Standard_EXPORT Storage_Error EndWriteCommentSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_Error EndWriteCommentSection (Standard_OStream& theOStream);
|
||||
|
||||
Standard_EXPORT Storage_Error BeginReadCommentSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void ReadComment (TColStd_SequenceOfExtendedString& userComments) Standard_OVERRIDE;
|
||||
Standard_EXPORT Storage_Error EndWriteCommentSection(Standard_OStream& theOStream);
|
||||
|
||||
Standard_EXPORT Storage_Error BeginReadCommentSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void ReadComment(TColStd_SequenceOfExtendedString& userComments)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static void ReadComment(Standard_IStream& theIStream,
|
||||
TColStd_SequenceOfExtendedString& userComments);
|
||||
|
||||
Standard_EXPORT static void ReadComment (Standard_IStream& theIStream, TColStd_SequenceOfExtendedString& userComments);
|
||||
|
||||
Standard_EXPORT Storage_Error EndReadCommentSection() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT Storage_Error BeginWriteTypeSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void SetTypeSectionSize (const Standard_Integer aSize) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void WriteTypeInformations (const Standard_Integer typeNum, const TCollection_AsciiString& typeName) Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT void SetTypeSectionSize(const Standard_Integer aSize) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void WriteTypeInformations(const Standard_Integer typeNum,
|
||||
const TCollection_AsciiString& typeName)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_Error EndWriteTypeSection() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT Storage_Error BeginReadTypeSection() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT Standard_Integer TypeSectionSize() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static Standard_Integer TypeSectionSize(Standard_IStream& theIStream);
|
||||
|
||||
Standard_EXPORT void ReadTypeInformations (Standard_Integer& typeNum, TCollection_AsciiString& typeName) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static void ReadTypeInformations (Standard_IStream& theIStream,
|
||||
Standard_Integer& typeNum,
|
||||
TCollection_AsciiString& typeName);
|
||||
|
||||
Standard_EXPORT void ReadTypeInformations(Standard_Integer& typeNum,
|
||||
TCollection_AsciiString& typeName) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static void ReadTypeInformations(Standard_IStream& theIStream,
|
||||
Standard_Integer& typeNum,
|
||||
TCollection_AsciiString& typeName);
|
||||
|
||||
Standard_EXPORT Storage_Error EndReadTypeSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_Error BeginWriteRootSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void SetRootSectionSize (const Standard_Integer aSize) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void WriteRoot (const TCollection_AsciiString& rootName,
|
||||
const Standard_Integer aRef,
|
||||
const TCollection_AsciiString& aType) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_Error EndWriteRootSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_Error BeginReadRootSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Standard_Integer RootSectionSize() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static Standard_Integer RootSectionSize(Standard_IStream& theIStream);
|
||||
|
||||
Standard_EXPORT void ReadRoot (TCollection_AsciiString& rootName,
|
||||
Standard_Integer& aRef,
|
||||
TCollection_AsciiString& aType) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static void ReadRoot (Standard_IStream& theIStream,
|
||||
TCollection_AsciiString& rootName,
|
||||
Standard_Integer& aRef,
|
||||
TCollection_AsciiString& aType);
|
||||
|
||||
Standard_EXPORT Storage_Error BeginWriteRootSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void SetRootSectionSize(const Standard_Integer aSize) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void WriteRoot(const TCollection_AsciiString& rootName,
|
||||
const Standard_Integer aRef,
|
||||
const TCollection_AsciiString& aType) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_Error EndWriteRootSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_Error BeginReadRootSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Standard_Integer RootSectionSize() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static Standard_Integer RootSectionSize(Standard_IStream& theIStream);
|
||||
|
||||
Standard_EXPORT void ReadRoot(TCollection_AsciiString& rootName,
|
||||
Standard_Integer& aRef,
|
||||
TCollection_AsciiString& aType) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static void ReadRoot(Standard_IStream& theIStream,
|
||||
TCollection_AsciiString& rootName,
|
||||
Standard_Integer& aRef,
|
||||
TCollection_AsciiString& aType);
|
||||
|
||||
Standard_EXPORT Storage_Error EndReadRootSection() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT Storage_Error BeginWriteRefSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void SetRefSectionSize (const Standard_Integer aSize) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void WriteReferenceType (const Standard_Integer reference, const Standard_Integer typeNum) Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT void SetRefSectionSize(const Standard_Integer aSize) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void WriteReferenceType(const Standard_Integer reference,
|
||||
const Standard_Integer typeNum) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_Error EndWriteRefSection() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT Storage_Error BeginReadRefSection() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT Standard_Integer RefSectionSize() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static Standard_Integer RefSectionSize(Standard_IStream& theIStream);
|
||||
|
||||
Standard_EXPORT void ReadReferenceType (Standard_Integer& reference, Standard_Integer& typeNum) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static void ReadReferenceType (Standard_IStream& theIStream,
|
||||
Standard_Integer& reference,
|
||||
Standard_Integer& typeNum);
|
||||
|
||||
Standard_EXPORT void ReadReferenceType(Standard_Integer& reference,
|
||||
Standard_Integer& typeNum) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static void ReadReferenceType(Standard_IStream& theIStream,
|
||||
Standard_Integer& reference,
|
||||
Standard_Integer& typeNum);
|
||||
|
||||
Standard_EXPORT Storage_Error EndReadRefSection() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT Storage_Error BeginWriteDataSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void WritePersistentObjectHeader (const Standard_Integer aRef, const Standard_Integer aType) Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT void WritePersistentObjectHeader(const Standard_Integer aRef,
|
||||
const Standard_Integer aType) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void BeginWritePersistentObjectData() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT void BeginWriteObjectData() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT void EndWriteObjectData() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT void EndWritePersistentObjectData() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT Storage_Error EndWriteDataSection() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT Storage_Error BeginReadDataSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void ReadPersistentObjectHeader (Standard_Integer& aRef, Standard_Integer& aType) Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT void ReadPersistentObjectHeader(Standard_Integer& aRef,
|
||||
Standard_Integer& aType) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void BeginReadPersistentObjectData() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT void BeginReadObjectData() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT void EndReadObjectData() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT void EndReadPersistentObjectData() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT Storage_Error EndReadDataSection() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT void SkipObject() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& PutReference (const Standard_Integer aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& PutCharacter (const Standard_Character aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& PutExtCharacter (const Standard_ExtCharacter aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static Standard_Integer PutInteger (Standard_OStream& theOStream,
|
||||
const Standard_Integer aValue,
|
||||
const Standard_Boolean theOnlyCount = Standard_False);
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& PutInteger (const Standard_Integer aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& PutBoolean (const Standard_Boolean aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& PutReal (const Standard_Real aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& PutShortReal (const Standard_ShortReal aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& GetReference (Standard_Integer& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& GetCharacter (Standard_Character& aValue) Standard_OVERRIDE;
|
||||
Standard_EXPORT Storage_BaseDriver& PutReference(const Standard_Integer aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static void GetReference (Standard_IStream& theIStream, Standard_Integer& aValue);
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& GetExtCharacter (Standard_ExtCharacter& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& GetInteger (Standard_Integer& aValue) Standard_OVERRIDE;
|
||||
Standard_EXPORT Storage_BaseDriver& PutCharacter(const Standard_Character aValue)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& PutExtCharacter(const Standard_ExtCharacter aValue)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static Standard_Integer PutInteger(
|
||||
Standard_OStream& theOStream,
|
||||
const Standard_Integer aValue,
|
||||
const Standard_Boolean theOnlyCount = Standard_False);
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& PutInteger(const Standard_Integer aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& PutBoolean(const Standard_Boolean aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& PutReal(const Standard_Real aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& PutShortReal(const Standard_ShortReal aValue)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& GetReference(Standard_Integer& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& GetCharacter(Standard_Character& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static void GetReference(Standard_IStream& theIStream, Standard_Integer& aValue);
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& GetExtCharacter(Standard_ExtCharacter& aValue)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& GetInteger(Standard_Integer& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static void GetInteger(Standard_IStream& theIStream, Standard_Integer& aValue);
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& GetBoolean(Standard_Boolean& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& GetReal(Standard_Real& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& GetShortReal(Standard_ShortReal& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static void GetInteger (Standard_IStream& theIStream, Standard_Integer& aValue);
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& GetBoolean (Standard_Boolean& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& GetReal (Standard_Real& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_BaseDriver& GetShortReal (Standard_ShortReal& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT Storage_Error Close() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT void Destroy();
|
||||
|
||||
~FSD_BinaryFile()
|
||||
{
|
||||
Destroy();
|
||||
}
|
||||
~FSD_BinaryFile() { Destroy(); }
|
||||
|
||||
public:
|
||||
//!@name Own methods
|
||||
|
||||
///Inverse bytes in integer value
|
||||
/// Inverse bytes in integer value
|
||||
static Standard_Integer InverseInt(const Standard_Integer theValue)
|
||||
{
|
||||
return (0 | (( theValue & 0x000000ff ) << 24 )
|
||||
| (( theValue & 0x0000ff00 ) << 8 )
|
||||
| (( theValue & 0x00ff0000 ) >> 8 )
|
||||
| (( theValue >> 24 ) & 0x000000ff ) );
|
||||
return (0 | ((theValue & 0x000000ff) << 24) | ((theValue & 0x0000ff00) << 8)
|
||||
| ((theValue & 0x00ff0000) >> 8) | ((theValue >> 24) & 0x000000ff));
|
||||
}
|
||||
|
||||
///Inverse bytes in extended character value
|
||||
/// Inverse bytes in extended character value
|
||||
static Standard_ExtCharacter InverseExtChar(const Standard_ExtCharacter theValue)
|
||||
{
|
||||
return (0 | (( theValue & 0x00ff ) << 8 )
|
||||
| (( theValue & 0xff00 ) >> 8 ) );
|
||||
return (0 | ((theValue & 0x00ff) << 8) | ((theValue & 0xff00) >> 8));
|
||||
}
|
||||
|
||||
///Inverse bytes in real value
|
||||
/// Inverse bytes in real value
|
||||
Standard_EXPORT static Standard_Real InverseReal(const Standard_Real theValue);
|
||||
|
||||
///Inverse bytes in short real value
|
||||
/// Inverse bytes in short real value
|
||||
Standard_EXPORT static Standard_ShortReal InverseShortReal(const Standard_ShortReal theValue);
|
||||
|
||||
///Inverse bytes in size value
|
||||
/// Inverse bytes in size value
|
||||
Standard_EXPORT static Standard_Size InverseSize(const Standard_Size theValue);
|
||||
///Inverse bytes in 64bit unsigned int value
|
||||
/// Inverse bytes in 64bit unsigned int value
|
||||
Standard_EXPORT static uint64_t InverseUint64(const uint64_t theValue);
|
||||
|
||||
Standard_EXPORT static void ReadHeader (Standard_IStream& theIStream, FSD_FileHeader& theFileHeader);
|
||||
Standard_EXPORT static void ReadHeader(Standard_IStream& theIStream,
|
||||
FSD_FileHeader& theFileHeader);
|
||||
|
||||
Standard_EXPORT static void ReadHeaderData (Standard_IStream& theIStream, const Handle(Storage_HeaderData)& theHeaderData);
|
||||
Standard_EXPORT static void ReadHeaderData(Standard_IStream& theIStream,
|
||||
const Handle(Storage_HeaderData)& theHeaderData);
|
||||
|
||||
Standard_EXPORT static void ReadString (Standard_IStream& theIStream, TCollection_AsciiString& buffer);
|
||||
Standard_EXPORT static void ReadString(Standard_IStream& theIStream,
|
||||
TCollection_AsciiString& buffer);
|
||||
|
||||
Standard_EXPORT static void ReadExtendedString (Standard_IStream& theIStream, TCollection_ExtendedString& buffer);
|
||||
Standard_EXPORT static void ReadExtendedString(Standard_IStream& theIStream,
|
||||
TCollection_ExtendedString& buffer);
|
||||
|
||||
Standard_EXPORT static Standard_Integer WriteHeader (Standard_OStream& theOStream,
|
||||
const FSD_FileHeader& theHeader,
|
||||
const Standard_Boolean theOnlyCount = Standard_False);
|
||||
Standard_EXPORT static Standard_Integer WriteHeader(
|
||||
Standard_OStream& theOStream,
|
||||
const FSD_FileHeader& theHeader,
|
||||
const Standard_Boolean theOnlyCount = Standard_False);
|
||||
|
||||
Standard_EXPORT static Standard_CString MagicNumber();
|
||||
|
||||
protected:
|
||||
|
||||
//! read <rsize> character from the current position.
|
||||
Standard_EXPORT void ReadChar (TCollection_AsciiString& buffer, const Standard_Size rsize);
|
||||
|
||||
Standard_EXPORT void ReadChar(TCollection_AsciiString& buffer, const Standard_Size rsize);
|
||||
|
||||
//! read string from the current position.
|
||||
Standard_EXPORT void ReadString (TCollection_AsciiString& buffer);
|
||||
|
||||
//! write string at the current position.
|
||||
Standard_EXPORT void WriteString (const TCollection_AsciiString& buffer);
|
||||
Standard_EXPORT void ReadString(TCollection_AsciiString& buffer);
|
||||
|
||||
//! write string at the current position.
|
||||
Standard_EXPORT static Standard_Integer WriteString (Standard_OStream& theOStream,
|
||||
const TCollection_AsciiString& theString,
|
||||
const Standard_Boolean theOnlyCount = Standard_False);
|
||||
|
||||
Standard_EXPORT void WriteString(const TCollection_AsciiString& buffer);
|
||||
|
||||
//! write string at the current position.
|
||||
Standard_EXPORT static Standard_Integer WriteString(
|
||||
Standard_OStream& theOStream,
|
||||
const TCollection_AsciiString& theString,
|
||||
const Standard_Boolean theOnlyCount = Standard_False);
|
||||
|
||||
//! read string from the current position.
|
||||
Standard_EXPORT void ReadExtendedString (TCollection_ExtendedString& buffer);
|
||||
|
||||
Standard_EXPORT void ReadExtendedString(TCollection_ExtendedString& buffer);
|
||||
|
||||
//! write string at the current position.
|
||||
Standard_EXPORT void WriteExtendedString (const TCollection_ExtendedString& buffer);
|
||||
|
||||
Standard_EXPORT void WriteExtendedString(const TCollection_ExtendedString& buffer);
|
||||
|
||||
//! write string at the current position.
|
||||
Standard_EXPORT static Standard_Integer WriteExtendedString (Standard_OStream& theOStream,
|
||||
const TCollection_ExtendedString& theString,
|
||||
const Standard_Boolean theOnlyCount = Standard_False);
|
||||
Standard_EXPORT static Standard_Integer WriteExtendedString(
|
||||
Standard_OStream& theOStream,
|
||||
const TCollection_ExtendedString& theString,
|
||||
const Standard_Boolean theOnlyCount = Standard_False);
|
||||
|
||||
private:
|
||||
|
||||
void WriteHeader();
|
||||
|
||||
|
||||
void ReadHeader();
|
||||
|
||||
|
||||
private:
|
||||
|
||||
FSD_BStream myStream;
|
||||
FSD_BStream myStream;
|
||||
FSD_FileHeader myHeader;
|
||||
};
|
||||
|
||||
|
@@ -22,36 +22,34 @@ const Standard_CString MAGICNUMBER = "CMPFILE";
|
||||
|
||||
IMPLEMENT_STANDARD_RTTIEXT(FSD_CmpFile, FSD_File)
|
||||
|
||||
//=======================================================================
|
||||
//function : FSD_CmpFile
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
//=================================================================================================
|
||||
|
||||
FSD_CmpFile::FSD_CmpFile()
|
||||
{}
|
||||
FSD_CmpFile::FSD_CmpFile() {}
|
||||
|
||||
//=======================================================================
|
||||
//function : IsGoodFileType
|
||||
//purpose : INFO SECTION
|
||||
// function : IsGoodFileType
|
||||
// purpose : INFO SECTION
|
||||
// write
|
||||
//=======================================================================
|
||||
|
||||
Storage_Error FSD_CmpFile::IsGoodFileType(const TCollection_AsciiString& aName)
|
||||
{
|
||||
FSD_CmpFile f;
|
||||
FSD_CmpFile f;
|
||||
Storage_Error s;
|
||||
|
||||
s = f.Open(aName, Storage_VSRead);
|
||||
|
||||
if (s == Storage_VSOk) {
|
||||
if (s == Storage_VSOk)
|
||||
{
|
||||
TCollection_AsciiString l;
|
||||
Standard_Size len = strlen(FSD_CmpFile::MagicNumber());
|
||||
Standard_Size len = strlen(FSD_CmpFile::MagicNumber());
|
||||
|
||||
f.ReadChar(l, len);
|
||||
|
||||
f.Close();
|
||||
|
||||
if (strncmp(FSD_CmpFile::MagicNumber(), l.ToCString(), len) != 0) {
|
||||
if (strncmp(FSD_CmpFile::MagicNumber(), l.ToCString(), len) != 0)
|
||||
{
|
||||
s = Storage_VSFormatError;
|
||||
}
|
||||
}
|
||||
@@ -59,74 +57,72 @@ Storage_Error FSD_CmpFile::IsGoodFileType(const TCollection_AsciiString& aName)
|
||||
return s;
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : Open
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
//=================================================================================================
|
||||
|
||||
Storage_Error FSD_CmpFile::Open(const TCollection_AsciiString& aName, const Storage_OpenMode aMode)
|
||||
{
|
||||
Storage_Error result = Storage_VSOk;
|
||||
SetName(aName);
|
||||
|
||||
if (OpenMode() == Storage_VSNone) {
|
||||
if (OpenMode() == Storage_VSNone)
|
||||
{
|
||||
std::ios_base::openmode anOpenMode = std::ios_base::openmode{};
|
||||
switch (aMode)
|
||||
{
|
||||
case Storage_VSNone:
|
||||
{
|
||||
break;
|
||||
}
|
||||
case Storage_VSRead:
|
||||
{
|
||||
// std::ios::nocreate is not portable
|
||||
case Storage_VSNone: {
|
||||
break;
|
||||
}
|
||||
case Storage_VSRead: {
|
||||
// std::ios::nocreate is not portable
|
||||
#if !defined(IRIX) && !defined(DECOSF1)
|
||||
anOpenMode = std::ios::in | std::ios::binary;
|
||||
anOpenMode = std::ios::in | std::ios::binary;
|
||||
#else
|
||||
anOpenMode = std::ios::in;
|
||||
anOpenMode = std::ios::in;
|
||||
#endif
|
||||
break;
|
||||
}
|
||||
case Storage_VSWrite:
|
||||
{
|
||||
break;
|
||||
}
|
||||
case Storage_VSWrite: {
|
||||
#if !defined(IRIX) && !defined(DECOSF1)
|
||||
anOpenMode = std::ios::out | std::ios::binary;
|
||||
anOpenMode = std::ios::out | std::ios::binary;
|
||||
#else
|
||||
anOpenMode = std::ios::out;
|
||||
anOpenMode = std::ios::out;
|
||||
#endif
|
||||
break;
|
||||
}
|
||||
case Storage_VSReadWrite:
|
||||
{
|
||||
break;
|
||||
}
|
||||
case Storage_VSReadWrite: {
|
||||
#if !defined(IRIX) && !defined(DECOSF1)
|
||||
anOpenMode = std::ios::in | std::ios::out | std::ios::binary;
|
||||
anOpenMode = std::ios::in | std::ios::out | std::ios::binary;
|
||||
#else
|
||||
anOpenMode = std::ios::in | std::ios::out;
|
||||
anOpenMode = std::ios::in | std::ios::out;
|
||||
#endif
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (anOpenMode != 0)
|
||||
{
|
||||
OSD_OpenStream(myStream, aName, anOpenMode);
|
||||
}
|
||||
if (myStream.fail()) {
|
||||
if (myStream.fail())
|
||||
{
|
||||
result = Storage_VSOpenError;
|
||||
}
|
||||
else {
|
||||
else
|
||||
{
|
||||
myStream.precision(17);
|
||||
myStream.imbue(std::locale::classic()); // use always C locale
|
||||
SetOpenMode(aMode);
|
||||
}
|
||||
}
|
||||
else {
|
||||
}
|
||||
else
|
||||
{
|
||||
result = Storage_VSAlreadyOpen;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : MagicNumber
|
||||
//purpose : ------------------ PROTECTED
|
||||
// function : MagicNumber
|
||||
// purpose : ------------------ PROTECTED
|
||||
//=======================================================================
|
||||
|
||||
Standard_CString FSD_CmpFile::MagicNumber()
|
||||
@@ -135,8 +131,8 @@ Standard_CString FSD_CmpFile::MagicNumber()
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : ReadLine
|
||||
//purpose : read from the current position to the end of line.
|
||||
// function : ReadLine
|
||||
// purpose : read from the current position to the end of line.
|
||||
//=======================================================================
|
||||
|
||||
void FSD_CmpFile::ReadLine(TCollection_AsciiString& buffer)
|
||||
@@ -144,16 +140,18 @@ void FSD_CmpFile::ReadLine(TCollection_AsciiString& buffer)
|
||||
buffer.Clear();
|
||||
TCollection_AsciiString aBuf('\0');
|
||||
FSD_File::ReadLine(aBuf);
|
||||
for (Standard_Integer lv = aBuf.Length(); lv >= 1 && (aBuf.Value(lv) == '\r' || (aBuf.Value(lv) == '\n')); lv--)
|
||||
for (Standard_Integer lv = aBuf.Length();
|
||||
lv >= 1 && (aBuf.Value(lv) == '\r' || (aBuf.Value(lv) == '\n'));
|
||||
lv--)
|
||||
{
|
||||
aBuf.Trunc (lv - 1);
|
||||
aBuf.Trunc(lv - 1);
|
||||
}
|
||||
buffer = aBuf;
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : WriteExtendedLine
|
||||
//purpose : write from the current position to the end of line.
|
||||
// function : WriteExtendedLine
|
||||
// purpose : write from the current position to the end of line.
|
||||
//=======================================================================
|
||||
|
||||
void FSD_CmpFile::WriteExtendedLine(const TCollection_ExtendedString& buffer)
|
||||
@@ -178,26 +176,25 @@ void FSD_CmpFile::WriteExtendedLine(const TCollection_ExtendedString& buffer)
|
||||
|
||||
extBuffer = buffer.ToExtString();
|
||||
PutInteger(buffer.Length());
|
||||
for (i = 0; i < buffer.Length(); i++) {
|
||||
for (i = 0; i < buffer.Length(); i++)
|
||||
{
|
||||
PutExtCharacter(extBuffer[i]);
|
||||
}
|
||||
|
||||
myStream << "\n";
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : ReadExtendedLine
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
//=================================================================================================
|
||||
|
||||
void FSD_CmpFile::ReadExtendedLine(TCollection_ExtendedString& buffer)
|
||||
{
|
||||
Standard_ExtCharacter c;
|
||||
Standard_Integer i;
|
||||
Standard_Integer i;
|
||||
|
||||
GetInteger(i);
|
||||
|
||||
for (i = 0; i < buffer.Length(); i++) {
|
||||
for (i = 0; i < buffer.Length(); i++)
|
||||
{
|
||||
GetExtCharacter(c);
|
||||
buffer += c;
|
||||
}
|
||||
@@ -206,8 +203,8 @@ void FSD_CmpFile::ReadExtendedLine(TCollection_ExtendedString& buffer)
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : ReadString
|
||||
//purpose : read from the first none space character position to the end of line.
|
||||
// function : ReadString
|
||||
// purpose : read from the first none space character position to the end of line.
|
||||
//=======================================================================
|
||||
|
||||
void FSD_CmpFile::ReadString(TCollection_AsciiString& buffer)
|
||||
@@ -215,195 +212,178 @@ void FSD_CmpFile::ReadString(TCollection_AsciiString& buffer)
|
||||
buffer.Clear();
|
||||
TCollection_AsciiString aBuf('\0');
|
||||
FSD_File::ReadString(aBuf);
|
||||
for (Standard_Integer lv = aBuf.Length(); lv >= 1 && (aBuf.Value(lv) == '\r' || (aBuf.Value(lv) == '\n')); lv--)
|
||||
for (Standard_Integer lv = aBuf.Length();
|
||||
lv >= 1 && (aBuf.Value(lv) == '\r' || (aBuf.Value(lv) == '\n'));
|
||||
lv--)
|
||||
{
|
||||
aBuf.Trunc (lv - 1);
|
||||
aBuf.Trunc(lv - 1);
|
||||
}
|
||||
buffer = aBuf;
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : Destroy
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
//=================================================================================================
|
||||
|
||||
void FSD_CmpFile::Destroy()
|
||||
{
|
||||
if (OpenMode() != Storage_VSNone) {
|
||||
if (OpenMode() != Storage_VSNone)
|
||||
{
|
||||
Close();
|
||||
}
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : BeginWriteInfoSection
|
||||
//purpose : -------------------------- INFO : WRITE
|
||||
// function : BeginWriteInfoSection
|
||||
// purpose : -------------------------- INFO : WRITE
|
||||
//=======================================================================
|
||||
|
||||
Storage_Error FSD_CmpFile::BeginWriteInfoSection()
|
||||
{
|
||||
myStream << FSD_CmpFile::MagicNumber() << '\n';
|
||||
myStream << "BEGIN_INFO_SECTION\n";
|
||||
if (myStream.bad()) throw Storage_StreamWriteError();
|
||||
if (myStream.bad())
|
||||
throw Storage_StreamWriteError();
|
||||
|
||||
return Storage_VSOk;
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : BeginReadInfoSection
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
//=================================================================================================
|
||||
|
||||
Storage_Error FSD_CmpFile::BeginReadInfoSection()
|
||||
{
|
||||
Storage_Error s;
|
||||
Storage_Error s;
|
||||
TCollection_AsciiString l;
|
||||
Standard_Size len = strlen(FSD_CmpFile::MagicNumber());
|
||||
Standard_Size len = strlen(FSD_CmpFile::MagicNumber());
|
||||
|
||||
ReadChar(l, len);
|
||||
|
||||
if (strncmp(FSD_CmpFile::MagicNumber(), l.ToCString(), len) != 0) {
|
||||
if (strncmp(FSD_CmpFile::MagicNumber(), l.ToCString(), len) != 0)
|
||||
{
|
||||
s = Storage_VSFormatError;
|
||||
}
|
||||
else {
|
||||
else
|
||||
{
|
||||
s = FindTag("BEGIN_INFO_SECTION");
|
||||
}
|
||||
|
||||
return s;
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : WritePersistentObjectHeader
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
//=================================================================================================
|
||||
|
||||
void FSD_CmpFile::WritePersistentObjectHeader(const Standard_Integer aRef,
|
||||
const Standard_Integer aType)
|
||||
{
|
||||
myStream << "\n#" << aRef << "%" << aType << " ";
|
||||
if (myStream.bad()) throw Storage_StreamWriteError();
|
||||
if (myStream.bad())
|
||||
throw Storage_StreamWriteError();
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : BeginWritePersistentObjectData
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
//=================================================================================================
|
||||
|
||||
void FSD_CmpFile::BeginWritePersistentObjectData()
|
||||
{
|
||||
if (myStream.bad()) throw Storage_StreamWriteError();
|
||||
if (myStream.bad())
|
||||
throw Storage_StreamWriteError();
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : BeginWriteObjectData
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
//=================================================================================================
|
||||
|
||||
void FSD_CmpFile::BeginWriteObjectData()
|
||||
{
|
||||
if (myStream.bad()) throw Storage_StreamWriteError();
|
||||
if (myStream.bad())
|
||||
throw Storage_StreamWriteError();
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : EndWriteObjectData
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
//=================================================================================================
|
||||
|
||||
void FSD_CmpFile::EndWriteObjectData()
|
||||
{
|
||||
if (myStream.bad()) throw Storage_StreamWriteError();
|
||||
if (myStream.bad())
|
||||
throw Storage_StreamWriteError();
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : EndWritePersistentObjectData
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
//=================================================================================================
|
||||
|
||||
void FSD_CmpFile::EndWritePersistentObjectData()
|
||||
{
|
||||
if (myStream.bad()) throw Storage_StreamWriteError();
|
||||
if (myStream.bad())
|
||||
throw Storage_StreamWriteError();
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : ReadPersistentObjectHeader
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
//=================================================================================================
|
||||
|
||||
void FSD_CmpFile::ReadPersistentObjectHeader(Standard_Integer& aRef,
|
||||
Standard_Integer& aType)
|
||||
void FSD_CmpFile::ReadPersistentObjectHeader(Standard_Integer& aRef, Standard_Integer& aType)
|
||||
{
|
||||
char c = '\0';
|
||||
|
||||
myStream.get(c);
|
||||
|
||||
while (c != '#') {
|
||||
if (IsEnd() || (c != ' ') || (c == '\r') || (c == '\n')) {
|
||||
while (c != '#')
|
||||
{
|
||||
if (IsEnd() || (c != ' ') || (c == '\r') || (c == '\n'))
|
||||
{
|
||||
throw Storage_StreamFormatError();
|
||||
}
|
||||
myStream.get(c);
|
||||
}
|
||||
|
||||
if (!(myStream >> aRef)) throw Storage_StreamTypeMismatchError();
|
||||
if (!(myStream >> aRef))
|
||||
throw Storage_StreamTypeMismatchError();
|
||||
|
||||
myStream.get(c);
|
||||
|
||||
while (c != '%') {
|
||||
if (IsEnd() || (c != ' ') || (c == '\r') || (c == '\n')) {
|
||||
while (c != '%')
|
||||
{
|
||||
if (IsEnd() || (c != ' ') || (c == '\r') || (c == '\n'))
|
||||
{
|
||||
throw Storage_StreamFormatError();
|
||||
}
|
||||
myStream.get(c);
|
||||
}
|
||||
|
||||
if (!(myStream >> aType)) throw Storage_StreamTypeMismatchError();
|
||||
if (!(myStream >> aType))
|
||||
throw Storage_StreamTypeMismatchError();
|
||||
// std::cout << "REF:" << aRef << " TYPE:"<< aType << std::endl;
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : BeginReadPersistentObjectData
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
//=================================================================================================
|
||||
|
||||
void FSD_CmpFile::BeginReadPersistentObjectData()
|
||||
{
|
||||
//std::cout << "BeginReadPersistentObjectData" << std::endl;
|
||||
// std::cout << "BeginReadPersistentObjectData" << std::endl;
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : BeginReadObjectData
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
//=================================================================================================
|
||||
|
||||
void FSD_CmpFile::BeginReadObjectData()
|
||||
{
|
||||
// std::cout << "BeginReadObjectData" << std::endl;
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : EndReadObjectData
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
//=================================================================================================
|
||||
|
||||
void FSD_CmpFile::EndReadObjectData()
|
||||
{
|
||||
// std::cout << "EndReadObjectData" << std::endl;
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : EndReadPersistentObjectData
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
//=================================================================================================
|
||||
|
||||
void FSD_CmpFile::EndReadPersistentObjectData()
|
||||
{
|
||||
char c = '\0';
|
||||
|
||||
myStream.get(c);
|
||||
while (c != '\n' && (c != '\r')) {
|
||||
if (IsEnd() || (c != ' ')) {
|
||||
while (c != '\n' && (c != '\r'))
|
||||
{
|
||||
if (IsEnd() || (c != ' '))
|
||||
{
|
||||
throw Storage_StreamFormatError();
|
||||
}
|
||||
myStream.get(c);
|
||||
}
|
||||
if (c == '\r') {
|
||||
if (c == '\r')
|
||||
{
|
||||
myStream.get(c);
|
||||
}
|
||||
// std::cout << "EndReadPersistentObjectData" << std::endl;
|
||||
|
@@ -25,17 +25,18 @@
|
||||
class TCollection_AsciiString;
|
||||
class TCollection_ExtendedString;
|
||||
|
||||
DEFINE_STANDARD_HANDLE(FSD_CmpFile,FSD_File)
|
||||
DEFINE_STANDARD_HANDLE(FSD_CmpFile, FSD_File)
|
||||
|
||||
class FSD_CmpFile : public FSD_File
|
||||
{
|
||||
public:
|
||||
DEFINE_STANDARD_RTTIEXT(FSD_CmpFile,FSD_File)
|
||||
DEFINE_STANDARD_RTTIEXT(FSD_CmpFile, FSD_File)
|
||||
|
||||
public:
|
||||
Standard_EXPORT FSD_CmpFile();
|
||||
|
||||
Standard_EXPORT Storage_Error Open(const TCollection_AsciiString& aName, const Storage_OpenMode aMode) Standard_OVERRIDE;
|
||||
Standard_EXPORT Storage_Error Open(const TCollection_AsciiString& aName,
|
||||
const Storage_OpenMode aMode) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static Storage_Error IsGoodFileType(const TCollection_AsciiString& aName);
|
||||
|
||||
@@ -43,7 +44,8 @@ public:
|
||||
|
||||
Standard_EXPORT Storage_Error BeginReadInfoSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void WritePersistentObjectHeader(const Standard_Integer aRef, const Standard_Integer aType) Standard_OVERRIDE;
|
||||
Standard_EXPORT void WritePersistentObjectHeader(const Standard_Integer aRef,
|
||||
const Standard_Integer aType) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void BeginWritePersistentObjectData() Standard_OVERRIDE;
|
||||
|
||||
@@ -53,7 +55,8 @@ public:
|
||||
|
||||
Standard_EXPORT void EndWritePersistentObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void ReadPersistentObjectHeader(Standard_Integer& aRef, Standard_Integer& aType) Standard_OVERRIDE;
|
||||
Standard_EXPORT void ReadPersistentObjectHeader(Standard_Integer& aRef,
|
||||
Standard_Integer& aType) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void BeginReadPersistentObjectData() Standard_OVERRIDE;
|
||||
|
||||
@@ -64,15 +67,12 @@ public:
|
||||
Standard_EXPORT void EndReadPersistentObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT void Destroy();
|
||||
~FSD_CmpFile()
|
||||
{
|
||||
Destroy();
|
||||
}
|
||||
|
||||
~FSD_CmpFile() { Destroy(); }
|
||||
|
||||
Standard_EXPORT static Standard_CString MagicNumber();
|
||||
|
||||
protected:
|
||||
|
||||
//! read from the current position to the end of line.
|
||||
Standard_EXPORT void ReadLine(TCollection_AsciiString& buffer) Standard_OVERRIDE;
|
||||
|
||||
@@ -80,11 +80,11 @@ protected:
|
||||
Standard_EXPORT void ReadExtendedLine(TCollection_ExtendedString& buffer) Standard_OVERRIDE;
|
||||
|
||||
//! write from the current position to the end of line.
|
||||
Standard_EXPORT void WriteExtendedLine(const TCollection_ExtendedString& buffer) Standard_OVERRIDE;
|
||||
Standard_EXPORT void WriteExtendedLine(const TCollection_ExtendedString& buffer)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
//! read from the first none space character position to the end of line.
|
||||
Standard_EXPORT void ReadString(TCollection_AsciiString& buffer) Standard_OVERRIDE;
|
||||
|
||||
};
|
||||
|
||||
#endif // _FSD_CmpFile_HeaderFile
|
||||
|
1080
src/FSD/FSD_File.cxx
1080
src/FSD/FSD_File.cxx
File diff suppressed because it is too large
Load Diff
@@ -23,22 +23,20 @@
|
||||
class TCollection_AsciiString;
|
||||
class TCollection_ExtendedString;
|
||||
|
||||
DEFINE_STANDARD_HANDLE(FSD_File,Storage_BaseDriver)
|
||||
DEFINE_STANDARD_HANDLE(FSD_File, Storage_BaseDriver)
|
||||
|
||||
//! A general driver which defines as a file, the
|
||||
//! physical container for data to be stored or retrieved.
|
||||
class FSD_File : public Storage_BaseDriver
|
||||
class FSD_File : public Storage_BaseDriver
|
||||
{
|
||||
public:
|
||||
DEFINE_STANDARD_RTTIEXT(FSD_File,Storage_BaseDriver)
|
||||
DEFINE_STANDARD_RTTIEXT(FSD_File, Storage_BaseDriver)
|
||||
|
||||
public:
|
||||
|
||||
//! Constructs a driver defining as a file, the physical
|
||||
//! container for data to be stored or retrieved.
|
||||
//! Use the function Open to give the name of the driven file.
|
||||
Standard_EXPORT FSD_File();
|
||||
|
||||
|
||||
//! Assigns as aName the name of the file to be
|
||||
//! driven by this driver. aMode precises if the file is
|
||||
@@ -46,167 +44,193 @@ public:
|
||||
//! The function returns Storage_VSOk if the file
|
||||
//! is opened correctly, or any other value of the
|
||||
//! Storage_Error enumeration which specifies the problem encountered.
|
||||
Standard_EXPORT virtual Storage_Error Open (const TCollection_AsciiString& aName, const Storage_OpenMode aMode) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error Open(const TCollection_AsciiString& aName,
|
||||
const Storage_OpenMode aMode) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Standard_Boolean IsEnd() Standard_OVERRIDE;
|
||||
|
||||
|
||||
//! return position in the file. Return -1 upon error.
|
||||
Standard_EXPORT virtual Storage_Position Tell() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT static Storage_Error IsGoodFileType (const TCollection_AsciiString& aName);
|
||||
|
||||
|
||||
Standard_EXPORT static Storage_Error IsGoodFileType(const TCollection_AsciiString& aName);
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginWriteInfoSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void WriteInfo (const Standard_Integer nbObj,
|
||||
const TCollection_AsciiString& dbVersion,
|
||||
const TCollection_AsciiString& date,
|
||||
const TCollection_AsciiString& schemaName,
|
||||
const TCollection_AsciiString& schemaVersion,
|
||||
const TCollection_ExtendedString& appName,
|
||||
const TCollection_AsciiString& appVersion,
|
||||
const TCollection_ExtendedString& objectType,
|
||||
const TColStd_SequenceOfAsciiString& userInfo) Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT virtual void WriteInfo(const Standard_Integer nbObj,
|
||||
const TCollection_AsciiString& dbVersion,
|
||||
const TCollection_AsciiString& date,
|
||||
const TCollection_AsciiString& schemaName,
|
||||
const TCollection_AsciiString& schemaVersion,
|
||||
const TCollection_ExtendedString& appName,
|
||||
const TCollection_AsciiString& appVersion,
|
||||
const TCollection_ExtendedString& objectType,
|
||||
const TColStd_SequenceOfAsciiString& userInfo)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndWriteInfoSection() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginReadInfoSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void ReadInfo (Standard_Integer& nbObj,
|
||||
TCollection_AsciiString& dbVersion,
|
||||
TCollection_AsciiString& date,
|
||||
TCollection_AsciiString& schemaName,
|
||||
TCollection_AsciiString& schemaVersion,
|
||||
TCollection_ExtendedString& appName,
|
||||
TCollection_AsciiString& appVersion,
|
||||
TCollection_ExtendedString& objectType,
|
||||
TColStd_SequenceOfAsciiString& userInfo) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void ReadCompleteInfo (Standard_IStream& theIStream, Handle(Storage_Data)& theData) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void ReadInfo(Standard_Integer& nbObj,
|
||||
TCollection_AsciiString& dbVersion,
|
||||
TCollection_AsciiString& date,
|
||||
TCollection_AsciiString& schemaName,
|
||||
TCollection_AsciiString& schemaVersion,
|
||||
TCollection_ExtendedString& appName,
|
||||
TCollection_AsciiString& appVersion,
|
||||
TCollection_ExtendedString& objectType,
|
||||
TColStd_SequenceOfAsciiString& userInfo) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void ReadCompleteInfo(Standard_IStream& theIStream,
|
||||
Handle(Storage_Data)& theData) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndReadInfoSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginWriteCommentSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void WriteComment (const TColStd_SequenceOfExtendedString& userComments) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndWriteCommentSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginReadCommentSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void ReadComment (TColStd_SequenceOfExtendedString& userComments) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndReadCommentSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginWriteTypeSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void SetTypeSectionSize (const Standard_Integer aSize) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void WriteTypeInformations (const Standard_Integer typeNum,
|
||||
const TCollection_AsciiString& typeName) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndWriteTypeSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginReadTypeSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Standard_Integer TypeSectionSize() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void ReadTypeInformations (Standard_Integer& typeNum, TCollection_AsciiString& typeName) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndReadTypeSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginWriteRootSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void SetRootSectionSize (const Standard_Integer aSize) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void WriteRoot (const TCollection_AsciiString& rootName,
|
||||
const Standard_Integer aRef,
|
||||
const TCollection_AsciiString& aType) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndWriteRootSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginReadRootSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Standard_Integer RootSectionSize() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void ReadRoot (TCollection_AsciiString& rootName,
|
||||
Standard_Integer& aRef,
|
||||
TCollection_AsciiString& aType) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndReadRootSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginWriteRefSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void SetRefSectionSize (const Standard_Integer aSize) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void WriteReferenceType (const Standard_Integer reference, const Standard_Integer typeNum) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndWriteRefSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginReadRefSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Standard_Integer RefSectionSize() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void ReadReferenceType (Standard_Integer& reference, Standard_Integer& typeNum) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndReadRefSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginWriteDataSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void WritePersistentObjectHeader (const Standard_Integer aRef, const Standard_Integer aType) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void BeginWritePersistentObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void BeginWriteObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void EndWriteObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void EndWritePersistentObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndWriteDataSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginReadDataSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void ReadPersistentObjectHeader (Standard_Integer& aRef, Standard_Integer& aType) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void BeginReadPersistentObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void BeginReadObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void EndReadObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void EndReadPersistentObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndReadDataSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void SkipObject() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& PutReference (const Standard_Integer aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& PutCharacter (const Standard_Character aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& PutExtCharacter(const Standard_ExtCharacter aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& PutInteger (const Standard_Integer aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& PutBoolean (const Standard_Boolean aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& PutReal (const Standard_Real aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& PutShortReal (const Standard_ShortReal aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& GetReference (Standard_Integer& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& GetCharacter (Standard_Character& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& GetExtCharacter (Standard_ExtCharacter& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& GetInteger (Standard_Integer& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& GetBoolean (Standard_Boolean& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& GetReal (Standard_Real& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& GetShortReal (Standard_ShortReal& aValue) Standard_OVERRIDE;
|
||||
Standard_EXPORT virtual Storage_Error BeginWriteCommentSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void WriteComment(const TColStd_SequenceOfExtendedString& userComments)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndWriteCommentSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginReadCommentSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void ReadComment(TColStd_SequenceOfExtendedString& userComments)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndReadCommentSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginWriteTypeSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void SetTypeSectionSize(const Standard_Integer aSize) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void WriteTypeInformations(const Standard_Integer typeNum,
|
||||
const TCollection_AsciiString& typeName)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndWriteTypeSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginReadTypeSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Standard_Integer TypeSectionSize() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void ReadTypeInformations(Standard_Integer& typeNum,
|
||||
TCollection_AsciiString& typeName)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndReadTypeSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginWriteRootSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void SetRootSectionSize(const Standard_Integer aSize) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void WriteRoot(const TCollection_AsciiString& rootName,
|
||||
const Standard_Integer aRef,
|
||||
const TCollection_AsciiString& aType) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndWriteRootSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginReadRootSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Standard_Integer RootSectionSize() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void ReadRoot(TCollection_AsciiString& rootName,
|
||||
Standard_Integer& aRef,
|
||||
TCollection_AsciiString& aType) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndReadRootSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginWriteRefSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void SetRefSectionSize(const Standard_Integer aSize) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void WriteReferenceType(const Standard_Integer reference,
|
||||
const Standard_Integer typeNum) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndWriteRefSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginReadRefSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Standard_Integer RefSectionSize() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void ReadReferenceType(Standard_Integer& reference,
|
||||
Standard_Integer& typeNum) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndReadRefSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginWriteDataSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void WritePersistentObjectHeader(const Standard_Integer aRef,
|
||||
const Standard_Integer aType)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void BeginWritePersistentObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void BeginWriteObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void EndWriteObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void EndWritePersistentObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndWriteDataSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error BeginReadDataSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void ReadPersistentObjectHeader(Standard_Integer& aRef,
|
||||
Standard_Integer& aType)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void BeginReadPersistentObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void BeginReadObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void EndReadObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void EndReadPersistentObjectData() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_Error EndReadDataSection() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual void SkipObject() Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& PutReference(const Standard_Integer aValue)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& PutCharacter(const Standard_Character aValue)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& PutExtCharacter(const Standard_ExtCharacter aValue)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& PutInteger(const Standard_Integer aValue)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& PutBoolean(const Standard_Boolean aValue)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& PutReal(const Standard_Real aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& PutShortReal(const Standard_ShortReal aValue)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& GetReference(Standard_Integer& aValue)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& GetCharacter(Standard_Character& aValue)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& GetExtCharacter(Standard_ExtCharacter& aValue)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& GetInteger(Standard_Integer& aValue)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& GetBoolean(Standard_Boolean& aValue)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& GetReal(Standard_Real& aValue) Standard_OVERRIDE;
|
||||
|
||||
Standard_EXPORT virtual Storage_BaseDriver& GetShortReal(Standard_ShortReal& aValue)
|
||||
Standard_OVERRIDE;
|
||||
|
||||
//! Closes the file driven by this driver. This file was
|
||||
//! opened by the last call to the function Open.
|
||||
@@ -214,38 +238,35 @@ public:
|
||||
//! closure is correctly done, or any other value of
|
||||
//! the Storage_Error enumeration which specifies the problem encountered.
|
||||
Standard_EXPORT virtual Storage_Error Close() Standard_OVERRIDE;
|
||||
|
||||
|
||||
Standard_EXPORT void Destroy();
|
||||
~FSD_File()
|
||||
{
|
||||
Destroy();
|
||||
}
|
||||
|
||||
~FSD_File() { Destroy(); }
|
||||
|
||||
Standard_EXPORT static Standard_CString MagicNumber();
|
||||
|
||||
protected:
|
||||
|
||||
//! read from the current position to the end of line.
|
||||
Standard_EXPORT virtual void ReadLine (TCollection_AsciiString& buffer);
|
||||
|
||||
Standard_EXPORT virtual void ReadLine(TCollection_AsciiString& buffer);
|
||||
|
||||
//! read from the current position to the next white space or end of line.
|
||||
Standard_EXPORT virtual void ReadWord (TCollection_AsciiString& buffer);
|
||||
|
||||
Standard_EXPORT virtual void ReadWord(TCollection_AsciiString& buffer);
|
||||
|
||||
//! read extended chars (unicode) from the current position to the end of line.
|
||||
Standard_EXPORT virtual void ReadExtendedLine (TCollection_ExtendedString& buffer);
|
||||
|
||||
Standard_EXPORT virtual void ReadExtendedLine(TCollection_ExtendedString& buffer);
|
||||
|
||||
//! write from the current position to the end of line.
|
||||
Standard_EXPORT virtual void WriteExtendedLine (const TCollection_ExtendedString& buffer);
|
||||
|
||||
Standard_EXPORT virtual void WriteExtendedLine(const TCollection_ExtendedString& buffer);
|
||||
|
||||
//! read <rsize> character from the current position.
|
||||
Standard_EXPORT virtual void ReadChar (TCollection_AsciiString& buffer, const Standard_Size rsize);
|
||||
|
||||
Standard_EXPORT virtual void ReadChar(TCollection_AsciiString& buffer, const Standard_Size rsize);
|
||||
|
||||
//! read from the first none space character position to the end of line.
|
||||
Standard_EXPORT virtual void ReadString (TCollection_AsciiString& buffer);
|
||||
|
||||
Standard_EXPORT virtual void ReadString(TCollection_AsciiString& buffer);
|
||||
|
||||
Standard_EXPORT virtual void FlushEndOfLine();
|
||||
|
||||
Standard_EXPORT virtual Storage_Error FindTag (const Standard_CString aTag);
|
||||
|
||||
Standard_EXPORT virtual Storage_Error FindTag(const Standard_CString aTag);
|
||||
|
||||
protected:
|
||||
FSD_FStream myStream;
|
||||
|
@@ -18,7 +18,8 @@
|
||||
|
||||
#include <Standard_PrimitiveTypes.hxx>
|
||||
|
||||
struct FSD_FileHeader {
|
||||
struct FSD_FileHeader
|
||||
{
|
||||
Standard_Integer testindian;
|
||||
Standard_Integer binfo;
|
||||
Standard_Integer einfo;
|
||||
@@ -31,7 +32,7 @@ struct FSD_FileHeader {
|
||||
Standard_Integer bref;
|
||||
Standard_Integer eref;
|
||||
Standard_Integer bdata;
|
||||
Standard_Integer edata;
|
||||
Standard_Integer edata;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user