Classes | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
RagTime5ChartInternal::ChartCParser Struct Reference

low level: parser of chart cluster More...

Inheritance diagram for RagTime5ChartInternal::ChartCParser:

## Classes
struct | ZoneType
| a small structure used to stored a field type More...

## Public Member Functions
| ChartCParser (RagTime5ClusterManager &parser, int type, libmwaw::DebugFile &ascii)
| constructor More...
| ~ChartCParser ()
| destructor More...
shared_ptr< RagTime5ClusterManager::Cluster > | getCluster ()
| return the current cluster More...
shared_ptr< ClusterChart > | getChartCluster ()
| return the current cluster More...
shared_ptr< Chart > | getChart ()
| return the chart More...
void | insertZoneToBeParsed (int id, ZoneType const &type, bool canBeDuplicated=false)
| insert a new zone to be parsed More...
bool | checkFatherType (int id, ZoneType::Type type) const
| try to check the father type More...
virtual int | getNewZoneToParse ()
| returns to new zone to parse. More...
void | endZone ()
| end of a start zone call More...
bool | parseZone (MWAWInputStreamPtr &input, long fSz, int N, int flag, libmwaw::DebugStream &f)
| parse a zone More...
bool | parseField (RagTime5StructManager::Field const &field, int, libmwaw::DebugStream &f)
| parse a field More...
Public Member Functions inherited from RagTime5ClusterManager::ClusterParser
| ClusterParser (RagTime5ClusterManager &parser, int type, std::string const &zoneName)
| constructor More...
virtual | ~ClusterParser ()
| destructor More...
virtual std::string | getZoneName () const
| return the debug name corresponding to a zone More...
virtual std::string | getZoneName (int n, int m=-1) const
| return the debug name corresponding to a cluster More...
virtual void | startZone ()
| start a new zone More...
bool | isANameHeader (long N) const
| return true if N correspond to a file/script name More...
bool | readLinkHeader (MWAWInputStreamPtr &input, long fSz, Link &link, long(&values)[4], std::string &message)
| try to read a link header More...
std::string | getClusterName (int id)
| returns "data"+id+"A" ( followed by the cluster type and name if know) More...

## Protected Member Functions
bool | parseDataZone (MWAWInputStreamPtr &input, long fSz, int N, int flag, libmwaw::DebugStream &f)
| parse a data block More...
bool | parseHeaderZone (MWAWInputStreamPtr &input, long fSz, int N, int flag, libmwaw::DebugStream &f)
| parse the header zone More...

## Protected Attributes
shared_ptr< ClusterChart > | m_cluster
| the current cluster More...
shared_ptr< Chart > | m_chart
| the chart More...
int | m_what
| a index to know which field is parsed : 0: main, 1: common data, 2: list, 3: sub zone position, 4: unknown1, 5: the preferences More...
int | m_linkId
| the link id: 1: value double, 2: value text zone More...
std::string | m_fieldName
| the actual field name More...
ZoneType | m_zoneType
| the current zone type More...
std::map< int, ZoneType > | m_fieldIdToZoneTypeMap
| the list of id to zone type map More...
std::set< int > | m_zoneToParseSet
| the list of know zone remaining to be parsed More...
libmwaw::DebugFile & | m_asciiFile
| the ascii file More...

## Private Member Functions
| ChartCParser (ChartCParser const &orig)
| copy constructor (not implemented) More...
ChartCParser & | operator= (ChartCParser const &orig)
| copy operator (not implemented) More...

## Additional Inherited Members
Public Attributes inherited from RagTime5ClusterManager::ClusterParser
RagTime5ClusterManager & | m_parser
| the main parser More...
int | m_type
| the cluster type More...
bool | m_hiLoEndian
| zone endian More...
std::string | m_name
| the cluster name More...
int | m_dataId
| the actual zone id More...
Link | m_link
| the actual link More...

## Detailed Description

low level: parser of chart cluster

## Constructor & Destructor Documentation

## ◆ ChartCParser() [1/2]

RagTime5ChartInternal::ChartCParser::ChartCParser | ( | RagTime5ClusterManager & | parser,
|  | int | type,
|  | libmwaw::DebugFile & | ascii
| ) |  |
| inline

constructor

## ◆ ~ChartCParser()

RagTime5ChartInternal::ChartCParser::~ChartCParser | ( |  | ) |

destructor

## ◆ ChartCParser() [2/2]

RagTime5ChartInternal::ChartCParser::ChartCParser | ( | ChartCParser const & | orig | ) |
| private

copy constructor (not implemented)

## Member Function Documentation

## ◆ checkFatherType()

