the main class to read a RagTime v5 file More...
#include <RagTime5Parser.hxx>
 
  
| Public Member Functions | |
| RagTime5Parser (MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header) | |
| constructor  More... | |
| ~RagTime5Parser () final | |
| destructor  More... | |
| bool | checkHeader (MWAWHeader *header, bool strict=false) final | 
| checks if the document header is correct (or not)  More... | |
| void | parse (librevenge::RVNGTextInterface *documentInterface) final | 
| virtual function used to parse the input  More... | |
|  Public Member Functions inherited from MWAWTextParser | |
| ~MWAWTextParser () override | |
| destructor  More... | |
|  Public Member Functions inherited from MWAWParser | |
| virtual | ~MWAWParser () | 
| virtual destructor  More... | |
| int | version () const | 
| returns the works version  More... | |
| MWAWParserStatePtr | getParserState () | 
| returns the parser state  More... | |
| MWAWHeader * | getHeader () | 
| returns the header  More... | |
| MWAWInputStreamPtr & | getInput () | 
| returns the actual input  More... | |
| MWAWListenerPtr | getMainListener () | 
| returns the main listener  More... | |
| MWAWGraphicListenerPtr & | getGraphicListener () | 
| returns the graphic listener  More... | |
| MWAWPresentationListenerPtr & | getPresentationListener () | 
| returns the presentation listener  More... | |
| MWAWSpreadsheetListenerPtr & | getSpreadsheetListener () | 
| returns the spreadsheet listener  More... | |
| MWAWTextListenerPtr & | getTextListener () | 
| returns the text listener  More... | |
| MWAWFontConverterPtr & | getFontConverter () | 
| returns the font converter  More... | |
| MWAWFontManagerPtr & | getFontManager () | 
| returns the font manager  More... | |
| MWAWPageSpan const & | getPageSpan () const | 
| returns the actual page dimension  More... | |
| MWAWPageSpan & | getPageSpan () | 
| returns the actual page dimension  More... | |
| double | getFormLength () const | 
| returns the form length  More... | |
| double | getFormWidth () const | 
| returns the form width  More... | |
| double | getPageLength () const | 
| returns the page length (form length without margin )  More... | |
| double | getPageWidth () const | 
| returns the page width (form width without margin )  More... | |
| MWAWRSRCParserPtr & | getRSRCParser () | 
| returns the rsrc parser  More... | |
| libmwaw::DebugFile & | ascii () | 
| a DebugFile used to write what we recognize when we parse the document  More... | |
| Protected Member Functions | |
| void | init () | 
| inits all internal variables  More... | |
| std::shared_ptr< RagTime5Zone > | getDataZone (int dataId) const | 
| returns the zone corresponding to a data id (or 0)  More... | |
| RagTime5ClusterManager::Cluster::Type | getClusterType (int zId) const | 
| returns the cluster type corresponding to zone id or C_Unknown (if the zone is not a cluster or was not parsed)  More... | |
| RagTime5ClusterManager::Cluster::Type | getPipelineContainerType (int pipelineId) const | 
| try to return the container's type corresponding to an id  More... | |
| std::shared_ptr< RagTime5ClusterManager > | getClusterManager () | 
| returns the cluster manager  More... | |
| std::shared_ptr< RagTime5StructManager > | getStructManager () | 
| returns the structure manager  More... | |
| std::shared_ptr< RagTime5StyleManager > | getStyleManager () | 
| returns the style manager  More... | |
| std::shared_ptr< RagTime5ClusterManager::Cluster > | readChartCluster (RagTime5Zone &zone, int zoneType) | 
| try to read a chart cluster (via the spreadsheet manager)  More... | |
| std::shared_ptr< RagTime5ClusterManager::Cluster > | readGraphicCluster (RagTime5Zone &zone, int zoneType) | 
| try to read a graphic cluster (via the graphic manager)  More... | |
| std::shared_ptr< RagTime5ClusterManager::Cluster > | readLayoutCluster (RagTime5Zone &zone, int zoneType) | 
| try to read a layout cluster (via the layout manager)  More... | |
| std::shared_ptr< RagTime5ClusterManager::Cluster > | readPipelineCluster (RagTime5Zone &zone, int zoneType) | 
| try to read a pipeline cluster (via the pipeline manager)  More... | |
| std::shared_ptr< RagTime5ClusterManager::Cluster > | readPictureCluster (RagTime5Zone &zone, int zoneType) | 
| try to read a picture cluster (via the graphic manager)  More... | |
| std::shared_ptr< RagTime5ClusterManager::Cluster > | readSpreadsheetCluster (RagTime5Zone &zone, int zoneType) | 
| try to read a spreadsheet cluster (via the spreadsheet manager)  More... | |
| std::shared_ptr< RagTime5ClusterManager::Cluster > | readTextCluster (RagTime5Zone &zone, int zoneType) | 
| try to read a text cluster (via the text manager)  More... | |
| void | createDocument (librevenge::RVNGTextInterface *documentInterface) | 
| creates the listener which will be associated to the document  More... | |
| bool | sendZones () | 
| try to send the different zones  More... | |
| bool | send (int zoneId, MWAWListenerPtr listener, MWAWPosition const &pos, int partId=0, int part2Id=0) | 
| try to send a cluster zone (mainly unimplemented)  More... | |
| void | newPage (int number) | 
| adds a new page  More... | |
| bool | createZones () | 
| finds the different objects zones  More... | |
| bool | findDataZones (MWAWEntry const &entry) | 
| try to create the main data zones list  More... | |
| bool | update (RagTime5Zone &zone) | 
| try to update a zone: create a new input if the zone is stored in different positions, ...  More... | |
| bool | readZoneData (RagTime5Zone &zone) | 
| try to read the zone data  More... | |
| bool | unpackZone (RagTime5Zone &zone, MWAWEntry const &entry, std::vector< unsigned char > &data) | 
| try to unpack a zone  More... | |
| bool | unpackZone (RagTime5Zone &zone) | 
| try to unpack a zone  More... | |
| bool | readZoneInfo () | 
| try to read the main zone info zone and the main cluster(and child)  More... | |
| bool | readClusterZone (RagTime5Zone &zone, int type=-1) | 
| try to read a cluster zone  More... | |
| bool | readClusterLinkList (RagTime5Zone &zone, RagTime5ClusterManager::Link const &link, std::vector< RagTime5StructManager::ZoneLink > &listLinks) | 
| try to read a cluster link zone  More... | |
| bool | readClusterLinkList (RagTime5ClusterManager::Link const &link, RagTime5ClusterManager::Link const &nameLink, std::vector< RagTime5StructManager::ZoneLink > &list, std::string const &name="") | 
| try to read a cluster list link zone  More... | |
| bool | readString (RagTime5Zone &zone, std::string &string) | 
| try to read a string zone ( zone with id1=21,id2=23:24)  More... | |
| bool | readUnicodeString (RagTime5Zone &zone, std::string const &what="") | 
| try to read a unicode string zone  More... | |
| bool | readLongListWithSize (int dataId, int fSz, std::vector< long > &list, std::string const &zoneName="") | 
| try to read a int/long zone data  More... | |
| bool | readPositions (int posId, std::vector< long > &listPosition) | 
| try to read a positions zone in data  More... | |
| bool | readLongList (RagTime5ClusterManager::Link const &link, std::vector< long > &list) | 
| try to read/get the list of long of a L_LongList  More... | |
| bool | readUnicodeStringList (RagTime5ClusterManager::Link const &link, std::map< int, librevenge::RVNGString > &idToStringMap) | 
| try to read a list of unicode string zone  More... | |
| bool | readDocumentVersion (RagTime5Zone &zone) | 
| try to read the document version zone  More... | |
| bool | readClusterRootData (RagTime5ClusterManager::ClusterRoot &cluster) | 
| try to read the main cluster  More... | |
| bool | readClusterFieldsData (RagTime5ClusterManager::Cluster &cluster) | 
| try to read the field data  More... | |
| bool | readDocInfoClusterData (RagTime5Zone &zone, MWAWEntry const &entry) | 
| try to read the main doc info cluster data  More... | |
| bool | readClusterScriptData (RagTime5ClusterManager::ClusterScript &cluster) | 
| try to read the script data  More... | |
| bool | readScriptComment (RagTime5Zone &zone) | 
| try to read a script comment zone  More... | |
| bool | readClusterGProp (RagTime5ClusterManager::Cluster &cluster) | 
| try to read the cluster with contains main graphic object properties  More... | |
| bool | readUnknownClusterCData (RagTime5ClusterManager::Cluster &cluster) | 
| try to read the unknown clusterC data  More... | |
| bool | readStructZone (RagTime5ClusterManager::Cluster &cluster, RagTime5StructManager::FieldParser &parser, int headerSz) | 
| try to read a structured zone  More... | |
| bool | readStructData (RagTime5Zone &zone, long endPos, int n, int headerSz, RagTime5StructManager::FieldParser &parser, librevenge::RVNGString const &dataName) | 
| try to read a data in a structured zone  More... | |
| bool | readListZone (RagTime5ClusterManager::Link const &link) | 
| try to read a list zone  More... | |
| bool | readListZone (RagTime5ClusterManager::Link const &link, RagTime5StructManager::DataParser &parser) | 
| try to read a list zone  More... | |
| bool | readFixedSizeZone (RagTime5ClusterManager::Link const &link, std::string const &name) | 
| try to read a fixed size zone  More... | |
| bool | readFixedSizeZone (RagTime5ClusterManager::Link const &link, RagTime5StructManager::DataParser &parser) | 
| try to read a fixed size zone  More... | |
| bool | checkClusterList (std::vector< RagTime5StructManager::ZoneLink > const &list) | 
| check a cluster list  More... | |
| bool | checkClusterList (std::vector< int > const &list) | 
| check a cluster list  More... | |
| void | flushExtra () | 
| flush unsent zone (debugging function)  More... | |
|  Protected Member Functions inherited from MWAWTextParser | |
| MWAWTextParser (MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header) | |
| constructor (protected)  More... | |
| MWAWTextParser (MWAWParserStatePtr const &state) | |
| constructor using a state  More... | |
|  Protected Member Functions inherited from MWAWParser | |
| MWAWParser (MWAWParserState::Type type, MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header) | |
| constructor (protected)  More... | |
| MWAWParser (MWAWParserStatePtr const &state) | |
| constructor using a state  More... | |
| void | setVersion (int vers) | 
| sets the document's version  More... | |
| void | setGraphicListener (MWAWGraphicListenerPtr &listener) | 
| sets the graphic listener  More... | |
| void | resetGraphicListener () | 
| resets the listener  More... | |
| void | setPresentationListener (MWAWPresentationListenerPtr &listener) | 
| sets the presentation listener  More... | |
| void | resetPresentationListener () | 
| resets the listener  More... | |
| void | setSpreadsheetListener (MWAWSpreadsheetListenerPtr &listener) | 
| sets the spreadsheet listener  More... | |
| void | resetSpreadsheetListener () | 
| resets the listener  More... | |
| void | setTextListener (MWAWTextListenerPtr &listener) | 
| sets the text listener  More... | |
| void | resetTextListener () | 
| resets the listener  More... | |
| void | setAsciiName (char const *name) | 
| Debugging: change the default ascii file.  More... | |
| std::string const & | asciiName () const | 
| return the ascii file name  More... | |
| Protected Attributes | |
| std::shared_ptr< RagTime5ParserInternal::State > | m_state | 
| the state  More... | |
| std::shared_ptr< RagTime5Chart > | m_chartParser | 
| the chart manager  More... | |
| std::shared_ptr< RagTime5Graph > | m_graphParser | 
| the graph manager  More... | |
| std::shared_ptr< RagTime5Layout > | m_layoutParser | 
| the layout manager  More... | |
| std::shared_ptr< RagTime5Pipeline > | m_pipelineParser | 
| the pipeline manager  More... | |
| std::shared_ptr< RagTime5Spreadsheet > | m_spreadsheetParser | 
| the spreadsheet manager  More... | |
| std::shared_ptr< RagTime5Text > | m_textParser | 
| the text manager  More... | |
| std::shared_ptr< RagTime5ClusterManager > | m_clusterManager | 
| the cluster manager  More... | |
| std::shared_ptr< RagTime5StructManager > | m_structManager | 
| the structure manager  More... | |
| std::shared_ptr< RagTime5StyleManager > | m_styleManager | 
| the style manager  More... | |
| Friends | |
| class | RagTime5Chart | 
| class | RagTime5Graph | 
| class | RagTime5Layout | 
| class | RagTime5Pipeline | 
| class | RagTime5Spreadsheet | 
| class | RagTime5Text | 
| class | RagTime5ClusterManager | 
| struct | RagTime5ParserInternal::DocInfoFieldParser | 
| class | RagTime5StyleManager | 
| class | RagTime5ParserInternal::SubDocument | 
the main class to read a RagTime v5 file
| RagTime5Parser::RagTime5Parser | ( | MWAWInputStreamPtr const & | input, | 
| MWAWRSRCParserPtr const & | rsrcParser, | ||
| MWAWHeader * | header | ||
| ) | 
constructor
| 
 | final | 
