MarinerWrtParser Class Reference

the main class to read a Mariner Write file More...

#include <MarinerWrtParser.hxx>

Inheritance diagram for MarinerWrtParser:
MWAWTextParser MWAWParser

Public Member Functions

 MarinerWrtParser (MWAWInputStreamPtr input, MWAWRSRCParserPtr rsrcParser, MWAWHeader *header)
 constructor More...
 
virtual ~MarinerWrtParser ()
 destructor More...
 
bool checkHeader (MWAWHeader *header, bool strict=false)
 checks if the document header is correct (or not) More...
 
void parse (librevenge::RVNGTextInterface *documentInterface)
 virtual function used to parse the input More...
 
- Public Member Functions inherited from MWAWParser
virtual ~MWAWParser ()
 virtual destructor More...
 
int version () const
 returns the works version More...
 
MWAWParserStatePtr getParserState ()
 returns the parser state More...
 
MWAWHeadergetHeader ()
 returns the header More...
 
MWAWInputStreamPtrgetInput ()
 returns the actual input More...
 
MWAWListenerPtr getMainListener ()
 returns the main listener More...
 
MWAWGraphicListenerPtrgetGraphicListener ()
 returns the graphic listener More...
 
MWAWPresentationListenerPtrgetPresentationListener ()
 returns the presentation listener More...
 
MWAWSpreadsheetListenerPtrgetSpreadsheetListener ()
 returns the spreadsheet listener More...
 
MWAWTextListenerPtrgetTextListener ()
 returns the text listener More...
 
MWAWFontConverterPtrgetFontConverter ()
 returns the font converter More...
 
MWAWPageSpan const & getPageSpan () const
 returns the actual page dimension More...
 
MWAWPageSpangetPageSpan ()
 returns the actual page dimension More...
 
double getFormLength () const
 returns the form length More...
 
double getFormWidth () const
 returns the form width More...
 
double getPageLength () const
 returns the page length (form length without margin ) More...
 
double getPageWidth () const
 returns the page width (form width without margin ) More...
 
MWAWRSRCParserPtrgetRSRCParser ()
 returns the rsrc parser More...
 
libmwaw::DebugFileascii ()
 a DebugFile used to write what we recognize when we parse the document More...
 

Protected Member Functions

void init ()
 inits all internal variables More...
 
void createDocument (librevenge::RVNGTextInterface *documentInterface)
 creates the listener which will be associated to the document More...
 
bool createZones ()
 finds the different objects zones More...
 
bool readZone (int &actZone, bool onlyTest=false)
 try to read a zone More...
 
MWAWVec2f getPageLeftTop () const
 returns the page left top point ( in inches) More...
 
MWAWSection getSection (int zoneId) const
 returns the section information corresponding to a zone More...
 
void newPage (int number)
 adds a new page More...
 
int getZoneId (uint32_t fileId, bool &endNote)
 return a zoneid corresponding to a fileId (or -1) and set the endnote flag More...
 
void sendText (int zoneId)
 ask the text parser to send a zone More...
 
float getPatternPercent (int id) const
 return the pattern percent which corresponds to an id (or -1) More...
 
void sendToken (int zoneId, long tokenId)
 ask the graph parser to send a token More...
 
bool readEntryHeader (MarinerWrtEntry &entry)
 try to read an entry header More...
 
bool decodeZone (std::vector< MarinerWrtStruct > &dataList, long numData=999999)
 try to decode a zone More...
 
bool readSeparator (MarinerWrtEntry const &entry)
 try to read the separator of differents part More...
 
bool readZoneDim (MarinerWrtEntry const &entry, int zoneId)
 try to read the zone dimension ( normal and with margin ) More...
 
bool readZoneHeader (MarinerWrtEntry const &entry, int zoneId, bool onlyTest)
 try to read the zone header More...
 
bool readZoneb (MarinerWrtEntry const &entry, int zoneId)
 try to read a unknown zone : one by separator?, borderdim? More...
 
