CorelPainterParser Class Referencefinal

the main class to read a Painter's file, actually, read Fractal Design Painter 1-4, MetaCreation v5-v6 and Corel Painter v7-v10 Mac files and Fractal Design Painter 3 Windows files. More...

`#include <CorelPainterParser.hxx>`

Inheritance diagram for CorelPainterParser:

## Public Member Functions
| CorelPainterParser (MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header)
| constructor
| ~CorelPainterParser () final
| destructor
bool | checkHeader (MWAWHeader *header, bool strict=false) final
| checks if the document header is correct (or not)
void | parse (librevenge::RVNGDrawingInterface *documentInterface) final
| the main parser function
Public Member Functions inherited from MWAWGraphicParser
| ~MWAWGraphicParser () 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
MWAWHeader * | getHeader ()
| returns the header
MWAWInputStreamPtr & | getInput ()
| returns the actual input
MWAWListenerPtr | getMainListener ()
| returns the main listener
MWAWGraphicListenerPtr & | getGraphicListener ()
| returns the graphic listener
MWAWPresentationListenerPtr & | getPresentationListener ()
| returns the presentation listener
MWAWSpreadsheetListenerPtr & | getSpreadsheetListener ()
| returns the spreadsheet listener
MWAWTextListenerPtr & | getTextListener ()
| returns the text listener
MWAWFontConverterPtr & | getFontConverter ()
| returns the font converter
MWAWFontManagerPtr & | getFontManager ()
| returns the font manager
MWAWPageSpan const & | getPageSpan () const
| returns the actual page dimension
MWAWPageSpan & | getPageSpan ()
| 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 )
MWAWRSRCParserPtr & | getRSRCParser ()
| returns the rsrc parser
libmwaw::DebugFile & | ascii ()
| 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::RVNGDrawingInterface *documentInterface)
| creates the listener which will be associated to the document
bool | sendBitmap (CorelPainterParserInternal::ZoneHeader const &zone)
| try to send a bitmap zone (main bitmap or floater)
bool | sendZone (CorelPainterParserInternal::ZoneHeader const &zone)
| try to send a not bitmap zone
bool | createZones ()
| finds the different objects zones
std::shared_ptr< CorelPainterParserInternal::Node > | readCompressionTree (long endPos, int numNodes)
| try to read the Hoffman tree
bool | decompressData (CorelPainterParserInternal::ZoneHeader const &zone, long endPos, int &value, int &buffer, int &numBitsInBuffer)
| try to decompress a data
bool | readZoneHeader (CorelPainterParserInternal::ZoneHeader &zone)
| try to read the header zone
std::shared_ptr< MWAWPict > | readBitmap (CorelPainterParserInternal::ZoneHeader const &zone)
| try to read a bitmap
bool | readBitmapRow (CorelPainterParserInternal::ZoneHeader const &zone, std::vector< MWAWColor > &colorList, std::vector< unsigned char > &previousValues)
| try to read a bitmap line
bool | readResourcesList (CorelPainterParserInternal::ZoneHeader &zone)
| try to read the list of resource zone (in the data fork)
bool | readResource (MWAWEntry const &entry)
| try to parse the resource data
bool | sendText (MWAWEntry const &entry, MWAWEntry const &unicodeEntry)
| try to parse the text data
bool | readPolygon (long endPos, MWAWGraphicShape &shape, MWAWGraphicStyle &style)
| try to read a polygon data
MWAWPosition | getZonePosition (CorelPainterParserInternal::ZoneHeader const &zone) const
| update the position beforing sending a bitmap, shape, ...
bool | readDouble (double &res)
| try to read a double 1 bytes exponent, 3 mantisse
Protected Member Functions inherited from MWAWGraphicParser
| MWAWGraphicParser (MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header)
| constructor (protected)
| MWAWGraphicParser (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< CorelPainterParserInternal::State > | m_state
| the state

## Friends
class | CorelPainterParserInternal::SubDocument

## Detailed Description

the main class to read a Painter's file, actually, read Fractal Design Painter 1-4, MetaCreation v5-v6 and Corel Painter v7-v10 Mac files and Fractal Design Painter 3 Windows files.

## Constructor & Destructor Documentation

## ◆ CorelPainterParser()

CorelPainterParser::CorelPainterParser | ( | MWAWInputStreamPtr const & | input,
|  | MWAWRSRCParserPtr const & | rsrcParser,
|  | MWAWHeader * | header )

constructor

## ◆ ~CorelPainterParser()

CorelPainterParser::~CorelPainterParser | ( |  | ) |
| final

destructor

## Member Function Documentation

## ◆ checkHeader()

bool CorelPainterParser::checkHeader | ( | MWAWHeader * | header,
|  | bool | strict = false )
| final virtual

checks if the document header is correct (or not)

Implements MWAWParser.

Referenced by CorelPainterParserInternal::SubDocument, and parse().

## ◆ createDocument()

void CorelPainterParser::createDocument | ( | librevenge::RVNGDrawingInterface * | documentInterface | ) |
| protected

creates the listener which will be associated to the document

Referenced by CorelPainterParserInternal::SubDocument, and parse().

## ◆ createZones()

bool CorelPainterParser::createZones | ( |  | ) |
| protected

finds the different objects zones

Referenced by CorelPainterParserInternal::SubDocument, and parse().

## ◆ decompressData()

bool CorelPainterParser::decompressData | ( | CorelPainterParserInternal::ZoneHeader const & | zone,
|  | long | endPos,
|  | int & | value,
|  | int & | buffer,
|  | int & | numBitsInBuffer )
| protected

try to decompress a data

Referenced by CorelPainterParserInternal::SubDocument, and readBitmapRow().

## ◆ getZonePosition()

MWAWPosition CorelPainterParser::getZonePosition | ( | CorelPainterParserInternal::ZoneHeader const & | zone | ) | const
| protected

update the position beforing sending a bitmap, shape, ...

Referenced by CorelPainterParserInternal::SubDocument, sendBitmap(), and sendZone().

## ◆ init()

void CorelPainterParser::init | ( |  | ) |
| protected

inits all internal variables

Referenced by CorelPainterParser(), and CorelPainterParserInternal::SubDocument.

## ◆ parse()

void CorelPainterParser::parse | ( | librevenge::RVNGDrawingInterface * | documentInterface | ) |
| final virtual

the main parser function

Implements MWAWGraphicParser.

Referenced by CorelPainterParserInternal::SubDocument.

## ◆ readBitmap()

std::shared_ptr< MWAWPict > CorelPainterParser::readBitmap | ( | CorelPainterParserInternal::ZoneHeader const & | zone | ) |
| protected

try to read a bitmap

Referenced by CorelPainterParserInternal::SubDocument, and sendBitmap().

## ◆ readBitmapRow()

bool CorelPainterParser::readBitmapRow | ( | CorelPainterParserInternal::ZoneHeader const & | zone,
|  | std::vector< MWAWColor > & | colorList,
|  | std::vector< unsigned char > & | previousValues )
| protected

try to read a bitmap line

Referenced by CorelPainterParserInternal::SubDocument, and readBitmap().

## ◆ readCompressionTree()

std::shared_ptr< CorelPainterParserInternal::Node > CorelPainterParser::readCompressionTree | ( | long | endPos,
|  | int | numNodes )
| protected

try to read the Hoffman tree

Referenced by CorelPainterParserInternal::SubDocument, and readZoneHeader().

## ◆ readDouble()

bool CorelPainterParser::readDouble | ( | double & | res | ) |
| protected

try to read a double 1 bytes exponent, 3 mantisse

Referenced by CorelPainterParserInternal::SubDocument, and sendText().

## ◆ readPolygon()

bool CorelPainterParser::readPolygon | ( | long | endPos,
|  | MWAWGraphicShape & | shape,
|  | MWAWGraphicStyle & | style )
| protected

try to read a polygon data

Referenced by CorelPainterParserInternal::SubDocument, and sendZone().

## ◆ readResource()

bool CorelPainterParser::readResource | ( | MWAWEntry const & | entry | ) |
| protected

try to parse the resource data

Referenced by CorelPainterParserInternal::SubDocument, and readResourcesList().

## ◆ readResourcesList()

bool CorelPainterParser::readResourcesList | ( | CorelPainterParserInternal::ZoneHeader & | zone | ) |
| protected

try to read the list of resource zone (in the data fork)

Referenced by CorelPainterParserInternal::SubDocument, and createZones().

## ◆ readZoneHeader()

bool CorelPainterParser::readZoneHeader | ( | CorelPainterParserInternal::ZoneHeader & | zone | ) |
| protected

try to read the header zone

Referenced by checkHeader(), CorelPainterParserInternal::SubDocument, and createZones().

## ◆ sendBitmap()

bool CorelPainterParser::sendBitmap | ( | CorelPainterParserInternal::ZoneHeader const & | zone | ) |
| protected

try to send a bitmap zone (main bitmap or floater)

Referenced by CorelPainterParserInternal::SubDocument, and parse().

## ◆ sendText()

bool CorelPainterParser::sendText | ( | MWAWEntry const & | entry,
|  | MWAWEntry const & | unicodeEntry )
| protected

try to parse the text data

Referenced by CorelPainterParserInternal::SubDocument.

## ◆ sendZone()

bool CorelPainterParser::sendZone | ( | CorelPainterParserInternal::ZoneHeader const & | zone | ) |
| protected

try to send a not bitmap zone

Referenced by CorelPainterParserInternal::SubDocument, and parse().

## Friends And Related Symbol Documentation

## ◆ CorelPainterParserInternal::SubDocument

friend class CorelPainterParserInternal::SubDocument
| friend

## Member Data Documentation

## ◆ m_state

std::shared_ptr<CorelPainterParserInternal::State> CorelPainterParser::m_state
| protected

the state

Referenced by checkHeader(), CorelPainterParser(), createDocument(), createZones(), getZonePosition(), init(), parse(), and sendZone().

The documentation for this class was generated from the following files:

- CorelPainterParser.hxx
- CorelPainterParser.cxx