Go to the documentation of this file.
39 # define RAGTIME5_TEXT
46 #include <librevenge/librevenge.h>
161 std::shared_ptr<RagTime5TextInternal::State>
m_state;
ClusterText()
constructor
Definition: RagTime5Text.cxx:144
std::vector< int > m_ids
the data ids
Definition: RagTime5ClusterManager.hxx:205
basic class to store an entry in a file This contained :
Definition: MWAWEntry.hxx:46
bool m_isParsed
a flag to know if the zone is parsed
Definition: RagTime5StructManager.hxx:148
std::shared_ptr< MWAWInputStream > MWAWInputStreamPtr
a smart pointer of MWAWInputStream
Definition: libmwaw_internal.hxx:549
~ClustListParser() final
destructor
Definition: RagTime5Text.cxx:1150
bool readFieldZones(RagTime5ClusterManager::Cluster &cluster, RagTime5ClusterManager::Link const &link, bool isDefinition)
try to read a list of field definition
Definition: RagTime5Text.cxx:307
Definition: RagTime5ClusterManager.hxx:107
void endZone() final
end of a start zone call
Definition: RagTime5Text.cxx:1254
std::shared_ptr< RagTime5ClusterManager > getClusterManager()
returns the cluster manager
Definition: RagTime5Parser.cxx:326
std::vector< PLC > m_PLCList
the PLC list
Definition: RagTime5Text.cxx:190
RagTime5ClusterManager::Link m_separatorLink
the word/separator link
Definition: RagTime5Text.cxx:175
#define MWAW_DEBUG_MSG(M)
Definition: libmwaw_internal.hxx:129
MWAWVec2< float > MWAWVec2f
MWAWVec2 of float.
Definition: libmwaw_internal.hxx:840
int m_what
a index to know which field is parsed : 0: main, 1: list zones, 3: linkdef, 4: list,...
Definition: RagTime5Text.cxx:2002
Internal: the helper to read a clustList.
Definition: RagTime5Text.cxx:1088
void addDelimiter(long pos, char c)
adds a not breaking delimiter in position pos
Definition: MWAWDebug.cxx:73
a PLC of a RagTime5Text
Definition: RagTime5Text.cxx:65
RagTime5ClusterManager::Link m_block2ToPlcLink
the block2 to plc link
Definition: RagTime5Text.cxx:173
int m_numZones
the number of zones
Definition: RagTime5Text.cxx:1998
RagTime5ClusterManager::Link m_contentLink
the main content
Definition: RagTime5Text.cxx:163
Cluster(Type type)
constructor
Definition: RagTime5ClusterManager.hxx:237
std::shared_ptr< RagTime5ClusterManager::Cluster > getCluster() final
return the current cluster
Definition: RagTime5Text.cxx:1233
bool parseDataZone(MWAWInputStreamPtr &input, long fSz, int N, int flag, libmwaw::DebugStream &f)
parse a data block
Definition: RagTime5Text.cxx:1467
a small struct use to define a block of a RagTime5Text
Definition: RagTime5Text.cxx:109
Link m_link
the actual link
Definition: RagTime5ClusterManager.hxx:428
std::string m_kinds[2]
the zone types: normal and packing
Definition: RagTime5StructManager.hxx:130
Definition: RagTime5StructManager.hxx:238
the main class to read a RagTime v5 file
Definition: RagTime5Parser.hxx:73
std::shared_ptr< RagTime5TextInternal::State > m_state
the state
Definition: RagTime5Text.hxx:161
libmwaw::DebugFile & ascii()
returns the current ascii file
Definition: RagTime5StructManager.hxx:107
bool send(int zoneId, MWAWListenerPtr listener, int partId=0, int block2Id=0)
try to send the cluster zone
Definition: RagTime5Text.cxx:243
bool readListZone(RagTime5ClusterManager::Link const &link)
try to read a list zone
Definition: RagTime5Parser.cxx:1608
bool parseData(MWAWInputStreamPtr &input, long endPos, RagTime5Zone &, int, libmwaw::DebugStream &f) final
try to parse a data
Definition: RagTime5Text.cxx:1165
Block()
constructor
Definition: RagTime5Text.cxx:111
RagTime5Text & operator=(RagTime5Text const &orig)=delete
a field of RagTime 5/6 structures
Definition: RagTime5StructManager.hxx:235
RagTime5ClusterManager::Link m_plcToStyleLink
the plc to text style link
Definition: RagTime5Text.cxx:171
bool m_isSent
true if the cluster was send
Definition: RagTime5ClusterManager.hxx:277
std::string getClusterName(int id)
returns "data"+id+"A" ( followed by the cluster type and name if know)
Definition: RagTime5ClusterManager.cxx:223
virtual class use to parse the cluster data
Definition: RagTime5ClusterManager.hxx:350
int m_plcDefNumFree
the number of free block in the plc definition list
Definition: RagTime5Text.cxx:169
ClustListParser(RagTime5ClusterManager &clusterManager, std::string const &zoneName)
constructor
Definition: RagTime5Text.cxx:1090
class to store the paragraph properties
Definition: MWAWParagraph.hxx:84
bool readTextSeparators(RagTime5Zone &zone, std::vector< int > &pos)
try to read the text separators
Definition: RagTime5Text.cxx:262
MWAWEntry m_entry
the zone entry
Definition: RagTime5StructManager.hxx:132
bool parseZone(MWAWInputStreamPtr &input, long fSz, int N, int flag, libmwaw::DebugStream &f) final
parse a zone
Definition: RagTime5Text.cxx:1301
friend std::ostream & operator<<(std::ostream &o, Block const &block)
operator<<
Definition: RagTime5Text.cxx:120
virtual class use to parse the unstructured data
Definition: RagTime5StructManager.hxx:384
int numPages() const
returns the number of pages
Definition: RagTime5Text.cxx:236
MWAWBox2f m_dimension
the block dimension
Definition: RagTime5Text.cxx:134
int m_id
the block id
Definition: RagTime5Text.cxx:130
DataParser(std::string const &zoneName)
constructor
Definition: RagTime5StructManager.hxx:386
bool readFixedSizeZone(RagTime5ClusterManager::Link const &link, std::string const &name)
try to read a fixed size zone
Definition: RagTime5Parser.cxx:1681
std::shared_ptr< ClusterText > getTextCluster()
return the text cluster
Definition: RagTime5Text.cxx:1238
~TextCParser() final
destructor
Definition: RagTime5Text.cxx:2016
void addNote(char const *note)
adds a note in the file, in actual position
Definition: MWAWDebug.cxx:59
bool parseZoneBlock(MWAWInputStreamPtr &input, long fSz, int N, int flag, libmwaw::DebugStream &f)
parse a zone block
Definition: RagTime5Text.cxx:1919
Internal: the structures of a RagTime5Text.
Definition: RagTime5Text.cxx:62
Definition: RagTime5StructManager.hxx:237
std::shared_ptr< RagTime5Zone > getDataZone(int dataId) const
returns the zone corresponding to a data id (or 0)
Definition: RagTime5Parser.cxx:376
PLC()
constructor
Definition: RagTime5Text.cxx:67
bool readFieldPosition(RagTime5Zone &zone, long endPos, int n)
try to read a field position
Definition: RagTime5Text.cxx:511
basic class used to manage RagTime 5/6 zones
Definition: RagTime5ClusterManager.hxx:58
RagTime5ClusterManager::Link m_clusterLink[2]
cluster links 0: list of size 10(pipeline?) and 14(graphic?), 1: list of size 12(related to link)
Definition: RagTime5Text.cxx:177
MWAWParserStatePtr m_parserState
the parser state
Definition: RagTime5Text.hxx:158
basic class used to read/store RagTime 5/6 styles
Definition: RagTime5StyleManager.hxx:60
bool parseData(MWAWInputStreamPtr &input, long endPos, RagTime5Zone &, int, libmwaw::DebugStream &f) final
try to parse a data
Definition: RagTime5Text.cxx:1105
bool checkClusterList(std::vector< RagTime5StructManager::ZoneLink > const &list)
check a cluster list
Definition: RagTime5Parser.cxx:1093
std::multimap< int, int > m_posToStyleIdMap
position to plc map
Definition: RagTime5Text.cxx:192
int m_N
the number of data ( or some flag if m_N & 0x8020)
Definition: RagTime5ClusterManager.hxx:207
Internal: the state of a RagTime5Text.
Definition: RagTime5Text.cxx:201
int m_linkId
the link id: 0: linkdef, 1-2: cluster list, 3: text unknown, 4: unkA list, 5:unkn fixed fSz==14
Definition: RagTime5Text.cxx:2004
void startZone() final
start a new zone
Definition: RagTime5Text.cxx:1243
bool empty() const
returns true if all link are empty
Definition: RagTime5ClusterManager.hxx:126
int m_actualZone
the actual zone
Definition: RagTime5Text.cxx:1996
int m_plcDefFreeBegin
the plc first free block in the plc definition list
Definition: RagTime5Text.cxx:167
std::string getKindLastPart(bool main=true) const
returns the main type
Definition: RagTime5StructManager.hxx:80
Definition: RagTime5StructManager.hxx:237
int m_position
the position in the text
Definition: RagTime5Text.cxx:101
bool m_hiLoEndian
the cluster hiLo endian
Definition: RagTime5ClusterManager.hxx:259
main zone in a RagTime v5-v6 document
Definition: RagTime5StructManager.hxx:48
std::vector< std::vector< Block > > m_blockList
list of block (defined in header)
Definition: RagTime5Text.cxx:186
bool readPLC(RagTime5TextInternal::ClusterText &cluster, int zoneId)
try to read a list of PLC
Definition: RagTime5Text.cxx:687
Definition: RagTime5ClusterManager.hxx:228
long length() const
returns the length of the zone
Definition: MWAWEntry.hxx:92
bool readPositions(int posId, std::vector< long > &listPosition)
try to read a positions zone in data
Definition: RagTime5Parser.cxx:922
int m_fileType
the file type
Definition: RagTime5Text.cxx:103
bool parseField(RagTime5StructManager::Field const &field, int, libmwaw::DebugStream &f) final
parse a field
Definition: RagTime5Text.cxx:1324
MWAWInputStreamPtr getInput()
returns the current input
Definition: RagTime5StructManager.hxx:91
long begin() const
returns the begin offset
Definition: MWAWEntry.hxx:82
int m_numPages
the number of pages
Definition: RagTime5Text.cxx:209
void flushExtra()
sends the data which have not yet been sent to the listener
Definition: RagTime5Text.cxx:848
std::vector< long > m_longList
a list of long used to store decal
Definition: RagTime5ClusterManager.hxx:213
MWAWBox2< float > MWAWBox2f
MWAWBox2 of float.
Definition: libmwaw_internal.hxx:1191
low level: the text cluster of a RagTime5Text
Definition: RagTime5Text.cxx:142
int version() const
returns the file version
Definition: RagTime5Text.cxx:231
std::shared_ptr< RagTime5StyleManager > m_styleManager
the style manager
Definition: RagTime5Text.hxx:156
libmwaw::DebugFile & m_asciiFile
the ascii file
Definition: RagTime5Text.cxx:2008
RagTime5ClusterManager::Link m_unknownLink[2]
list of unknown link: first with field of size 14, 2th with field of size 12
Definition: RagTime5Text.cxx:181
Definition: RagTime5StructManager.hxx:237
the main class to read the text part of RagTime 56 file
Definition: RagTime5Text.hxx:75
std::vector< int > m_clusterList
the list of read cluster
Definition: RagTime5Text.cxx:1140
RagTime5ClusterManager & m_clusterManager
the main zone manager
Definition: RagTime5Text.cxx:1143
std::string getClusterName(int id) const
returns a name which can be used to debugging
Definition: RagTime5Text.cxx:1099
std::shared_ptr< RagTime5ClusterManager::Cluster > readTextCluster(RagTime5Zone &zone, int zoneType)
try to read a text cluster
Definition: RagTime5Text.cxx:2022
Block2ListParser & operator=(Block2ListParser &orig)=delete
copy operator, not implemented
int m_value
an unknown value
Definition: RagTime5Text.cxx:105
long end() const
returns the end offset
Definition: MWAWEntry.hxx:87
bool readFieldDefinition(RagTime5Zone &zone, long endPos, int n)
try to read a field definition
Definition: RagTime5Text.cxx:378
~ClusterText() final
destructor
Definition: RagTime5Text.cxx:195
std::shared_ptr< ClusterText > m_cluster
the current cluster
Definition: RagTime5Text.cxx:1992
Definition: RagTime5ClusterManager.hxx:110
std::map< int, size_t > m_NToBlockIdMap
the field pos to block map
Definition: RagTime5Text.cxx:2000
int m_zoneId
the zone id
Definition: RagTime5ClusterManager.hxx:257
int m_subId
the block sub id
Definition: RagTime5Text.cxx:132
std::string m_fieldName
the actual field name
Definition: RagTime5Text.cxx:2006
TextCParser(RagTime5ClusterManager &parser, int type, libmwaw::DebugFile &ascii)
constructor
Definition: RagTime5Text.cxx:1217
Internal: the helper to read a block 2 list.
Definition: RagTime5Text.cxx:1155
int m_id
the block id
Definition: RagTime5Text.cxx:1994
RagTime5Parser & m_mainParser
the parser
Definition: RagTime5Text.hxx:151
friend std::ostream & operator<<(std::ostream &o, PLC const &plc)
operator<<
Definition: RagTime5Text.cxx:74
std::shared_ptr< RagTime5StructManager > m_structManager
the structure manager
Definition: RagTime5Text.hxx:154
Definition: RagTime5StructManager.hxx:237
bool parseHeaderZone(MWAWInputStreamPtr &input, long fSz, int N, int flag, libmwaw::DebugStream &f)
parse the header zone
Definition: RagTime5Text.cxx:1748
std::shared_ptr< MWAWParserState > MWAWParserStatePtr
a smart pointer of MWAWParserState
Definition: libmwaw_internal.hxx:555
RagTime5Text(RagTime5Parser &parser)
constructor
Definition: RagTime5Text.cxx:219
void addPos(long pos)
adds a new position in the file
Definition: MWAWDebug.cxx:53
bool valid() const
returns true if the zone length is positive
Definition: MWAWEntry.hxx:98
basic class used to store RagTime 5/6 structures
Definition: RagTime5StructManager.hxx:170
virtual ~RagTime5Text()
destructor
Definition: RagTime5Text.cxx:228
int m_ids[3]
the zone id
Definition: RagTime5StructManager.hxx:138
a link to a small zone (or set of zones) in RagTime 5/6 documents
Definition: RagTime5ClusterManager.hxx:105
ClustListParser & operator=(ClustListParser &orig)=delete
copy operator, not implemented
an interface used to insert comment in a binary file, written in ascii form (if debug_with_files is n...
Definition: MWAWDebug.hxx:65
the cluster data
Definition: RagTime5ClusterManager.hxx:221
namespace used to regroup all libwpd functions, enumerations which we have redefined for internal usa...
Definition: libmwaw_internal.cxx:50
std::shared_ptr< MWAWListener > MWAWListenerPtr
a smart pointer of MWAWListener
Definition: libmwaw_internal.hxx:551
~Block2ListParser() final
destructor
Definition: RagTime5Text.cxx:1208
Class to store font.
Definition: MWAWFont.hxx:43
std::string m_extra
extra data
Definition: RagTime5Text.cxx:138
bool readPLCToCharStyle(RagTime5TextInternal::ClusterText &cluster)
try to read a plc id to char style correspondance
Definition: RagTime5Text.cxx:766
std::vector< Block > m_blockList
the list of block
Definition: RagTime5Text.cxx:1200
bool readLinkZones(RagTime5ClusterManager::Cluster &cluster, RagTime5ClusterManager::Link const &link)
try to read a list of link/list definition
Definition: RagTime5Text.cxx:549
friend class RagTime5TextInternal::SubDocument
Definition: RagTime5Text.hxx:77
RagTime5ClusterManager::Link m_plcDefLink
the plc definition link
Definition: RagTime5Text.cxx:165
low level: parser of text cluster
Definition: RagTime5Text.cxx:1215
Block2ListParser()
constructor
Definition: RagTime5Text.cxx:1157
static bool readDataIdList(MWAWInputStreamPtr input, int n, std::vector< int > &listIds)
try to read n data id
Definition: RagTime5StructManager.cxx:269
std::stringstream DebugStream
a basic stream (if debug_with_files is not defined, does nothing)
Definition: MWAWDebug.hxx:61
std::map< int, std::shared_ptr< ClusterText > > m_idTextMap
map data id to text zone
Definition: RagTime5Text.cxx:211
std::vector< RagTime5ClusterManager::Link > m_linkDefList
the list of link zone
Definition: RagTime5Text.cxx:179
int m_plc[2]
the list of zone plc (first-end)
Definition: RagTime5Text.cxx:136
std::vector< Block > m_block2List
list of block (defined in block2 list)
Definition: RagTime5Text.cxx:188
ClusterParser(RagTime5ClusterManager &parser, int type, std::string const &zoneName)
constructor
Definition: RagTime5ClusterManager.hxx:352
int m_fieldSize
the field size
Definition: RagTime5ClusterManager.hxx:209
State()
constructor
Definition: RagTime5Text.cxx:203
Generated on Mon Aug 19 2019 21:07:34 for libmwaw by
doxygen 1.8.16