MarinerWrtParser Class Referencefinal

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

`#include <MarinerWrtParser.hxx>`

Inheritance diagram for MarinerWrtParser:

## Public Member Functions

| MarinerWrtParser (MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header)
| constructor
| ~MarinerWrtParser () final
| destructor
bool | checkHeader (MWAWHeader *header, bool strict=false) final
| checks if the document header is correct (or not)
void | parse (librevenge::RVNGTextInterface *documentInterface) final
| virtual function used to parse the input
Public Member Functions inherited from MWAWTextParser
| ~MWAWTextParser () override
| destructor
Public Member Functions inherited from MWAWParser
virtual | ~MWAWParser ()
| virtual destructor
int | version () const
| returns the works version
MWAWParserStatePtr | getParserState ()
| returns the parser state
MWAWHeader * | getHeader ()
| returns the header
MWAWInputStreamPtr & | getInput ()
| returns the actual input
MWAWListenerPtr | getMainListener ()
| returns the main listener
MWAWGraphicListenerPtr & | getGraphicListener ()
| returns the graphic listener
MWAWPresentationListenerPtr & | getPresentationListener ()
| returns the presentation listener
MWAWSpreadsheetListenerPtr & | getSpreadsheetListener ()
| returns the spreadsheet listener
MWAWTextListenerPtr & | getTextListener ()
| returns the text listener
MWAWFontConverterPtr & | getFontConverter ()
| returns the font converter
MWAWFontManagerPtr & | getFontManager ()
| returns the font manager
MWAWPageSpan const & | getPageSpan () const
| returns the actual page dimension
MWAWPageSpan & | getPageSpan ()
| returns the actual page dimension
double | getFormLength () const
| returns the form length
double | getFormWidth () const
| returns the form width
double | getPageLength () const
| returns the page length (form length without margin )
double | getPageWidth () const
| returns the page width (form width without margin )
MWAWRSRCParserPtr & | getRSRCParser ()
| returns the rsrc parser
libmwaw::DebugFile & | ascii ()
| a DebugFile used to write what we recognize when we parse the document

## Protected Member Functions