destructor
| 
 | protected | 
check a cluster list
Referenced by RagTime5Chart::readChartCluster(), readClusterScriptData(), readClusterZone(), RagTime5Graph::readGraphicCluster(), RagTime5Layout::readLayoutCluster(), RagTime5Graph::readPictureCluster(), RagTime5Spreadsheet::readSpreadsheetCluster(), and RagTime5Text::readTextCluster().
| 
 | protected | 
check a cluster list
| 
 | finalvirtual | 
| 
 | protected | 
creates the listener which will be associated to the document
Referenced by parse().
| 
 | protected | 
finds the different objects zones
Referenced by parse().
| 
 | protected | 
try to create the main data zones list
Referenced by createZones().
| 
 | protected | 
flush unsent zone (debugging function)
Referenced by parse().
| 
 | protected | 
returns the cluster manager
Referenced by RagTime5Chart::readChartCluster(), RagTime5Graph::readGraphicCluster(), RagTime5Layout::readLayoutCluster(), RagTime5Graph::readPictureCluster(), RagTime5Pipeline::readPipelineCluster(), RagTime5Spreadsheet::readSpreadsheetCluster(), and RagTime5Text::readTextCluster().
| 
 | protected | 
returns the cluster type corresponding to zone id or C_Unknown (if the zone is not a cluster or was not parsed)
Referenced by RagTime5Pipeline::getContainerType(), RagTime5Graph::send(), and RagTime5Layout::updateLayout().
| 
 | protected | 
