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
Public Member Functions inherited from MWAWParser
virtual ~MWAWParser ()
 virtual destructor
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?
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 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

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

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.

◆ MarinerWrtGraph

friend class MarinerWrtGraph
friend

Referenced by init(), and MarinerWrtGraph.

◆ MarinerWrtParserInternal::SubDocument

◆ MarinerWrtText

friend class MarinerWrtText
friend

Referenced by init(), and MarinerWrtText.

Member Data Documentation

◆ m_graphParser

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

◆ 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

◆ 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:

Generated on Mon Jan 20 2025 00:00:00 for libmwaw by doxygen 1.14.0