libcdr::CDRParser Class Reference

#include <CDRParser.h>

Inheritance diagram for libcdr::CDRParser:
libcdr::CommonParser

Public Member Functions

 CDRParser (const std::vector< librevenge::RVNGInputStream * > &externalStreams, CDRCollector *collector)
 
virtual ~CDRParser ()
 
bool parseRecords (librevenge::RVNGInputStream *input, const std::vector< unsigned > &blockLengths=std::vector< unsigned >(), unsigned level=0)
 
bool parseWaldo (librevenge::RVNGInputStream *input)
 

Private Member Functions

 CDRParser ()
 
 CDRParser (const CDRParser &)
 
CDRParseroperator= (const CDRParser &)
 
bool parseWaldoStructure (librevenge::RVNGInputStream *input, std::stack< WaldoRecordType1 > &waldoStack, const std::map< unsigned, WaldoRecordType1 > &records1, std::map< unsigned, WaldoRecordInfo > &records2)
 
bool gatherWaldoInformation (librevenge::RVNGInputStream *input, std::vector< WaldoRecordInfo > &records, std::map< unsigned, WaldoRecordInfo > &records2, std::map< unsigned, WaldoRecordInfo > &records3, std::map< unsigned, WaldoRecordInfo > &records4, std::map< unsigned, WaldoRecordInfo > &records6, std::map< unsigned, WaldoRecordInfo > &records7, std::map< unsigned, WaldoRecordInfo > &records8, std::map< unsigned, WaldoRecordInfo > recordsOther)
 
void readWaldoRecord (librevenge::RVNGInputStream *input, const WaldoRecordInfo &info)
 
bool parseRecord (librevenge::RVNGInputStream *input, const std::vector< unsigned > &blockLengths=std::vector< unsigned >(), unsigned level=0)
 
void readRecord (unsigned fourCC, unsigned length, librevenge::RVNGInputStream *input)
 
double readRectCoord (librevenge::RVNGInputStream *input)
 
CDRColor readColor (librevenge::RVNGInputStream *input)
 
void readRectangle (librevenge::RVNGInputStream *input)
 
void readEllipse (librevenge::RVNGInputStream *input)
 
void readLineAndCurve (librevenge::RVNGInputStream *input)
 
void readBitmap (librevenge::RVNGInputStream *input)
 
void readPageSize (librevenge::RVNGInputStream *input)
 
void readWaldoBmp (librevenge::RVNGInputStream *input, unsigned length, unsigned id)
 
void readWaldoBmpf (librevenge::RVNGInputStream *input, unsigned id)
 
void readWaldoTrfd (librevenge::RVNGInputStream *input)
 
void readWaldoOutl (librevenge::RVNGInputStream *input)
 
void readWaldoFill (librevenge::RVNGInputStream *input)
 
void readWaldoLoda (librevenge::RVNGInputStream *input, unsigned length)
 
void readOpacity (librevenge::RVNGInputStream *input, unsigned length)
 
void readTrfd (librevenge::RVNGInputStream *input, unsigned length)
 
void readFild (librevenge::RVNGInputStream *input, unsigned length)
 
void readOutl (librevenge::RVNGInputStream *input, unsigned length)
 
void readLoda (librevenge::RVNGInputStream *input, unsigned length)
 
void readFlags (librevenge::RVNGInputStream *input, unsigned length)
 
void readMcfg (librevenge::RVNGInputStream *input, unsigned length)
 
void readPath (librevenge::RVNGInputStream *input)
 
void readArrw (librevenge::RVNGInputStream *input, unsigned length)
 
void readPolygonCoords (librevenge::RVNGInputStream *input)
 
void readPolygonTransform (librevenge::RVNGInputStream *input)
 
void readBmp (librevenge::RVNGInputStream *input, unsigned length)
 
void readBmpf (librevenge::RVNGInputStream *input, unsigned length)
 
void readPpdt (librevenge::RVNGInputStream *input, unsigned length)
 
void readFtil (librevenge::RVNGInputStream *input, unsigned length)
 
void readDisp (librevenge::RVNGInputStream *input, unsigned length)
 
void readVersion (librevenge::RVNGInputStream *input, unsigned length)
 
void readIccd (librevenge::RVNGInputStream *input, unsigned length)
 
void readBBox (librevenge::RVNGInputStream *input, unsigned length)
 
void readSpnd (librevenge::RVNGInputStream *input, unsigned length)
 
void readVpat (librevenge::RVNGInputStream *input, unsigned length)
 
void readUidr (librevenge::RVNGInputStream *input, unsigned length)
 
void readFont (librevenge::RVNGInputStream *input, unsigned length)
 
void readStlt (librevenge::RVNGInputStream *input, unsigned length)
 