returns the zone corresponding to a data id (or 0)
Referenced by checkClusterList(), readClusterGProp(), RagTime5ClusterManager::readClusterMainList(), readClusterRootData(), readClusterScriptData(), RagTime5Graph::readColorPatternZone(), RagTime5ClusterManager::readFieldClusters(), RagTime5Text::readFieldZones(), readFixedSizeZone(), RagTime5StyleManager::readFormats(), RagTime5Graph::readGraphicCluster(), RagTime5Graph::readGraphicShapes(), RagTime5Graph::readGraphicTransformations(), RagTime5Graph::readGraphicTypes(), RagTime5Graph::readGraphicUnknown(), RagTime5Text::readLinkZones(), readListZone(), readLongListWithSize(), RagTime5Graph::readPictureCluster(), RagTime5Graph::readPictureList(), RagTime5Text::readPLC(), RagTime5Text::readPLCToCharStyle(), RagTime5Spreadsheet::readSpreadsheetCluster(), readStructZone(), RagTime5Text::readTextCluster(), RagTime5ClusterManager::readUnknownClusterC(), readZoneInfo(), and RagTime5Text::send().
| 
 | protected | 
try to return the container's type corresponding to an id
Referenced by RagTime5Graph::send().
| 
 | protected | 
returns the structure manager
| 
 | protected | 
