10 #ifndef __CMXPARSER_H__
11 #define __CMXPARSER_H__
17 #include <librevenge-stream/librevenge-stream.h>
21 #define CMX_MASTER_INDEX_TABLE 1
22 #define CMX_PAGE_INDEX_TABLE 2
23 #define CMX_MASTER_LAYER_TABLE 3
24 #define CMX_PROCEDURE_INDEX_TABLE 4
25 #define CMX_BITMAP_INDEX_TABLE 5
26 #define CMX_ARROW_INDEX_TABLE 6
27 #define CMX_FONT_INDEX_TABLE 7
28 #define CMX_EMBEDDED_FILE_INDEX_TABLE 8
29 #define CMX_THUMBNAIL_SECTION 10
30 #define CMX_OUTLINE_DESCRIPTION_SECTION 15
31 #define CMX_LINE_STYLE_DESCRIPTION_SECTION 16
32 #define CMX_ARROWHEADS_DESCRIPTION_SECTION 17
33 #define CMX_SCREEN_DESCRIPTION_SECTION 18
34 #define CMX_PEN_DESCRIPTION_SECTION 19
35 #define CMX_DOT_DASH_DESCRIPTION_SECTION 20
36 #define CMX_COLOR_DESCRIPTION_SECTION 21
37 #define CMX_COLOR_CORRECTION_SECTION 22
38 #define CMX_PREVIEW_BOX_SECTION 23
108 bool parseRecords(librevenge::RVNGInputStream *input,
long size = -1,
unsigned level = 0);
114 bool parseRecord(librevenge::RVNGInputStream *input,
unsigned level = 0);
115 void readRecord(
unsigned fourCC,
unsigned &length, librevenge::RVNGInputStream *input);
116 void parseImage(librevenge::RVNGInputStream *input);
119 void readDisp(librevenge::RVNGInputStream *input);
120 void readPage(librevenge::RVNGInputStream *input);
121 void readProc(librevenge::RVNGInputStream *input);
122 void readRclr(librevenge::RVNGInputStream *input);
123 void readRotl(librevenge::RVNGInputStream *input);
124 void readRott(librevenge::RVNGInputStream *input);
125 void readRdot(librevenge::RVNGInputStream *input);
126 void readRpen(librevenge::RVNGInputStream *input);
127 void readIxtl(librevenge::RVNGInputStream *input);
128 void readIxef(librevenge::RVNGInputStream *input);
129 void readIxmr(librevenge::RVNGInputStream *input);
130 void readIxpg(librevenge::RVNGInputStream *input);
131 void readIxpc(librevenge::RVNGInputStream *input);
132 void readInfo(librevenge::RVNGInputStream *input);
133 void readData(librevenge::RVNGInputStream *input);
136 void readCommands(librevenge::RVNGInputStream *input,
unsigned length);
141 void readEllipse(librevenge::RVNGInputStream *input);
150 librevenge::RVNGString
readString(librevenge::RVNGInputStream *input);
151 bool readFill(librevenge::RVNGInputStream *input);
152 bool readLens(librevenge::RVNGInputStream *input);
159 CDRColor readColor(librevenge::RVNGInputStream *input,
unsigned char colorModel);
161 const unsigned *
_getOffsetByType(
unsigned short type,
const std::map<unsigned short, unsigned> &offsets);
177 #endif // __CMXPARSER_H__
CDRPattern * m_currentPattern
Definition: CMXParser.h:171
void readRotl(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:1778
CMXOutline()
Definition: CMXParser.h:47
Definition: CMXParser.h:85
Definition: CommonParser.h:22
CMXLineStyle()
Definition: CMXParser.h:70
Definition: CMXParser.h:75
void readBeginPage(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:447
unsigned m_nextInstructionOffset
Definition: CMXParser.h:168
void readIxpg(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:1971
void readRclr(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:1630
void readData(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:2083
double m_aspect
Definition: CMXParser.h:63
double m_xmax
Definition: CMXParser.h:166
CMXParserState()
Definition: CMXParser.h:87
Definition: CDRTypes.h:23
CMXPen()
Definition: CMXParser.h:60
CDRTransform m_matrix
Definition: CMXParser.h:65
unsigned m_compressedSize
Definition: CMXParser.h:82
Definition: CMXParser.h:58
CDRBitmap * m_currentBitmap
Definition: CMXParser.h:172
unsigned char m_spec
Definition: CMXParser.h:71
std::map< unsigned, unsigned > m_embeddedOffsets
Definition: CMXParser.h:99
void readRott(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:1730
void readPolyCurve(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:546
void parseImage(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:118
unsigned char m_capAndJoin
Definition: CMXParser.h:72
CMXParser & operator=(const CMXParser &)
librevenge::RVNGString readString(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:963
void readRecord(unsigned fourCC, unsigned &length, librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:158
void readIxef(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:1933
std::map< unsigned, CDRColor > m_colorPalette
Definition: CMXParser.h:91
unsigned short m_arrowHeads
Definition: CMXParser.h:53
unsigned short m_unit
Definition: CMXParser.h:164
std::map< unsigned, unsigned > m_patternOffsets
Definition: CMXParser.h:97
Definition: CMXParser.h:103
bool readLens(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:972
double m_width
Definition: CMXParser.h:62
std::map< unsigned, CMXOutline > m_outlines
Definition: CMXParser.h:95
bool m_bigEndian
Definition: CMXParser.h:163
CMXParserState & m_parserState
Definition: CMXParser.h:169
std::map< unsigned, unsigned > m_arrowOffsets
Definition: CMXParser.h:98
CMXImageInfo m_currentImageInfo
Definition: CMXParser.h:170
Definition: CDRCollector.h:29
unsigned short m_dashArray
Definition: CMXParser.h:55
void readBeginProcedure(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:876
void readJumpAbsolute(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:1596
Definition: CMXParser.h:45
double m_ymin
Definition: CMXParser.h:166
void readInfo(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:2042
void readRpen(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:1834
bool parseRecords(librevenge::RVNGInputStream *input, long size=-1, unsigned level=0)
Definition: CMXParser.cpp:50
unsigned short m_pen
Definition: CMXParser.h:54
void readPage(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:427
void readEllipse(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:621
std::map< unsigned, CMXPen > m_pens
Definition: CMXParser.h:94
double m_ymax
Definition: CMXParser.h:166
unsigned short m_lineStyle
Definition: CMXParser.h:50
std::map< unsigned, std::vector< unsigned > > m_dashArrays
Definition: CMXParser.h:92
bool readFill(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:1016
unsigned m_fillIndex
Definition: CMXParser.h:167
unsigned short m_color
Definition: CMXParser.h:52
void readProc(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:437
CDRTransform readMatrix(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:923
const unsigned * _getOffsetByType(unsigned short type, const std::map< unsigned short, unsigned > &offsets)
Definition: CMXParser.cpp:304
void readRectangle(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:787
void readBeginGroup(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:499
CDRBox readBBox(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:953
void readIxtl(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:1887
unsigned m_size
Definition: CMXParser.h:81
std::map< unsigned, unsigned > m_embeddedOffsetTypes
Definition: CMXParser.h:100
bool parseRecord(librevenge::RVNGInputStream *input, unsigned level=0)
Definition: CMXParser.cpp:68
unsigned short m_compression
Definition: CMXParser.h:80
void readBeginLayer(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:496
std::map< unsigned, CMXLineStyle > m_lineStyles
Definition: CMXParser.h:93
virtual ~CMXParser()
Definition: CMXParser.cpp:42
double m_scale
Definition: CMXParser.h:165
CMXImageInfo()
Definition: CMXParser.h:77
Definition: CDRTypes.h:112
double m_xmin
Definition: CMXParser.h:166
unsigned short m_type
Definition: CMXParser.h:79
void readDrawImage(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:726
CDRLineStyle getLineStyle(unsigned id)
Definition: CMXParser.cpp:2286
void readDisp(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:255
Definition: CDRTypes.h:225
void readRdot(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:1680
Definition: CDRTypes.h:52
Definition: CDRTypes.h:215
double m_angle
Definition: CMXParser.h:64
void readCMXHeader(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:179
CDRColor readColor(librevenge::RVNGInputStream *input, unsigned char colorModel)
Definition: CMXParser.cpp:2167
void readIxpc(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:2005
void readCommands(librevenge::RVNGInputStream *input, unsigned length)
Definition: CMXParser.cpp:382
Definition: CMXParser.h:68
unsigned short m_screen
Definition: CMXParser.h:51
CDRColor getPaletteColor(unsigned id)
Definition: CMXParser.cpp:2159
Definition: CDRCollector.h:63
void readIxmr(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:312
bool readRenderingAttributes(librevenge::RVNGInputStream *input)
Definition: CMXParser.cpp:1423
std::map< unsigned, unsigned > m_bitmapOffsets
Definition: CMXParser.h:96