void readStyd (librevenge::RVNGInputStream *input)
 
void readTxsm (librevenge::RVNGInputStream *input, unsigned length)
 
void readTxsm16 (librevenge::RVNGInputStream *input)
 
void readTxsm6 (librevenge::RVNGInputStream *input)
 
void readTxsm5 (librevenge::RVNGInputStream *input)
 
void readUdta (librevenge::RVNGInputStream *input)
 
void readArtisticText (librevenge::RVNGInputStream *input)
 
void readParagraphText (librevenge::RVNGInputStream *input)
 
bool _redirectX6Chunk (librevenge::RVNGInputStream **input, unsigned &length)
 
void _readX6StyleString (librevenge::RVNGInputStream *input, unsigned length, CDRCharacterStyle &style)
 

Private Attributes

std::vector< librevenge::RVNGInputStream * > m_externalStreams
 
std::map< unsigned, CDRFontm_fonts
 
std::map< unsigned, CDRFillStylem_fillStyles
 
std::map< unsigned, CDRLineStylem_lineStyles
 
std::map< unsigned, CDRPathm_arrows
 
unsigned m_version
 

Additional Inherited Members

- Protected Member Functions inherited from libcdr::CommonParser
double readRectCoord (librevenge::RVNGInputStream *input, bool bigEndian=false)
 
double readCoordinate (librevenge::RVNGInputStream *input, bool bigEndian=false)
 
unsigned readUnsigned (librevenge::RVNGInputStream *input, bool bigEndian=false)
 
unsigned short readUnsignedShort (librevenge::RVNGInputStream *input, bool bigEndian=false)
 
int readInteger (librevenge::RVNGInputStream *input, bool bigEndian=false)
 
double readAngle (librevenge::RVNGInputStream *input, bool bigEndian=false)
 
void processPath (const std::vector< std::pair< double, double > > &points, const std::vector< unsigned char > &types, CDRPath &path)
 
void outputPath (const std::vector< std::pair< double, double > > &points, const std::vector< unsigned char > &types)
 
 CommonParser (CDRCollector *collector)
 
virtual ~CommonParser ()
 
- Protected Attributes inherited from libcdr::CommonParser
CDRCollectorm_collector
 
CoordinatePrecision m_precision
 

Constructor & Destructor Documentation

libcdr::CDRParser::CDRParser ( const std::vector< librevenge::RVNGInputStream * > &  externalStreams,
libcdr::CDRCollector collector 
)
explicit
libcdr::CDRParser::~CDRParser ( )
virtual
libcdr::CDRParser::CDRParser ( )
private
libcdr::CDRParser::CDRParser ( const CDRParser )
private

Member Function Documentation

void libcdr::CDRParser::_readX6StyleString ( librevenge::RVNGInputStream *  input,
unsigned  length,
libcdr::CDRCharacterStyle style 
)
private

Referenced by readTxsm16().

bool libcdr::CDRParser::_redirectX6Chunk ( librevenge::RVNGInputStream **  input,
unsigned &  length 
)
private
bool libcdr::CDRParser::gatherWaldoInformation ( librevenge::RVNGInputStream *  input,
std::vector< WaldoRecordInfo > &  records,
std::map< unsigned, WaldoRecordInfo > &  records2,
std::map< unsigned, WaldoRecordInfo > &  records3,
std::map< unsigned, WaldoRecordInfo > &  records4,
std::map< unsigned, WaldoRecordInfo > &  records6,
std::map< unsigned, WaldoRecordInfo > &  records7,
std::map< unsigned, WaldoRecordInfo > &  records8,
std::map< unsigned, WaldoRecordInfo recordsOther 
)
private

Referenced by parseWaldo().

CDRParser& libcdr::CDRParser::operator= ( const CDRParser )
private
bool libcdr::CDRParser::parseRecord ( librevenge::RVNGInputStream *  input,
const std::vector< unsigned > &  blockLengths = std::vector<unsigned>(),
unsigned  level = 0 
)
private

Referenced by parseRecords().

bool libcdr::CDRParser::parseRecords ( librevenge::RVNGInputStream *  input,
const std::vector< unsigned > &  blockLengths = std::vector<unsigned>(),
unsigned  level = 0 
)
bool libcdr::CDRParser::parseWaldo ( librevenge::RVNGInputStream *  input)
bool libcdr::CDRParser::parseWaldoStructure ( librevenge::RVNGInputStream *  input,
std::stack< WaldoRecordType1 > &  waldoStack,
const std::map< unsigned, WaldoRecordType1 > &  records1,
std::map< unsigned, WaldoRecordInfo > &  records2 
)
private

Referenced by parseWaldo().

void libcdr::CDRParser::readArrw ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readArtisticText ( librevenge::RVNGInputStream *  input)
private