bool readZonec (MarinerWrtEntry const &entry, int zoneId)
 try to read a unknown zone of 9 int More...
 
bool readZone13 (MarinerWrtEntry const &entry, int zoneId)
 try to read a unknown zone of 23 int More...
 
bool readDocInfo (MarinerWrtEntry const &entry, int zoneId)
 try to read the doc info zone More...
 
bool readPrintInfo (MarinerWrtEntry const &entry)
 try to read a printinfo zone More...
 
bool readCPRT (MarinerWrtEntry const &entry)
 try to read a xml printinfo zone More...
 
bool readNumbersString (int num, std::vector< long > &res)
 try to read a number or a list of number entries More...
 
- Protected Member Functions inherited from MWAWTextParser
 MWAWTextParser (MWAWInputStreamPtr input, MWAWRSRCParserPtr rsrcParser, MWAWHeader *header)
 constructor (protected) More...
 
 MWAWTextParser (MWAWParserStatePtr state)
 constructor using a state More...
 
- Protected Member Functions inherited from MWAWParser
 MWAWParser (MWAWParserState::Type type, MWAWInputStreamPtr input, MWAWRSRCParserPtr rsrcParser, MWAWHeader *header)
 constructor (protected) More...
 
 MWAWParser (MWAWParserStatePtr state)
 constructor using a state More...
 
void setVersion (int vers)
 sets the document's version More...
 
void setGraphicListener (MWAWGraphicListenerPtr &listener)
 sets the graphic listener More...
 
void resetGraphicListener ()
 resets the listener More...
 
void setPresentationListener (MWAWPresentationListenerPtr &listener)
 sets the presentation listener More...
 
void resetPresentationListener ()
 resets the listener More...
 
void setSpreadsheetListener (MWAWSpreadsheetListenerPtr &listener)
 sets the spreadsheet listener More...
 
void resetSpreadsheetListener ()
 resets the listener More...
 
void setTextListener (MWAWTextListenerPtr &listener)
 sets the text listener More...
 
void resetTextListener ()
 resets the listener More...
 
void setFontConverter (MWAWFontConverterPtr fontConverter)
 sets the font convertor More...
 
void setAsciiName (char const *name)
 Debugging: change the default ascii file. More...
 
std::string const & asciiName () const
 return the ascii file name More...
 

Protected Attributes

shared_ptr
< MarinerWrtParserInternal::State
m_state
 the state More...
 
bool m_pageMarginsSpanSet
 a flag to know if page margins span are set More...
 
shared_ptr< MarinerWrtGraphm_graphParser
 the graph parser More...
 
shared_ptr< MarinerWrtTextm_textParser
 the text parser More...
 

Friends

class MarinerWrtGraph
 
class MarinerWrtText
 
class MarinerWrtParserInternal::SubDocument
 

Detailed Description

the main class to read a Mariner Write file

Constructor & Destructor Documentation

MarinerWrtParser::MarinerWrtParser ( MWAWInputStreamPtr  input,
MWAWRSRCParserPtr  rsrcParser,
MWAWHeader header 
)

constructor

MarinerWrtParser::~MarinerWrtParser ( )
virtual

destructor

Member Function Documentation

bool MarinerWrtParser::checkHeader ( MWAWHeader header,
bool  strict = false 
)
virtual

checks if the document header is correct (or not)

Implements MWAWParser.

Referenced by parse().

void MarinerWrtParser::createDocument ( librevenge::RVNGTextInterface *  documentInterface)
protected

creates the listener which will be associated to the document

Referenced by parse().

bool MarinerWrtParser::createZones ( )
protected

finds the different objects zones

Referenced by parse().

MWAWVec2f MarinerWrtParser::getPageLeftTop ( ) const
protected

returns the page left top point ( in inches)

float MarinerWrtParser::getPatternPercent ( int  id) const
protected

return the pattern percent which corresponds to an id (or -1)

Referenced by MarinerWrtText::readRulers(), and MarinerWrtText::sendTable().

MWAWSection MarinerWrtParser::getSection ( int  zoneId) const
protected

