libpagemaker::PMDParser Class Reference

#include <PMDParser.h>

Classes

class  RecordIterator
 
struct  ToCState
 

Public Member Functions

 PMDParser (librevenge::RVNGInputStream *, PMDCollector *)
 
void parse ()
 

Private Types

typedef std::vector< PMDRecordContainerRecordContainerList_t
 
typedef std::map< uint16_t, std::vector< unsigned > > RecordTypeMap_t
 

Private Member Functions

void parseGlobalInfo (const PMDRecordContainer &container)
 
void parseFonts ()
 
void parseColors ()
 
void parsePages (const PMDRecordContainer &container)
 
void parseShapes (uint16_t seqNum, unsigned pageID)
 
void parseLine (const PMDRecordContainer &container, unsigned recordIndex, unsigned pageID)
 
void parseTextBox (const PMDRecordContainer &container, unsigned recordIndex, unsigned pageID)
 
void parseRectangle (const PMDRecordContainer &container, unsigned recordIndex, unsigned pageID)
 
void parsePolygon (const PMDRecordContainer &container, unsigned recordIndex, unsigned pageID)
 
void parseEllipse (const PMDRecordContainer &container, unsigned recordIndex, unsigned pageID)
 
void parseBitmap (const PMDRecordContainer &container, unsigned recordIndex, unsigned pageID)
 
void parseHeader (uint32_t *tocOffset, uint16_t *tocLength)
 
void readNextRecordFromTableOfContents (ToCState &state, bool subRecord, uint16_t subRecordType=0)
 
void readTableOfContents (ToCState &state, uint32_t offset, unsigned records, bool subRecords, uint16_t subRecordType=0)
 
void parseTableOfContents (uint32_t offset, uint16_t length)
 
void parseXforms ()
 
const PMDXFormgetXForm (const uint32_t xFormId) const
 
RecordIterator beginRecordsWithSeqNumber (uint16_t seqNum) const
 
RecordIterator beginRecordsOfType (uint16_t recType) const
 
RecordIterator endRecords () const
 
PMDParseroperator= (const PMDParser &)
 
 PMDParser (const PMDParser &)
 

Private Attributes

librevenge::RVNGInputStream * m_input
 
unsigned long m_length
 
PMDCollectorm_collector
 
RecordTypeMap_t m_records
 
bool m_bigEndian
 
RecordContainerList_t m_recordsInOrder
 
std::map< uint32_t, PMDXFormm_xFormMap
 

Member Typedef Documentation

typedef std::map<uint16_t, std::vector<unsigned> > libpagemaker::PMDParser::RecordTypeMap_t
private

Constructor & Destructor Documentation

libpagemaker::PMDParser::PMDParser ( const PMDParser )
private
libpagemaker::PMDParser::PMDParser ( librevenge::RVNGInputStream *  input,
PMDCollector collector 
)

Member Function Documentation

PMDParser::RecordIterator libpagemaker::PMDParser::beginRecordsOfType ( uint16_t  recType) const
private
PMDParser::RecordIterator libpagemaker::PMDParser::beginRecordsWithSeqNumber ( uint16_t  seqNum) const
private
PMDParser::RecordIterator libpagemaker::PMDParser::endRecords ( ) const
private
const PMDXForm & libpagemaker::PMDParser::getXForm ( const uint32_t  xFormId) const
private
PMDParser& libpagemaker::PMDParser::operator= ( const PMDParser )
private
void libpagemaker::PMDParser::parse ( )
void libpagemaker::PMDParser::parseBitmap ( const PMDRecordContainer container,
unsigned  recordIndex,
unsigned  pageID 
)
private

Referenced by parseShapes().

void libpagemaker::PMDParser::parseColors ( )
private

Referenced by parse().

void libpagemaker::PMDParser::parseEllipse ( const PMDRecordContainer container,
unsigned  recordIndex,
unsigned  pageID 
)
private

Referenced by parseShapes().

void libpagemaker::PMDParser::parseFonts ( )
private

Referenced by parse().

void libpagemaker::PMDParser::parseGlobalInfo ( const PMDRecordContainer container)
private

Referenced by parse().

void libpagemaker::PMDParser::parseHeader ( uint32_t *  tocOffset,
uint16_t *  tocLength 
)
private

Referenced by parse().

void libpagemaker::PMDParser::parseLine ( const PMDRecordContainer container,
unsigned  recordIndex,
unsigned  pageID 
)
private

Referenced by parseShapes().

void libpagemaker::PMDParser::parsePages ( const PMDRecordContainer container)
private

Referenced by parse().

void libpagemaker::PMDParser::parsePolygon ( const PMDRecordContainer container,
unsigned  recordIndex,
unsigned  pageID 
)
private

Referenced by parseShapes().

void libpagemaker::PMDParser::parseRectangle ( const PMDRecordContainer container,
unsigned  recordIndex,
unsigned  pageID 
)
private

Referenced by parseShapes().

void libpagemaker::PMDParser::parseShapes ( uint16_t  seqNum,
unsigned  pageID 
)
private

Referenced by parsePages().

void libpagemaker::PMDParser::parseTableOfContents ( uint32_t  offset,
uint16_t  length 
)
private

Referenced by parse().

void libpagemaker::PMDParser::parseTextBox ( const PMDRecordContainer container,
unsigned  recordIndex,
unsigned  pageID 
)
private

Referenced by parseShapes().

void libpagemaker::PMDParser::parseXforms ( )
private

Referenced by parse().

void libpagemaker::PMDParser::readNextRecordFromTableOfContents ( ToCState state,
bool  subRecord,
uint16_t  subRecordType = 0 
)
private

Referenced by readTableOfContents().

void libpagemaker::PMDParser::readTableOfContents ( ToCState state,
uint32_t  offset,
unsigned  records,
bool  subRecords,
uint16_t  subRecordType = 0 
)
private

Member Data Documentation

unsigned long libpagemaker::PMDParser::m_length
private

Referenced by readTableOfContents().

RecordTypeMap_t libpagemaker::PMDParser::m_records
private
std::map<uint32_t, PMDXForm> libpagemaker::PMDParser::m_xFormMap
private

Referenced by getXForm(), and parseXforms().


The documentation for this class was generated from the following files:

Generated for libpagemaker by doxygen 1.8.11