34 #ifndef RAG_TIME_5_PARSER
35 # define RAG_TIME_5_PARSER
52 struct DocInfoFieldParser;
88 void parse(librevenge::RVNGTextInterface *documentInterface);
115 void createDocument(librevenge::RVNGTextInterface *documentInterface);
127 shared_ptr<RagTime5Zone>
getDataZone(
int dataId)
const;
147 std::vector<int> &list, std::string
const &name=
"");
154 bool readLongListWithSize(
int dataId,
int fSz, std::vector<long> &list, std::string
const &zoneName=
"");
156 bool readPositions(
int posId, std::vector<long> &listPosition);
211 shared_ptr<RagTime5ParserInternal::State>
m_state;
shared_ptr< RagTime5Text > m_textParser
the text manager
Definition: RagTime5Parser.hxx:217
shared_ptr< RagTime5Graph > m_graphParser
the graph manager
Definition: RagTime5Parser.hxx:213
bool readSpreadsheetCluster(RagTime5Zone &zone, int zoneType)
try to read a spreadsheet cluster (via the spreadsheet manager)
Definition: RagTime5Parser.cxx:335
Internal: the helper to read doc info parse.
Definition: RagTime5Parser.cxx:69
bool readUnknownClusterBData(RagTime5ClusterManager::Cluster &cluster)
try to read the unknown clusterB data
Definition: RagTime5Parser.cxx:1501
bool readChartCluster(RagTime5Zone &zone, int zoneType)
try to read a chart cluster (via the spreadsheet manager)
Definition: RagTime5Parser.cxx:320
bool readFormats(RagTime5ClusterManager::Cluster &cluster)
try to read the list of format
Definition: RagTime5Parser.cxx:1162
void parse(librevenge::RVNGTextInterface *documentInterface)
virtual function used to parse the input
Definition: RagTime5Parser.cxx:371
void init()
inits all internal variables
Definition: RagTime5Parser.cxx:294
bool readClusterPipelineData(RagTime5ClusterManager::Cluster &cluster)
try to read the pipeline cluster data
Definition: RagTime5Parser.cxx:1451
RagTime5Parser(MWAWInputStreamPtr input, MWAWRSRCParserPtr rsrcParser, MWAWHeader *header)
constructor
Definition: RagTime5Parser.cxx:284
bool readGraphicCluster(RagTime5Zone &zone, int zoneType)
try to read a graphic cluster (via the graphic manager)
Definition: RagTime5Parser.cxx:325
bool readListZone(RagTime5ClusterManager::Link const &link)
try to read a list zone
Definition: RagTime5Parser.cxx:1574
bool readUnknownClusterCData(RagTime5ClusterManager::Cluster &cluster)
try to read the unknown clusterC data
Definition: RagTime5Parser.cxx:1539
void createDocument(librevenge::RVNGTextInterface *documentInterface)
creates the listener which will be associated to the document
Definition: RagTime5Parser.cxx:400
bool update(RagTime5Zone &zone)
try to update a zone: create a new input if the zone is stored in different positions, ...
Definition: RagTime5Parser.cxx:1956
bool readClusterZones()
try to read the different cluster zones
Definition: RagTime5Parser.cxx:798
the cluster script ( 2/a/4002/400a zone)
Definition: RagTime5ClusterManager.hxx:305
the main class to read the graphic part of RagTime 56 file
Definition: RagTime5Graph.hxx:75
bool checkClusterList(std::vector< int > const &list)
check a cluster list
Definition: RagTime5Parser.cxx:985
bool readClusterFieldsData(RagTime5ClusterManager::Cluster &cluster)
try to read the field data
Definition: RagTime5Parser.cxx:1238
bool readStructZone(RagTime5ClusterManager::Cluster &cluster, RagTime5StructManager::FieldParser &parser, int headerSz)
try to read a structured zone
Definition: RagTime5Parser.cxx:1717
bool readDocumentVersion(RagTime5Zone &zone)
try to read the document version zone
Definition: RagTime5Parser.cxx:2155
shared_ptr< RagTime5ClusterManager > m_clusterManager
the cluster manager
Definition: RagTime5Parser.hxx:221
virtual class use to parse the field data
Definition: RagTime5StructManager.hxx:268
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
Definition: RagTime5Parser.cxx:1867
bool readClusterLinkList(RagTime5Zone &zone, RagTime5ClusterManager::Link const &link)
try to read a cluster link zone
Definition: RagTime5Parser.cxx:1088
main zone in a RagTime v5-v6 document
Definition: RagTime5StructManager.hxx:48
the layout cluster ( 4001 zone)
Definition: RagTime5ClusterManager.hxx:252
the cluster for root
Definition: RagTime5ClusterManager.hxx:268
Internal: the structures of a RagTime5Parser.
Definition: RagTime5Parser.cxx:66
bool readUnicodeStringList(RagTime5ClusterManager::Link const &link, std::map< int, librevenge::RVNGString > &idToStringMap)
try to read a list of unicode string zone
Definition: RagTime5Parser.cxx:732
bool readStructMainZone(RagTime5Zone &zone)
try to read a main structured zone (unknown content)
Definition: RagTime5Parser.cxx:1813
bool unpackZone(RagTime5Zone &zone, MWAWEntry const &entry, std::vector< unsigned char > &data)
try to unpack a zone
Definition: RagTime5Parser.cxx:2012
Internal: the subdocument of a RagTime5Parser.
Definition: RagTime5Parser.cxx:232
the main class to read the spreadsheet part of RagTime 56 file
Definition: RagTime5Spreadsheet.hxx:73
bool readClusterRootData(RagTime5ClusterManager::ClusterRoot &cluster)
try to read the main cluster
Definition: RagTime5Parser.cxx:840
shared_ptr< MWAWRSRCParser > MWAWRSRCParserPtr
a smart pointer of MWAWRSRCParser
Definition: libmwaw_internal.hxx:449
virtual class use to parse the unstructured data
Definition: RagTime5StructManager.hxx:301
bool readPictureCluster(RagTime5Zone &zone, int zoneType)
try to read a picture cluster (via the graphic manager)
Definition: RagTime5Parser.cxx:330
shared_ptr< RagTime5Spreadsheet > m_spreadsheetParser
the spreadsheet manager
Definition: RagTime5Parser.hxx:215
bool readDocInfoClusterData(RagTime5Zone &zone, MWAWEntry const &entry)
try to read the main doc info cluster data
Definition: RagTime5Parser.cxx:1251
bool findDataZones(MWAWEntry const &entry)
try to create the main data zones list
Definition: RagTime5Parser.cxx:2207
basic class used to manage RagTime 5/6 zones
Definition: RagTime5ClusterManager.hxx:58
bool readClusterZone(RagTime5Zone &zone, int type=-1)
try to read a cluster zone
Definition: RagTime5Parser.cxx:1000
bool readTextCluster(RagTime5Zone &zone, int zoneType)
try to read a text cluster (via the text manager)
Definition: RagTime5Parser.cxx:340
void newPage(int number)
adds a new page
Definition: RagTime5Parser.cxx:355
virtual class which defines the ancestor of all text zone parser
Definition: MWAWParser.hxx:284
bool readFixedSizeZone(RagTime5ClusterManager::Link const &link, std::string const &name)
try to read a fixed size zone
Definition: RagTime5Parser.cxx:1648
the main class to read a RagTime v5 file
Definition: RagTime5Parser.hxx:69
the main class to read the text part of RagTime 56 file
Definition: RagTime5Text.hxx:73
shared_ptr< RagTime5Zone > getDataZone(int dataId) const
returns the zone corresponding to a data id (or 0)
Definition: RagTime5Parser.cxx:345
shared_ptr< MWAWInputStream > MWAWInputStreamPtr
a smart pointer of MWAWInputStream
Definition: libmwaw_internal.hxx:439
bool readPositions(int posId, std::vector< long > &listPosition)
try to read a positions zone in data
Definition: RagTime5Parser.cxx:790
bool readUnicodeString(RagTime5Zone &zone)
try to read a unicode string zone
Definition: RagTime5Parser.cxx:709
bool readLongListWithSize(int dataId, int fSz, std::vector< long > &list, std::string const &zoneName="")
try to read a int/long zone data
Definition: RagTime5Parser.cxx:741
bool readZoneData(RagTime5Zone &zone)
try to read the zone data
Definition: RagTime5Parser.cxx:601
bool readClusterScriptData(RagTime5ClusterManager::ClusterScript &cluster)
try to read the unknown clusterA data
Definition: RagTime5Parser.cxx:1470
bool createZones()
finds the different objects zones
Definition: RagTime5Parser.cxx:432
bool readString(RagTime5Zone &zone, std::string &string)
try to read a string zone ( zone with id1=21,id2=23:24)
Definition: RagTime5Parser.cxx:679
shared_ptr< RagTime5StructManager > m_structManager
the structure manager
Definition: RagTime5Parser.hxx:219
basic class to store an entry in a file This contained :
Definition: MWAWEntry.hxx:46
basic class used to store RagTime 5/6 structures
Definition: RagTime5StructManager.hxx:158
shared_ptr< RagTime5StructManager > getStructManager()
returns the structure manager
Definition: RagTime5Parser.cxx:315
virtual ~RagTime5Parser()
destructor
Definition: RagTime5Parser.cxx:290
bool checkHeader(MWAWHeader *header, bool strict=false)
checks if the document header is correct (or not)
Definition: RagTime5Parser.cxx:2368
shared_ptr< RagTime5ClusterManager > getClusterManager()
returns the cluster manager
Definition: RagTime5Parser.cxx:310
void flushExtra()
flush unsent zone (debugging function)
Definition: RagTime5Parser.cxx:2439
bool sendZones()
try to send the different zones
bool readLongList(RagTime5ClusterManager::Link const &link, std::vector< long > &list)
try to read/get the list of long of a L_LongList
Definition: RagTime5Parser.cxx:781
shared_ptr< RagTime5ParserInternal::State > m_state
the state
Definition: RagTime5Parser.hxx:211
bool readClusterLayoutData(RagTime5ClusterManager::ClusterLayout &cluster)
try to read the layout cluster (type 4001)
Definition: RagTime5Parser.cxx:1404
a link to a small zone (or set of zones) in RagTime 5/6 documents
Definition: RagTime5ClusterManager.hxx:100
the cluster data
Definition: RagTime5ClusterManager.hxx:209