returns the section information corresponding to a zone

Referenced by MarinerWrtText::send().

int MarinerWrtParser::getZoneId ( uint32_t  fileId,
bool &  endNote 
)
protected

return a zoneid corresponding to a fileId (or -1) and set the endnote flag

Referenced by MarinerWrtGraph::sendToken().

void MarinerWrtParser::init ( )
protected

inits all internal variables

Referenced by MarinerWrtParser().

void MarinerWrtParser::newPage ( int  number)
protected

adds a new page

Referenced by MarinerWrtText::send().

void MarinerWrtParser::parse ( librevenge::RVNGTextInterface *  documentInterface)
virtual

virtual function used to parse the input

Implements MWAWTextParser.

bool MarinerWrtParser::readCPRT ( MarinerWrtEntry const &  entry)
protected

try to read a xml printinfo zone

Referenced by readZone().

bool MarinerWrtParser::readDocInfo ( MarinerWrtEntry const &  entry,
int  zoneId 
)
protected

try to read the doc info zone

Referenced by readZone().

bool MarinerWrtParser::readEntryHeader ( MarinerWrtEntry entry)
protected

try to read an entry header

Referenced by readZone().

bool MarinerWrtParser::readNumbersString ( int  num,
std::vector< long > &  res 
)
protected

try to read a number or a list of number entries

Referenced by decodeZone(), and readEntryHeader().

bool MarinerWrtParser::readPrintInfo ( MarinerWrtEntry const &  entry)
protected

try to read a printinfo zone

Referenced by readZone().

bool MarinerWrtParser::readSeparator ( MarinerWrtEntry const &  entry)
protected

try to read the separator of differents part

Referenced by readZone().

bool MarinerWrtParser::readZone ( int &  actZone,
bool  onlyTest = false 
)
protected

try to read a zone

Referenced by checkHeader(), and createZones().

bool MarinerWrtParser::readZone13 ( MarinerWrtEntry const &  entry,
int  zoneId 
)
protected

try to read a unknown zone of 23 int

Referenced by readZone().

bool MarinerWrtParser::readZoneb ( MarinerWrtEntry const &  entry,
int  zoneId 
)
protected

try to read a unknown zone : one by separator?, borderdim?

Referenced by readZone().

bool MarinerWrtParser::readZonec ( MarinerWrtEntry const &  entry,
int  zoneId 
)
protected

try to read a unknown zone of 9 int

Referenced by readZone().

bool MarinerWrtParser::readZoneDim ( MarinerWrtEntry const &  entry,
int  zoneId 
)
protected

try to read the zone dimension ( normal and with margin )

Referenced by readZone().

bool MarinerWrtParser::readZoneHeader ( MarinerWrtEntry const &  entry,
int  zoneId,
bool  onlyTest 
)
protected

try to read the zone header

Referenced by readZone().

void MarinerWrtParser::sendText ( int  zoneId)
protected

ask the text parser to send a zone

Referenced by MarinerWrtParserInternal::SubDocument::parse(), and MarinerWrtGraph::sendText().

void MarinerWrtParser::sendToken ( int  zoneId,
long  tokenId 
)
protected

ask the graph parser to send a token

Referenced by MarinerWrtText::send().

Friends And Related Function Documentation

friend class MarinerWrtGraph
friend

Referenced by init().

friend class MarinerWrtText
friend

Referenced by init().

Member Data Documentation

shared_ptr<MarinerWrtGraph> MarinerWrtParser::m_graphParser
protected

the graph parser

Referenced by createDocument(), getPatternPercent(), init(), parse(), readZone(), and sendToken().

bool MarinerWrtParser::m_pageMarginsSpanSet
protected

a flag to know if page margins span are set

Referenced by readDocInfo(), and readPrintInfo().

shared_ptr<MarinerWrtText> MarinerWrtParser::m_textParser
protected

the text parser

Referenced by createDocument(), init(), parse(), readZone(), and sendText().


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

Generated on Thu Jul 9 2015 20:26:38 for libmwaw by doxygen 1.8.8