the main class to read a Mariner Write file More...
#include <MRWParser.hxx>
Public Member Functions | |
| MRWParser (MWAWInputStreamPtr input, MWAWRSRCParserPtr rsrcParser, MWAWHeader *header) | |
| constructor | |
| virtual | ~MRWParser () |
| destructor | |
| bool | checkHeader (MWAWHeader *header, bool strict=false) |
| checks if the document header is correct (or not) | |
| void | parse (WPXDocumentInterface *documentInterface) |
| virtual function used to parse the input | |
Protected Member Functions | |
| void | init () |
| inits all internal variables | |
| void | createDocument (WPXDocumentInterface *documentInterface) |
| creates the listener which will be associated to the document | |
| bool | createZones () |
| finds the different objects zones | |
| bool | readZone (int &actZone, bool onlyTest=false) |
| try to read a zone | |
| Vec2f | getPageLeftTop () const |
| returns the page left top point ( in inches) | |
| MWAWSection | getSection (int zoneId) const |
| returns the section information corresponding to a zone | |
| void | newPage (int number) |
| adds a new page | |
| int | getZoneId (uint32_t fileId, bool &endNote) |
| return a zoneid corresponding to a fileId (or -1) and set the endnote flag | |
| void | sendText (int zoneId) |
| ask the text parser to send a zone | |
| float | getPatternPercent (int id) const |
| return the pattern percent which corresponds to an id (or -1) | |
| void | sendToken (int zoneId, long tokenId) |
| ask the graph parser to send a token | |
| bool | readEntryHeader (MRWEntry &entry) |
| try to read an entry header | |
| bool | decodeZone (std::vector< MRWStruct > &dataList, long numData=999999) |
| try to decode a zone | |
| bool | readSeparator (MRWEntry const &entry) |
| try to read the separator of differents part | |
| bool | readZoneDim (MRWEntry const &entry, int zoneId) |
| try to read the zone dimension ( normal and with margin ) | |
| bool | readZoneHeader (MRWEntry const &entry, int zoneId, bool onlyTest) |
| try to read the zone header | |
| bool | readZoneb (MRWEntry const &entry, int zoneId) |
| try to read a unknown zone : one by separator?, borderdim? | |
| bool | readZonec (MRWEntry const &entry, int zoneId) |
| try to read a unknown zone of 9 int | |
| bool | readZone13 (MRWEntry const &entry, int zoneId) |
| try to read a unknown zone of 23 int | |
| bool | readDocInfo (MRWEntry const &entry, int zoneId) |
| try to read the doc info zone | |
| bool | readPrintInfo (MRWEntry const &entry) |
| try to read a printinfo zone | |
| bool | readCPRT (MRWEntry const &entry) |
| try to read a xml printinfo zone | |
| bool | readNumbersString (int num, std::vector< long > &res) |
| try to read a number or a list of number entries | |
Protected Attributes | |
| shared_ptr < MRWParserInternal::State > | m_state |
| the state | |
| bool | m_pageMarginsSpanSet |
| a flag to know if page margins span are set | |
| shared_ptr< MRWGraph > | m_graphParser |
| the graph parser | |
| shared_ptr< MRWText > | m_textParser |
| the text parser | |
Friends | |
| class | MRWGraph |
| class | MRWText |
| class | MRWParserInternal::SubDocument |
the main class to read a Mariner Write file
| MRWParser::MRWParser | ( | MWAWInputStreamPtr | input, |
| MWAWRSRCParserPtr | rsrcParser, | ||
| MWAWHeader * | header | ||
| ) |
constructor
| MRWParser::~MRWParser | ( | ) | [virtual] |
destructor
| bool MRWParser::checkHeader | ( | MWAWHeader * | header, |
| bool | strict = false |
||
| ) | [virtual] |
| void MRWParser::createDocument | ( | WPXDocumentInterface * | documentInterface | ) | [protected] |
creates the listener which will be associated to the document
Referenced by parse().
| bool MRWParser::createZones | ( | ) | [protected] |
finds the different objects zones
Referenced by parse().
| bool MRWParser::decodeZone | ( | std::vector< MRWStruct > & | dataList, |
| long | numData = 999999 |
||
| ) | [protected] |
try to decode a zone
Referenced by readDocInfo(), MRWText::readFontNames(), MRWText::readFonts(), MRWText::readPLCZone(), MRWGraph::readPostscript(), MRWText::readRulers(), readSeparator(), MRWText::readStyleNames(), MRWText::readTextStruct(), MRWGraph::readToken(), MRWText::readZone(), readZone(), readZone13(), readZoneb(), readZonec(), readZoneDim(), and readZoneHeader().
| Vec2f MRWParser::getPageLeftTop | ( | ) | const [protected] |
returns the page left top point ( in inches)
| float MRWParser::getPatternPercent | ( | int | id | ) | const [protected] |
return the pattern percent which corresponds to an id (or -1)
Referenced by MRWText::readRulers(), and MRWText::sendTable().
| MWAWSection MRWParser::getSection | ( | int | zoneId | ) | const [protected] |
returns the section information corresponding to a zone
Referenced by MRWText::send().
| int MRWParser::getZoneId | ( | uint32_t | fileId, |
| bool & | endNote | ||
| ) | [protected] |
return a zoneid corresponding to a fileId (or -1) and set the endnote flag
Referenced by MRWGraph::sendToken().
| void MRWParser::init | ( | ) | [protected] |
inits all internal variables
Referenced by MRWParser().
| void MRWParser::newPage | ( | int | number | ) | [protected] |
adds a new page
Referenced by MRWText::send().
| void MRWParser::parse | ( | WPXDocumentInterface * | documentInterface | ) | [virtual] |
virtual function used to parse the input
Implements MWAWParser.
| bool MRWParser::readCPRT | ( | MRWEntry const & | entry | ) | [protected] |
try to read a xml printinfo zone
Referenced by readZone().
| bool MRWParser::readDocInfo | ( | MRWEntry const & | entry, |
| int | zoneId | ||
| ) | [protected] |
try to read the doc info zone
Referenced by readZone().
| bool MRWParser::readEntryHeader | ( | MRWEntry & | entry | ) | [protected] |
try to read an entry header
Referenced by readZone().
| bool MRWParser::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 MRWParser::readPrintInfo | ( | MRWEntry const & | entry | ) | [protected] |
try to read a printinfo zone
Referenced by readZone().
| bool MRWParser::readSeparator | ( | MRWEntry const & | entry | ) | [protected] |
try to read the separator of differents part
Referenced by readZone().
| bool MRWParser::readZone | ( | int & | actZone, |
| bool | onlyTest = false |
||
| ) | [protected] |
try to read a zone
Referenced by checkHeader(), and createZones().
| bool MRWParser::readZone13 | ( | MRWEntry const & | entry, |
| int | zoneId | ||
| ) | [protected] |
try to read a unknown zone of 23 int
Referenced by readZone().
| bool MRWParser::readZoneb | ( | MRWEntry const & | entry, |
| int | zoneId | ||
| ) | [protected] |
try to read a unknown zone : one by separator?, borderdim?
Referenced by readZone().
| bool MRWParser::readZonec | ( | MRWEntry const & | entry, |
| int | zoneId | ||
| ) | [protected] |
try to read a unknown zone of 9 int
Referenced by readZone().
| bool MRWParser::readZoneDim | ( | MRWEntry const & | entry, |
| int | zoneId | ||
| ) | [protected] |
try to read the zone dimension ( normal and with margin )
Referenced by readZone().
| bool MRWParser::readZoneHeader | ( | MRWEntry const & | entry, |
| int | zoneId, | ||
| bool | onlyTest | ||
| ) | [protected] |
try to read the zone header
Referenced by readZone().
| void MRWParser::sendText | ( | int | zoneId | ) | [protected] |
ask the text parser to send a zone
Referenced by MRWGraph::sendText().
| void MRWParser::sendToken | ( | int | zoneId, |
| long | tokenId | ||
| ) | [protected] |
ask the graph parser to send a token
Referenced by MRWText::send().
friend class MRWParserInternal::SubDocument [friend] |
shared_ptr<MRWGraph> MRWParser::m_graphParser [protected] |
the graph parser
Referenced by createDocument(), getPatternPercent(), init(), parse(), readZone(), and sendToken().
bool MRWParser::m_pageMarginsSpanSet [protected] |
a flag to know if page margins span are set
Referenced by readDocInfo(), and readPrintInfo().
shared_ptr<MRWParserInternal::State> MRWParser::m_state [protected] |
the state
Referenced by checkHeader(), createDocument(), createZones(), getPageLeftTop(), getSection(), getZoneId(), init(), newPage(), readDocInfo(), readZonec(), readZoneDim(), and readZoneHeader().
shared_ptr<MRWText> MRWParser::m_textParser [protected] |
the text parser
Referenced by createDocument(), init(), parse(), readZone(), and sendText().