File indexing completed on 2025-01-18 10:15:15
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022 #if !defined(XERCESC_INCLUDE_GUARD_XMLFILEMGR_HPP)
0023 #define XERCESC_INCLUDE_GUARD_XMLFILEMGR_HPP
0024
0025 #include <xercesc/util/XercesDefs.hpp>
0026 #include <xercesc/util/XMemory.hpp>
0027
0028 XERCES_CPP_NAMESPACE_BEGIN
0029
0030 typedef void* FileHandle;
0031 #define XERCES_Invalid_File_Handle 0
0032
0033
0034 class XMLFileMgr : public XMemory
0035 {
0036 public:
0037 XMLFileMgr() {}
0038 virtual ~XMLFileMgr() {}
0039
0040
0041 virtual FileHandle fileOpen(const XMLCh* path, bool toWrite, MemoryManager* const manager) = 0;
0042 virtual FileHandle fileOpen(const char* path, bool toWrite, MemoryManager* const manager) = 0;
0043 virtual FileHandle openStdIn(MemoryManager* const manager) = 0;
0044
0045 virtual void fileClose(FileHandle f, MemoryManager* const manager) = 0;
0046 virtual void fileReset(FileHandle f, MemoryManager* const manager) = 0;
0047
0048 virtual XMLFilePos curPos(FileHandle f, MemoryManager* const manager) = 0;
0049 virtual XMLFilePos fileSize(FileHandle f, MemoryManager* const manager) = 0;
0050
0051 virtual XMLSize_t fileRead(FileHandle f, XMLSize_t byteCount, XMLByte* buffer, MemoryManager* const manager) = 0;
0052 virtual void fileWrite(FileHandle f, XMLSize_t byteCount, const XMLByte* buffer, MemoryManager* const manager) = 0;
0053
0054
0055 virtual XMLCh* getFullPath(const XMLCh* const srcPath, MemoryManager* const manager) = 0;
0056 virtual XMLCh* getCurrentDirectory(MemoryManager* const manager) = 0;
0057 virtual bool isRelative(const XMLCh* const toCheck, MemoryManager* const manager) = 0;
0058 };
0059
0060 XERCES_CPP_NAMESPACE_END
0061
0062 #endif
0063