returns the style manager
| 
 | protected | 
inits all internal variables
Referenced by RagTime5Parser().
| 
 | protected | 
adds a new page
| 
 | finalvirtual | 
virtual function used to parse the input
Implements MWAWTextParser.
| 
 | protected | 
try to read a chart cluster (via the spreadsheet manager)
| 
 | protected | 
try to read the field data
Referenced by readClusterZone().
| 
 | protected | 
try to read the cluster with contains main graphic object properties
Referenced by readClusterZone().
| 
 | protected | 
try to read a cluster link zone
Referenced by readClusterRootData(), readClusterScriptData(), RagTime5Graph::readGraphicCluster(), and RagTime5Spreadsheet::readSpreadsheetCluster().
| 
 | protected | 
try to read a cluster list link zone
| 
 | protected | 
| 
 | protected | 
try to read the script data
Referenced by readClusterZone().
| 
 | protected | 
try to read a cluster zone
Referenced by createZones(), readClusterRootData(), RagTime5ClusterManager::readFieldClusters(), RagTime5ClusterManager::readUnknownClusterC(), and readZoneInfo().
| 
 | protected | 
try to read the main doc info cluster data
Referenced by RagTime5ParserInternal::DocInfoFieldParser::parseField().
| 
 | protected | 
try to read the document version zone
Referenced by readZoneData().
| 
 | protected | 
