RagTime5LayoutInternal::LayoutCParser Struct Reference documentation

Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
RagTime5LayoutInternal::LayoutCParser Struct Referencefinal

low level: parser of layout cluster More...

Inheritance diagram for RagTime5LayoutInternal::LayoutCParser:

## Public Types
enum | { F_page, F_pageData0, F_pageData1, F_pageData2, F_pipeline, F_name, F_nextId =F_name+3, F_settingsDef, F_settings }

## Public Member Functions
| LayoutCParser (RagTime5ClusterManager &parser, int zoneType)
| constructor More...
| ~LayoutCParser () final
| destructor More...
std::shared_ptr< RagTime5ClusterManager::Cluster > | getCluster () final
| return the current cluster More...
std::shared_ptr< ClusterLayout > | getLayoutCluster ()
| return the current layout cluster More...
void | setExpectedType (int id, int type)
| set a data id type More...
int | getNewZoneToParse () final
| returns to new zone to parse. More...
void | startZone () final
| start a new zone More...
void | endZone () final
| end of a start zone call More...
bool | parseZone (MWAWInputStreamPtr &input, long fSz, int N, int flag, libmwaw::DebugStream &f) final
| parse a zone More...
bool | parseField (RagTime5StructManager::Field const &field, int, libmwaw::DebugStream &f) final
| 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...
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 | getClusterDebugName (int id)
| returns "data"+id+"A" ( followed by the cluster type and name if know) More...

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

## Protected Attributes
std::shared_ptr< ClusterLayout > | m_cluster
| the current cluster More...
int | m_numPages
| the number of pages More...
int | m_what
| a index to know which field is parsed : 0: main, 1:list of pages, 2: unknown, 3:data0, 4:list, 5: unknown, 6: list:longs2 More...
int | m_linkId
| the link id : 0: listItem, 1: pipeline, 2: settinglinks, 3: namelink, More...
std::string | m_fieldName
| the actual field name More...
ClusterLayout::Zone | m_actualZone
| the actual zone More...
std::map< int, int > | m_expectedIdToType
| the expected id More...
std::stack< int > | m_idStack
| the id stack 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 layout cluster

## Member Enumeration Documentation

## ◆ anonymous enum

anonymous enum

Enumerator
F_page |
F_pageData0 |
F_pageData1 |
F_pageData2 |
F_pipeline |
F_name |
F_nextId |
F_settingsDef |
F_settings |

## Constructor & Destructor Documentation

## ◆ LayoutCParser()

RagTime5LayoutInternal::LayoutCParser::LayoutCParser | ( | RagTime5ClusterManager & | parser,
|  | int | zoneType
| ) |  |
| inline

constructor

## ◆ ~LayoutCParser()

RagTime5LayoutInternal::LayoutCParser::~LayoutCParser | ( |  | ) |
| final

destructor

## Member Function Documentation

## ◆ endZone()

void RagTime5LayoutInternal::LayoutCParser::endZone | ( |  | ) |
| inlinefinalvirtual

end of a start zone call

Reimplemented from RagTime5ClusterManager::ClusterParser.

## ◆ getCluster()

std::shared_ptr<RagTime5ClusterManager::Cluster> RagTime5LayoutInternal::LayoutCParser::getCluster | ( |  | ) |
| inlinefinalvirtual

return the current cluster

Implements RagTime5ClusterManager::ClusterParser.

## ◆ getLayoutCluster()

std::shared_ptr<ClusterLayout> RagTime5LayoutInternal::LayoutCParser::getLayoutCluster | ( |  | ) |
| inline

return the current layout cluster

Referenced by RagTime5Layout::readLayoutCluster().

## ◆ getNewZoneToParse()

int RagTime5LayoutInternal::LayoutCParser::getNewZoneToParse | ( |  | ) |
| inlinefinalvirtual

returns to new zone to parse.

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

Reimplemented from RagTime5ClusterManager::ClusterParser.

