MarinerWrtParser Class Reference

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

#include <MarinerWrtParser.hxx>

Inheritance diagram for MarinerWrtParser:
MWAWTextParser MWAWParser

List of all members.

Public Member Functions

 MarinerWrtParser (MWAWInputStreamPtr input, MWAWRSRCParserPtr rsrcParser, MWAWHeader *header)
 constructor
virtual ~MarinerWrtParser ()
 destructor
bool checkHeader (MWAWHeader *header, bool strict=false)
 checks if the document header is correct (or not)
void parse (librevenge::RVNGTextInterface *documentInterface)
 virtual function used to parse the input

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?, borderdim?
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 Attributes

shared_ptr
< MarinerWrtParserInternal::State
m_state
 the state
bool m_pageMarginsSpanSet
 a flag to know if page margins span are set
shared_ptr< MarinerWrtGraphm_graphParser
 the graph parser
shared_ptr< MarinerWrtTextm_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

constructor

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().

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

a flag to know if page margins span are set

Referenced by readDocInfo(), and readPrintInfo().

the text parser

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


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