try to read a fixed size zone
Referenced by RagTime5Chart::readChartCluster(), readClusterFieldsData(), readClusterGProp(), readClusterRootData(), readClusterScriptData(), readClusterZone(), RagTime5StyleManager::readFormats(), RagTime5Graph::readGraphicCluster(), RagTime5Layout::readLayoutCluster(), RagTime5Graph::readPictureCluster(), RagTime5Pipeline::readPipelineCluster(), RagTime5Spreadsheet::readSpreadsheetCluster(), RagTime5Text::readTextCluster(), and readUnknownClusterCData().
| 
 | protected | 
try to read a fixed size zone
| 
 | protected | 
try to read a graphic cluster (via the graphic manager)
| 
 | protected | 
try to read a layout cluster (via the layout manager)
| 
 | protected | 
try to read a list zone
Referenced by RagTime5Chart::readChartCluster(), readClusterRootData(), readClusterScriptData(), readClusterZone(), RagTime5Graph::readGraphicCluster(), RagTime5Layout::readLayoutCluster(), RagTime5Graph::readPictureCluster(), RagTime5Spreadsheet::readSpreadsheetCluster(), RagTime5Text::readTextCluster(), readUnicodeStringList(), and readUnknownClusterCData().
| 
 | protected | 
try to read a list zone
| 
 | protected | 
try to read/get the list of long of a L_LongList
Referenced by RagTime5Chart::readChartCluster(), RagTime5ClusterManager::readClusterMainList(), readClusterRootData(), RagTime5StyleManager::readFormats(), and RagTime5Graph::readGraphicCluster().
| 
 | protected | 
try to read a int/long zone data
Referenced by readLongList(), and readPositions().
| 
 | protected | 
try to read a picture cluster (via the graphic manager)
| 
 | protected | 
try to read a pipeline cluster (via the pipeline manager)
| 
 | protected | 
try to read a positions zone in data
Referenced by RagTime5Text::readFieldZones(), RagTime5StyleManager::readFormats(), RagTime5Graph::readGraphicShapes(), RagTime5Graph::readGraphicTypes(), RagTime5Text::readLinkZones(), readListZone(), and readStructZone().
| 
 | protected | 
try to read a script comment zone
Referenced by readClusterScriptData(), and readZoneData().
| 
 | protected | 
try to read a spreadsheet cluster (via the spreadsheet manager)
| 
 | protected | 
try to read a string zone ( zone with id1=21,id2=23:24)
Referenced by createZones(), and readZoneData().
| 
 | protected | 
