Go to the documentation of this file.
10 #ifndef PDXPARSER_H_INCLUDED
11 #define PDXPARSER_H_INCLUDED
13 #include <boost/scoped_ptr.hpp>
15 #include <librevenge/librevenge.h>
16 #include <librevenge-stream/librevenge-stream.h>
18 #define PDX_CODE(s) ((s[0] << 24) | (s[1] << 16) | (s[2] << 8) | s[3])
104 librevenge::RVNGInputStream *
getDataRecords(
unsigned first,
unsigned last)
const;
110 virtual void readDataRecord(librevenge::RVNGInputStream *record,
bool last =
false) = 0;
124 #endif // PDXPARSER_H_INCLUDED
unsigned m_creator
Definition: PDXParser.cpp:37
unsigned m_version
Definition: PDXParser.cpp:33
void readHeader()
Definition: PDXParser.cpp:192
HeaderData m_header
Definition: PDXParser.cpp:67
virtual void readDataRecords()
Definition: PDXParser.cpp:183
librevenge::RVNGInputStream * getIndexRecord() const
Return a stream for the format's index record.
Definition: PDXParser.cpp:139
librevenge::RVNGTextInterface * getDocument() const
Get the document generator used for this parsing run.
Definition: PDXParser.cpp:123
Definition: CHMParser.cpp:21
Definition: PDXParser.h:26
librevenge::RVNGInputStream * getDataRecord(unsigned n) const
Return a stream for the n-th data record.
Definition: PDXParser.cpp:149
Definition: PDXParser.cpp:64
virtual void readIndexRecord(librevenge::RVNGInputStream *record)=0
librevenge::RVNGInputStream * getAppInfoRecord() const
Return a stream for the format's appInfo record, if it is present.
Definition: PDXParser.cpp:133
bool parse()
Parse input and produce output to document.
Definition: PDXParser.cpp:102
@ i
Definition: EBOOKHTMLToken.h:88
librevenge::RVNGTextInterface *const m_document
Definition: FB2Parser.cpp:56
librevenge::RVNGTextInterface * m_document
Definition: PDXParser.cpp:69
@ creator
Definition: EBOOKOPFToken.h:52
PDXParserImpl & operator=(const PDXParserImpl &other)
XMLTreeNodePtr_t document
Definition: EBOOKHTMLParser.cpp:169
unsigned m_numberOfRecords
Definition: PDXParser.cpp:39
virtual void readSortInfoRecord(librevenge::RVNGInputStream *record)=0
librevenge::RVNGInputStream * getDataRecords() const
Return a stream for all data records.
Definition: PDXParser.cpp:154
std::vector< unsigned > m_recordOffsets
Definition: PDXParser.cpp:40
unsigned getDataRecordCount() const
Return the number of data records in the document.
Definition: PDXParser.cpp:144
@ input
Definition: EBOOKHTMLToken.h:91
uint16_t readU16(librevenge::RVNGInputStream *input, bool bigEndian)
Definition: libebook_utils.cpp:55
uint8_t readU8(librevenge::RVNGInputStream *input, bool)
Definition: libebook_utils.cpp:43
PDXParser(const PDXParser &other)
virtual void readAppInfoRecord(librevenge::RVNGInputStream *record)=0
string name
Definition: CHMStream.cpp:80
virtual ~PDXParser()=0
Definition: PDXParser.cpp:98
uint32_t readU32(librevenge::RVNGInputStream *input, bool bigEndian)
Definition: libebook_utils.cpp:71
virtual void readDataRecord(librevenge::RVNGInputStream *record, bool last=false)=0
boost::scoped_ptr< PDXParserImpl > m_impl
Definition: PDXParser.h:119
unsigned m_nextRecordListID
Definition: PDXParser.cpp:38
librevenge::RVNGInputStream * getRecordStream(unsigned n) const
Definition: PDXParser.cpp:232
librevenge::RVNGInputStream * m_input
Definition: PDXParser.cpp:68
PDXParserImpl(const PDXParserImpl &other)
PDXParserImpl(librevenge::RVNGInputStream *input, librevenge::RVNGTextInterface *document)
Definition: PDXParser.cpp:77
unsigned m_appInfoID
Definition: PDXParser.cpp:34
const char * getName() const
Definition: PDXParser.cpp:128
std::string m_name
Definition: PDXParser.cpp:32
unsigned m_sortInfoID
Definition: PDXParser.cpp:35
EBOOKDocument::Type type
Definition: EBOOKDocument.cpp:328
PDXParser & operator=(const PDXParser &other)
unsigned m_type
Definition: PDXParser.cpp:36
A stream representing a view into an another stream.
Definition: EBOOKStreamView.h:26
librevenge::RVNGInputStream * m_input
Definition: PLKRParser.cpp:911
void skip(librevenge::RVNGInputStream *input, unsigned long numBytes)
Definition: libebook_utils.cpp:143
int m_header
Definition: EBOOKOutputElements.cpp:476
Generated for libe-book by
doxygen 1.8.18