bool RagTime5ChartInternal::ChartCParser::checkFatherType | ( | int | id,
|  | ZoneType::Type | type
| ) |  | const
| inline

try to check the father type

## ◆ endZone()

void RagTime5ChartInternal::ChartCParser::endZone | ( |  | ) |
| inline virtual

end of a start zone call

Reimplemented from RagTime5ClusterManager::ClusterParser.

## ◆ getChart()

shared_ptr<Chart> RagTime5ChartInternal::ChartCParser::getChart | ( |  | ) |
| inline

return the chart

## ◆ getChartCluster()

shared_ptr<ClusterChart> RagTime5ChartInternal::ChartCParser::getChartCluster | ( |  | ) |
| inline

return the current cluster

## ◆ getCluster()

shared_ptr<RagTime5ClusterManager::Cluster> RagTime5ChartInternal::ChartCParser::getCluster | ( |  | ) |
| inline virtual

return the current cluster

Implements RagTime5ClusterManager::ClusterParser.

## ◆ getNewZoneToParse()

virtual int RagTime5ChartInternal::ChartCParser::getNewZoneToParse | ( |  | ) |
| inline virtual

returns to new zone to parse.

-1: means no preference, 0: means first zone, ...

Reimplemented from RagTime5ClusterManager::ClusterParser.

## ◆ insertZoneToBeParsed()

void RagTime5ChartInternal::ChartCParser::insertZoneToBeParsed | ( | int | id,
|  | ZoneType const & | type,
|  | bool | canBeDuplicated = `false`
| ) |  |
| inline

insert a new zone to be parsed

## ◆ operator=()

ChartCParser& RagTime5ChartInternal::ChartCParser::operator= | ( | ChartCParser const & | orig | ) |
| private

copy operator (not implemented)

## ◆ parseDataZone()

bool RagTime5ChartInternal::ChartCParser::parseDataZone | ( | MWAWInputStreamPtr & | input,
|  | long | fSz,
|  | int | N,
|  | int | flag,
|  | libmwaw::DebugStream & | f
| ) |  |
| inline protected

parse a data block

## ◆ parseField()

bool RagTime5ChartInternal::ChartCParser::parseField | ( | RagTime5StructManager::Field const & | field,
|  | int | ,
|  | libmwaw::DebugStream & | f
| ) |  |
| inline virtual

parse a field

Reimplemented from RagTime5ClusterManager::ClusterParser.

## ◆ parseHeaderZone()

bool RagTime5ChartInternal::ChartCParser::parseHeaderZone | ( | MWAWInputStreamPtr & | input,
|  | long | fSz,
|  | int | N,
|  | int | flag,
|  | libmwaw::DebugStream & | f
| ) |  |
| inline protected

parse the header zone

## ◆ parseZone()

bool RagTime5ChartInternal::ChartCParser::parseZone | ( | MWAWInputStreamPtr & | input,
|  | long | fSz,
|  | int | N,
|  | int | flag,
|  | libmwaw::DebugStream & | f
| ) |  |
| inline virtual

parse a zone

Reimplemented from RagTime5ClusterManager::ClusterParser.

## Member Data Documentation

## ◆ m_asciiFile

libmwaw::DebugFile& RagTime5ChartInternal::ChartCParser::m_asciiFile
| protected

the ascii file

## ◆ m_chart

shared_ptr<Chart> RagTime5ChartInternal::ChartCParser::m_chart
| protected

the chart

## ◆ m_cluster

shared_ptr<ClusterChart> RagTime5ChartInternal::ChartCParser::m_cluster
| protected

the current cluster

## ◆ m_fieldIdToZoneTypeMap

std::map<int, ZoneType> RagTime5ChartInternal::ChartCParser::m_fieldIdToZoneTypeMap
| protected

the list of id to zone type map

## ◆ m_fieldName

std::string RagTime5ChartInternal::ChartCParser::m_fieldName
| protected

the actual field name

## ◆ m_linkId

int RagTime5ChartInternal::ChartCParser::m_linkId
| protected

the link id: 1: value double, 2: value text zone

## ◆ m_what

int RagTime5ChartInternal::ChartCParser::m_what
| protected

a index to know which field is parsed : 0: main, 1: common data, 2: list, 3: sub zone position, 4: unknown1, 5: the preferences

## ◆ m_zoneToParseSet

std::set<int> RagTime5ChartInternal::ChartCParser::m_zoneToParseSet
| protected

the list of know zone remaining to be parsed

## ◆ m_zoneType

ZoneType RagTime5ChartInternal::ChartCParser::m_zoneType
| protected

the current zone type

The documentation for this struct was generated from the following file:

- RagTime5Chart.cxx