try to read a data in a structured zone
Referenced by RagTime5ClusterManager::readClusterGObjProperties(), and readStructZone().
| 
 | protected | 
try to read a structured zone
Referenced by RagTime5Chart::readChartCluster(), readClusterGProp(), readClusterRootData(), readClusterZone(), RagTime5Graph::readGraphicCluster(), RagTime5StyleManager::readGraphicColors(), RagTime5StyleManager::readGraphicStyles(), RagTime5Layout::readLayoutCluster(), and RagTime5StyleManager::readTextStyles().
| 
 | protected | 
try to read a text cluster (via the text manager)
| 
 | protected | 
try to read a unicode string zone
Referenced by readScriptComment(), and readZoneData().
| 
 | protected | 
try to read a list of unicode string zone
Referenced by RagTime5Chart::readChartCluster(), RagTime5ClusterManager::readClusterMainList(), readClusterZone(), RagTime5StyleManager::readFormats(), RagTime5Graph::readGraphicShapes(), RagTime5Layout::readLayoutCluster(), RagTime5Spreadsheet::readSpreadsheetCluster(), and readStructZone().
| 
 | protected | 
try to read the unknown clusterC data
Referenced by readClusterZone().
| 
 | protected | 
try to read the zone data
Referenced by flushExtra().
| 
 | protected | 
try to read the main zone info zone and the main cluster(and child)
Referenced by createZones().
| 
 | protected | 
try to send a cluster zone (mainly unimplemented)
Referenced by RagTime5Pipeline::send(), RagTime5Graph::send(), RagTime5ClusterManager::sendClusterMainList(), RagTime5Layout::sendPageContents(), and RagTime5Graph::sendTextZone().
| 
 | protected | 
try to send the different zones
Referenced by parse().
| 
 | protected | 
try to unpack a zone
Referenced by createZones(), and unpackZone().
| 
 | protected | 
try to unpack a zone
| 
 | protected | 
try to update a zone: create a new input if the zone is stored in different positions, ...
Referenced by createZones().
| 
 | friend | 
Referenced by init().
| 
 | friend | 
Referenced by init().
| 
 | friend | 
Referenced by init().
| 
 | friend | 
Referenced by init().
| 
 | friend | 
| 
 | friend | 
| 
 | friend | 
Referenced by init().
| 
 | friend | 
Referenced by init().
| 
 | friend | 
Referenced by init().
| 
 | friend | 
Referenced by init().
| 
 | protected | 
the chart manager
Referenced by init(), and readChartCluster().
| 
 | protected | 
the cluster manager
Referenced by getClusterManager(), getClusterType(), init(), readClusterLinkList(), readClusterRootData(), readClusterZone(), send(), and sendZones().
| 
 | protected | 
the graph manager
Referenced by createZones(), flushExtra(), init(), readClusterRootData(), readClusterZone(), readGraphicCluster(), readPictureCluster(), readZoneData(), and send().
| 
 | protected | 
the layout manager
Referenced by createDocument(), init(), readLayoutCluster(), and sendZones().
| 
 | protected | 
the pipeline manager
Referenced by getPipelineContainerType(), init(), readPipelineCluster(), and send().
| 
 | protected | 
the spreadsheet manager
Referenced by flushExtra(), init(), readSpreadsheetCluster(), and send().
| 
 | protected | 
the state
Referenced by checkHeader(), createDocument(), createZones(), findDataZones(), flushExtra(), getDataZone(), init(), newPage(), readClusterRootData(), readZoneInfo(), send(), and sendZones().
| 
 | protected | 
the structure manager
Referenced by getStructManager(), init(), readClusterLinkList(), readStructData(), readUnicodeString(), and readZoneInfo().
| 
 | protected | 
the style manager
Referenced by getStyleManager(), init(), and readClusterZone().
| 
 | protected | 
the text manager
Referenced by flushExtra(), init(), readClusterFieldsData(), readClusterRootData(), readTextCluster(), and send().