## ◆ parseField()

bool RagTime5LayoutInternal::LayoutCParser::parseField | ( | RagTime5StructManager::Field const & | field,
|  | int | ,
|  | libmwaw::DebugStream & | f
| ) |  |
| inlinefinalvirtual

parse a field

Reimplemented from RagTime5ClusterManager::ClusterParser.

## ◆ parseHeaderZone()

bool RagTime5LayoutInternal::LayoutCParser::parseHeaderZone | ( | MWAWInputStreamPtr & | input,
|  | long | fSz,
|  | int | N,
|  | int | flag,
|  | libmwaw::DebugStream & | f
| ) |  |
| inlineprotected

parse the header zone

Referenced by parseZone().

## ◆ parsePageZone()

bool RagTime5LayoutInternal::LayoutCParser::parsePageZone | ( | MWAWInputStreamPtr & | input,
|  | long | fSz,
|  | int | N,
|  | int | flag,
|  | libmwaw::DebugStream & | f
| ) |  |
| inlineprotected

parse a page

Referenced by parseZone().

## ◆ parseZone()

bool RagTime5LayoutInternal::LayoutCParser::parseZone | ( | MWAWInputStreamPtr & | input,
|  | long | fSz,
|  | int | N,
|  | int | flag,
|  | libmwaw::DebugStream & | f
| ) |  |
| inlinefinalvirtual

parse a zone

Reimplemented from RagTime5ClusterManager::ClusterParser.

## ◆ setExpectedType()

void RagTime5LayoutInternal::LayoutCParser::setExpectedType | ( | int | id,
|  | int | type
| ) |  |
| inline

set a data id type

Referenced by parseField(), parseHeaderZone(), parsePageZone(), and parseZone().

## ◆ startZone()

void RagTime5LayoutInternal::LayoutCParser::startZone | ( |  | ) |
| inlinefinalvirtual

start a new zone

Reimplemented from RagTime5ClusterManager::ClusterParser.

## Member Data Documentation

## ◆ m_actualZone

ClusterLayout::Zone RagTime5LayoutInternal::LayoutCParser::m_actualZone
| protected

the actual zone

Referenced by parsePageZone(), and startZone().

## ◆ m_cluster

std::shared_ptr<ClusterLayout> RagTime5LayoutInternal::LayoutCParser::m_cluster
| protected

the current cluster

Referenced by endZone(), getCluster(), getLayoutCluster(), parseField(), parseHeaderZone(), parsePageZone(), and parseZone().

## ◆ m_expectedIdToType

std::map<int,int> RagTime5LayoutInternal::LayoutCParser::m_expectedIdToType
| protected

the expected id

Referenced by parseField(), parseZone(), and setExpectedType().

## ◆ m_fieldName

std::string RagTime5LayoutInternal::LayoutCParser::m_fieldName
| protected

the actual field name

Referenced by parseField(), parseHeaderZone(), parsePageZone(), and parseZone().

## ◆ m_idStack

std::stack<int> RagTime5LayoutInternal::LayoutCParser::m_idStack
| protected

the id stack

Referenced by getNewZoneToParse(), and setExpectedType().

## ◆ m_linkId

int RagTime5LayoutInternal::LayoutCParser::m_linkId
| protected

the link id : 0: listItem, 1: pipeline, 2: settinglinks, 3: namelink,

Referenced by endZone(), and parseZone().

## ◆ m_numPages

int RagTime5LayoutInternal::LayoutCParser::m_numPages
| protected

the number of pages

Referenced by parseHeaderZone(), parsePageZone(), and startZone().

## ◆ m_what

int RagTime5LayoutInternal::LayoutCParser::m_what
| protected

a index to know which field is parsed : 0: main, 1:list of pages, 2: unknown, 3:data0, 4:list, 5: unknown, 6: list:longs2

Referenced by parseField(), parseZone(), and startZone().

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

- RagTime5Layout.cxx