MarinerWrtParser Class Referencefinal

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

#include <MarinerWrtParser.hxx>

Inheritance diagram for MarinerWrtParser:
MWAWTextParser MWAWParser

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
 
virtual void parse (librevenge::RVNGTextInterface *documentInterface)=0
 virtual function used to parse the input
 
- Public Member Functions inherited from MWAWParser
virtual ~MWAWParser ()
 virtual destructor
 
virtual bool checkHeader (MWAWHeader *header, bool strict=false)=0
 virtual function used to check if the document header is correct (or not)
 
int version () const
 returns the works version
 
MWAWParserStatePtr getParserState ()
 returns the parser state
 
MWAWHeadergetHeader ()
 returns the header
 
MWAWInputStreamPtrgetInput ()
 returns the actual input
 
MWAWListenerPtr getMainListener ()
 returns the main listener
 
MWAWGraphicListenerPtrgetGraphicListener ()
 returns the graphic listener
 
MWAWPresentationListenerPtrgetPresentationListener ()
 returns the presentation listener
 
MWAWSpreadsheetListenerPtrgetSpreadsheetListener ()
 returns the spreadsheet listener
 
MWAWTextListenerPtrgetTextListener ()
 returns the text listener
 
MWAWFontConverterPtrgetFontConverter ()
 returns the font converter
 
MWAWFontManagerPtrgetFontManager ()
 returns the font manager
 
MWAWPageSpan const & getPageSpan () const
 returns the actual page dimension
 
MWAWPageSpangetPageSpan ()
 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 )
 
MWAWRSRCParserPtrgetRSRCParser ()
 returns the rsrc parser
 
libmwaw::DebugFileascii ()
 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?, 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 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::Statem_state
 the state
 
bool m_pageMarginsSpanSet
 a flag to know if page margins span are set
 
std::shared_ptr< MarinerWrtGraphm_graphParser
 the graph parser
 
std::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

◆ 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 
)
finalvirtual

checks if the document header is correct (or not)

Implements MWAWParser.

Referenced by parse().

◆ createDocument()

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

creates the listener which will be associated to the document

Referenced by parse().

◆ createZones()

bool MarinerWrtParser::createZones ( )
protected

finds the different objects zones

Referenced by parse().

◆ decodeZone()

◆ getPageLeftTop()

MWAWVec2f MarinerWrtParser::getPageLeftTop ( ) const
protected

returns the page left top point ( in inches)

◆ getPatternPercent()

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

◆ getSection()

MWAWSection MarinerWrtParser::getSection ( int  zoneId) const
protected

returns the section information corresponding to a zone

Referenced by MarinerWrtText::send().

◆ 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 MarinerWrtGraph::sendToken().

◆ init()

void MarinerWrtParser::init ( )
protected

inits all internal variables

Referenced by MarinerWrtParser().

◆ newPage()

void MarinerWrtParser::newPage ( int  number)
protected

adds a new page

Referenced by MarinerWrtText::send().

◆ parse()

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

virtual function used to parse the input

Implements MWAWTextParser.

◆ readCPRT()

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

try to read a xml printinfo zone

Referenced by readZone().

◆ readDocInfo()

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

try to read the doc info zone

Referenced by readZone().

◆ readEntryHeader()

bool MarinerWrtParser::readEntryHeader ( MarinerWrtEntry entry)
protected

try to read an entry header

Referenced by 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(), and readEntryHeader().

◆ readPrintInfo()

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

try to read a printinfo zone

Referenced by readZone().

◆ readSeparator()

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

try to read the separator of differents part

Referenced by readZone().

◆ readZone()

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

try to read a zone

Referenced by checkHeader(), and createZones().

◆ readZone13()

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

try to read a unknown zone of 23 int

Referenced by readZone().

◆ readZoneb()

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

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

Referenced by readZone().

◆ readZonec()

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

try to read a unknown zone of 9 int

Referenced by readZone().

◆ readZoneDim()

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

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

Referenced by readZone().

◆ readZoneHeader()

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

try to read the zone header

Referenced by readZone().

◆ sendText()

void MarinerWrtParser::sendText ( int  zoneId)
protected

ask the text parser to send a zone

Referenced by MarinerWrtGraph::sendText().

◆ sendToken()

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

◆ MarinerWrtGraph

friend class MarinerWrtGraph
friend

Referenced by init().

◆ MarinerWrtParserInternal::SubDocument

◆ MarinerWrtText

friend class MarinerWrtText
friend

Referenced by init().

Member Data Documentation

◆ m_graphParser

std::shared_ptr<MarinerWrtGraph> MarinerWrtParser::m_graphParser
protected

the graph parser

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

◆ m_pageMarginsSpanSet

bool MarinerWrtParser::m_pageMarginsSpanSet
protected

a flag to know if page margins span are set

Referenced by readDocInfo(), and readPrintInfo().

◆ m_state

◆ m_textParser

std::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 Wed May 3 2023 07:18:29 for libmwaw by doxygen 1.9.6