void | init ()
| inits all internal variables
void | createDocument (librevenge::RVNGTextInterface *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
MWAWVec2f | 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 (MarinerWrtEntry &entry)
| try to read an entry header
bool | decodeZone (std::vector< MarinerWrtStruct > &dataList, long numData=999999)
| try to decode a zone
bool | readSeparator (MarinerWrtEntry const &entry)
| try to read the separator of differents part
bool | readZoneDim (MarinerWrtEntry const &entry, int zoneId)
| try to read the zone dimension ( normal and with margin )
bool | readZoneHeader (MarinerWrtEntry const &entry, int zoneId, bool onlyTest)
| try to read the zone header
bool | readZoneb (MarinerWrtEntry const &entry, int zoneId)
| try to read a unknown zone : one by separator?
bool | readZonec (MarinerWrtEntry const &entry, int zoneId)
| try to read a unknown zone of 9 int
bool | readZone13 (MarinerWrtEntry const &entry, int zoneId)
| try to read a unknown zone of 23 int
bool | readDocInfo (MarinerWrtEntry const &entry, int zoneId)
| try to read the doc info zone
bool | readPrintInfo (MarinerWrtEntry const &entry)
| try to read a printinfo zone
bool | readCPRT (MarinerWrtEntry 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 Member Functions inherited from MWAWTextParser
| MWAWTextParser (MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header)
| constructor (protected)
| MWAWTextParser (MWAWParserStatePtr const &state)
| constructor using a state
Protected Member Functions inherited from MWAWParser
| MWAWParser (MWAWParserState::Type type, MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header)
| constructor (protected)
| MWAWParser (MWAWParserStatePtr const &state)
| constructor using a state
void | setVersion (int vers)
| sets the document's version
void | setGraphicListener (MWAWGraphicListenerPtr &listener)
| sets the graphic listener
void | resetGraphicListener ()
| resets the listener
void | setPresentationListener (MWAWPresentationListenerPtr &listener)
| sets the presentation listener
void | resetPresentationListener ()
| resets the listener
void | setSpreadsheetListener (MWAWSpreadsheetListenerPtr &listener)
| sets the spreadsheet listener
void | resetSpreadsheetListener ()
| resets the listener
void | setTextListener (MWAWTextListenerPtr &listener)
| sets the text listener
void | resetTextListener ()
| resets the listener
void | setAsciiName (char const *name)
| Debugging: change the default ascii file.
std::string const & | asciiName () const
| return the ascii file name

## Protected Attributes

std::shared_ptr< MarinerWrtParserInternal::State > | m_state
| the state
bool | m_pageMarginsSpanSet
| a flag to know if page margins span are set
std::shared_ptr< MarinerWrtGraph > | m_graphParser
| the graph parser
std::shared_ptr< MarinerWrtText > | m_textParser
| the text parser

## Friends

class | MarinerWrtGraph
class | MarinerWrtText
class | MarinerWrtParserInternal::SubDocument

## Detailed Description

the main class to read a Mariner Write file

## Constructor & Destructor Documentation

## MarinerWrtParser()

MarinerWrtParser::MarinerWrtParser | ( | MWAWInputStreamPtr const & | input,
|  | MWAWRSRCParserPtr const & | rsrcParser,
|  | MWAWHeader * | header )

constructor

## ~MarinerWrtParser()

MarinerWrtParser::~MarinerWrtParser | ( |  | ) |

final

destructor

## Member Function Documentation

## checkHeader()

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

final virtual

checks if the document header is correct (or not)

Implements MWAWParser.

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

## createDocument()

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

protected

creates the listener which will be associated to the document

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

## createZones()

bool MarinerWrtParser::createZones | ( |  | ) |

protected

finds the different objects zones

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

## decodeZone()

bool MarinerWrtParser::decodeZone | ( | std::vector< MarinerWrtStruct > & | dataList,
|  | long | numData = 999999 )

protected

try to decode a zone

Referenced by MarinerWrtParserInternal::SubDocument, readDocInfo(), readSeparator(), readZone(), readZone13(), readZoneb(), readZonec(), readZoneDim(), and readZoneHeader().

## getPageLeftTop()

MWAWVec2f MarinerWrtParser::getPageLeftTop | ( |  | ) | const

protected

returns the page left top point ( in inches)

Referenced by MarinerWrtParserInternal::SubDocument.

## getPatternPercent()

float MarinerWrtParser::getPatternPercent | ( | int | id | ) | const

protected

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

Referenced by MarinerWrtParserInternal::SubDocument.

## getSection()

MWAWSection MarinerWrtParser::getSection | ( | int | zoneId | ) | const

protected

returns the section information corresponding to a zone

Referenced by MarinerWrtParserInternal::SubDocument.

## getZoneId()

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 MarinerWrtParserInternal::SubDocument.

## init()

void MarinerWrtParser::init | ( |  | ) |

protected

inits all internal variables

Referenced by MarinerWrtParser(), and MarinerWrtParserInternal::SubDocument.

## newPage()

void MarinerWrtParser::newPage | ( | int | number | ) |

protected

adds a new page

Referenced by MarinerWrtParserInternal::SubDocument.

## parse()

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

final virtual

virtual function used to parse the input

Implements MWAWTextParser.

Referenced by MarinerWrtParserInternal::SubDocument.

## readCPRT()

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

protected

try to read a xml printinfo zone

Referenced by MarinerWrtParserInternal::SubDocument, and readZone().

## readDocInfo()

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

protected

try to read the doc info zone

Referenced by MarinerWrtParserInternal::SubDocument, and readZone().

## readEntryHeader()

bool MarinerWrtParser::readEntryHeader | ( | MarinerWrtEntry & | entry | ) |

protected

try to read an entry header

Referenced by MarinerWrtParserInternal::SubDocument, and readZone().

## readNumbersString()

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

protected

try to read a number or a list of number entries

Referenced by decodeZone(), MarinerWrtParserInternal::SubDocument, and readEntryHeader().

## readPrintInfo()

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

protected

try to read a printinfo zone

Referenced by MarinerWrtParserInternal::SubDocument, and readZone().

## readSeparator()

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

protected

try to read the separator of differents part

Referenced by MarinerWrtParserInternal::SubDocument, and readZone().

## readZone()

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

protected

try to read a zone

Referenced by checkHeader(), createZones(), and MarinerWrtParserInternal::SubDocument.

## readZone13()

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

protected

try to read a unknown zone of 23 int

Referenced by MarinerWrtParserInternal::SubDocument, and readZone().

## readZoneb()

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

protected

try to read a unknown zone : one by separator?

, borderdim?

Referenced by MarinerWrtParserInternal::SubDocument, and readZone().

## readZonec()

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

protected

try to read a unknown zone of 9 int

Referenced by MarinerWrtParserInternal::SubDocument, and readZone().

## readZoneDim()

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

protected

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

Referenced by MarinerWrtParserInternal::SubDocument, and readZone().

## readZoneHeader()

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

protected

try to read the zone header

Referenced by MarinerWrtParserInternal::SubDocument, and readZone().

## sendText()

void MarinerWrtParser::sendText | ( | int | zoneId | ) |

protected

ask the text parser to send a zone

Referenced by MarinerWrtParserInternal::SubDocument.

## sendToken()

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

protected

ask the graph parser to send a token

Referenced by MarinerWrtParserInternal::SubDocument.

## Friends And Related Symbol Documentation

## MarinerWrtGraph

friend class MarinerWrtGraph

friend

Referenced by init(), and MarinerWrtGraph.

## MarinerWrtParserInternal::SubDocument

friend class MarinerWrtParserInternal::SubDocument

friend

## MarinerWrtText

friend class MarinerWrtText

friend

Referenced by init(), and MarinerWrtText.

## Member Data Documentation

## m_graphParser

std::shared_ptr<MarinerWrtGraph> MarinerWrtParser::m_graphParser

protected

the graph parser

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

## m_pageMarginsSpanSet

bool MarinerWrtParser::m_pageMarginsSpanSet

protected

a flag to know if page margins span are set

Referenced by MarinerWrtParser(), readDocInfo(), and readPrintInfo().

## m_state

std::shared_ptr<MarinerWrtParserInternal::State> MarinerWrtParser::m_state

protected

the state

Referenced by checkHeader(), createDocument(), createZones(), getSection(), getZoneId(), init(), MarinerWrtParser(), newPage(), readDocInfo(), readZonec(), readZoneDim(), and readZoneHeader().

## m_textParser

std::shared_ptr<MarinerWrtText> MarinerWrtParser::m_textParser

protected

the text parser

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

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

- MarinerWrtParser.hxx
- MarinerWrtParser.cxx