17 #ifndef PDXPARSER_H_INCLUDED
18 #define PDXPARSER_H_INCLUDED
20 #include <boost/scoped_ptr.hpp>
22 class WPXDocumentInterface;
25 #define PDX_CODE(s) ((s[0] << 24) | (s[1] << 16) | (s[2] << 8) | s[3])
62 PDXParser(WPXInputStream *input, WPXDocumentInterface *document);
117 WPXInputStream *
getDataRecords(
unsigned first,
unsigned last)
const;
132 virtual void readDataRecord(WPXInputStream *record,
bool last =
false) = 0;
146 #endif // PDXPARSER_H_INCLUDED
virtual void readIndexRecord(WPXInputStream *record)=0
WPXDocumentInterface * getDocument() const
Get the document generator used for this parsing run.
Definition: PDXParser.cpp:131
bool isSupported()
Test whether the input document is in supported format.
Definition: PDXParser.cpp:100
virtual void readSortInfoRecord(WPXInputStream *record)=0
WPXInputStream * getIndexRecord() const
Return a stream for the format's index record.
Definition: PDXParser.cpp:147
WPXInputStream * getAppInfoRecord() const
Return a stream for the format's appInfo record, if it is present.
Definition: PDXParser.cpp:141
WPXInputStream * getDataRecords() const
Return a stream for all data records.
Definition: PDXParser.cpp:162
PDXParser & operator=(const PDXParser &other)
unsigned getDataRecordCount() const
Return the number of data records in the document.
Definition: PDXParser.cpp:152
Definition: PDXParser.h:32
virtual void readAppInfoRecord(WPXInputStream *record)=0
virtual void readDataRecord(WPXInputStream *record, bool last=false)=0
bool parse()
Parse input and produce output to document.
Definition: PDXParser.cpp:108
WPXInputStream * getDataRecord(unsigned n) const
Return a stream for the n-th data record.
Definition: PDXParser.cpp:157
PDXParser(const PDXParser &other)
virtual bool isFormatSupported(unsigned type, unsigned creator)=0
Check whether a specific subformat is supported.
void readHeader()
Definition: PDXParser.cpp:200
Definition: FB2Token.h:124
WPXInputStream * getRecordStream(unsigned n) const
Definition: PDXParser.cpp:240
virtual void readDataRecords()
Definition: PDXParser.cpp:191
const char * getName() const
Definition: PDXParser.cpp:136
virtual ~PDXParser()=0
Definition: PDXParser.cpp:96
boost::scoped_ptr< PDXParserImpl > m_impl
Definition: PDXParser.h:141