1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-14 13:30:48 +03:00

Integration of OCCT 6.5.0 from SVN

This commit is contained in:
bugmaster
2011-03-16 07:30:28 +00:00
committed by bugmaster
parent 4903637061
commit 7fd59977df
16375 changed files with 3882564 additions and 0 deletions

81
src/LDOM/LDOM_XmlReader.hxx Executable file
View File

@@ -0,0 +1,81 @@
// File: LDOM_XmlReader.hxx
// Created: 20.07.01 15:27:57
// Author: Alexander GRIGORIEV
// Copyright: OpenCascade 2001
// History: AGV 060302: Input from istream
// AGV 130302: bug corr: was error if strlen(root_elem_name) < 7
#ifndef LDOM_XmlReader_HeaderFile
#define LDOM_XmlReader_HeaderFile
//#define XML_BUFFER_SIZE 1000
#define XML_BUFFER_SIZE 20480
#include <LDOM_BasicElement.hxx>
class TCollection_AsciiString;
class LDOM_OSStream;
// Class LDOM_XmlReader
//
class LDOM_XmlReader
{
public:
enum RecordType {
XML_UNKNOWN,
XML_HEADER,
XML_DOCTYPE,
XML_COMMENT,
XML_START_ELEMENT,
XML_END_ELEMENT,
XML_FULL_ELEMENT,
XML_TEXT,
XML_CDATA,
XML_EOF
};
// ---------- PUBLIC METHODS ----------
LDOM_XmlReader (const int aFileDes, const Handle(LDOM_MemManager)& aDocument,
TCollection_AsciiString& anErrorString);
// Constructor - takes a file descriptor for input
LDOM_XmlReader (istream& anInput, const Handle(LDOM_MemManager)& aDocument,
TCollection_AsciiString& anErrorString);
// Constructor - takes an istream for input
RecordType ReadRecord (LDOM_OSStream& theData);
// reading a markup or other element of XML format
LDOM_BasicElement& GetElement () const { return * myElement; }
// get the last element retrieved from the stream
static Standard_Boolean getInteger (LDOMBasicString& theValue,
const char * theStart,
const char * theEnd);
// try convert string theStart to LDOM_AsciiInteger, return False on success
private:
// ---------- PRIVATE (PROHIBITED) METHODS ----------
LDOM_XmlReader (const LDOM_XmlReader& theOther);
// Copy constructor
LDOM_XmlReader& operator = (const LDOM_XmlReader& theOther);
// Assignment
private:
// ---------- PRIVATE FIELDS ----------
Standard_Boolean myEOF;
int myFileDes; // alternative 1: file descriptor
istream& myIStream; // alternative 2: istream
TCollection_AsciiString & myError;
Handle(LDOM_MemManager) myDocument;
LDOM_BasicElement * myElement;
const LDOM_BasicNode * myLastChild; // optim. reading attributes
const char * myPtr;
const char * myEndPtr;
char myBuffer [XML_BUFFER_SIZE+4];
};
#endif