Referenced by readLoda().

void libcdr::CDRParser::readBBox ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readBitmap ( librevenge::RVNGInputStream *  input)
private

Referenced by readLoda(), and readWaldoLoda().

void libcdr::CDRParser::readBmp ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readBmpf ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

libcdr::CDRColor libcdr::CDRParser::readColor ( librevenge::RVNGInputStream *  input)
private
void libcdr::CDRParser::readDisp ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readEllipse ( librevenge::RVNGInputStream *  input)
private

Referenced by readLoda(), and readWaldoLoda().

void libcdr::CDRParser::readFild ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readFlags ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readFont ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readFtil ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readIccd ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readLineAndCurve ( librevenge::RVNGInputStream *  input)
private

Referenced by readLoda(), and readWaldoLoda().

void libcdr::CDRParser::readLoda ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readMcfg ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by parseWaldo(), and readRecord().

void libcdr::CDRParser::readOpacity ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readLoda().

void libcdr::CDRParser::readOutl ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readPageSize ( librevenge::RVNGInputStream *  input)
private

Referenced by readLoda().

void libcdr::CDRParser::readParagraphText ( librevenge::RVNGInputStream *  input)
private

Referenced by readLoda().

void libcdr::CDRParser::readPath ( librevenge::RVNGInputStream *  input)
private

Referenced by readLoda().

void libcdr::CDRParser::readPolygonCoords ( librevenge::RVNGInputStream *  input)
private

Referenced by readLoda().

void libcdr::CDRParser::readPolygonTransform ( librevenge::RVNGInputStream *  input)
private

Referenced by readLoda().

void libcdr::CDRParser::readPpdt ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readRecord ( unsigned  fourCC,
unsigned  length,
librevenge::RVNGInputStream *  input 
)
private

Referenced by parseRecord().

void libcdr::CDRParser::readRectangle ( librevenge::RVNGInputStream *  input)
private

Referenced by readLoda(), and readWaldoLoda().

double libcdr::CDRParser::readRectCoord ( librevenge::RVNGInputStream *  input)
private

Referenced by readRectangle().

void libcdr::CDRParser::readSpnd ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readStlt ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readStyd ( librevenge::RVNGInputStream *  input)
private

Referenced by readRecord().

void libcdr::CDRParser::readTrfd ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readTxsm ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readTxsm16 ( librevenge::RVNGInputStream *  input)
private

Referenced by readTxsm().

void libcdr::CDRParser::readTxsm5 ( librevenge::RVNGInputStream *  input)
private

Referenced by readTxsm().

void libcdr::CDRParser::readTxsm6 ( librevenge::RVNGInputStream *  input)
private

Referenced by readTxsm().

void libcdr::CDRParser::readUdta ( librevenge::RVNGInputStream *  input)
private

Referenced by readRecord().

void libcdr::CDRParser::readUidr ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readVersion ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readVpat ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readRecord().

void libcdr::CDRParser::readWaldoBmp ( librevenge::RVNGInputStream *  input,
unsigned  length,
unsigned  id 
)
private

Referenced by readWaldoRecord().

void libcdr::CDRParser::readWaldoBmpf ( librevenge::RVNGInputStream *  input,
unsigned  id 
)
private

Referenced by readWaldoRecord().

void libcdr::CDRParser::readWaldoFill ( librevenge::RVNGInputStream *  input)
private

Referenced by readLoda(), and readWaldoLoda().

void libcdr::CDRParser::readWaldoLoda ( librevenge::RVNGInputStream *  input,
unsigned  length 
)
private

Referenced by readWaldoRecord().

void libcdr::CDRParser::readWaldoOutl ( librevenge::RVNGInputStream *  input)
private

Referenced by readLoda(), and readWaldoLoda().

void libcdr::CDRParser::readWaldoRecord ( librevenge::RVNGInputStream *  input,
const WaldoRecordInfo info 
)
private

Referenced by parseWaldo(), and parseWaldoStructure().

void libcdr::CDRParser::readWaldoTrfd ( librevenge::RVNGInputStream *  input)
private

Referenced by readLoda(), and readWaldoLoda().

Member Data Documentation

std::map<unsigned, CDRPath> libcdr::CDRParser::m_arrows
private

Referenced by readArrw(), readOutl(), and readWaldoOutl().

std::vector<librevenge::RVNGInputStream *> libcdr::CDRParser::m_externalStreams
private

Referenced by _redirectX6Chunk().

std::map<unsigned, CDRFillStyle> libcdr::CDRParser::m_fillStyles
private
std::map<unsigned, CDRFont> libcdr::CDRParser::m_fonts
private
std::map<unsigned, CDRLineStyle> libcdr::CDRParser::m_lineStyles
private

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

Generated for libcdr by doxygen 1.8.11