RagTime5ClusterManager Class Reference

basic class used to manage RagTime 5/6 zones More...

#include <RagTime5ClusterManager.hxx>

Classes

struct  Cluster
 the cluster data More...
 
struct  ClusterLayout
 the layout cluster ( 4001 zone) More...
 
struct  ClusterParser
 virtual class use to parse the cluster data More...
 
struct  ClusterRoot
 the cluster for root More...
 
struct  ClusterScript
 the cluster script ( 2/a/4002/400a zone) More...
 
struct  Link
 a link to a small zone (or set of zones) in RagTime 5/6 documents More...
 

Public Member Functions

 RagTime5ClusterManager (RagTime5Parser &parser)
 constructor More...
 
 ~RagTime5ClusterManager ()
 destructor More...
 
bool readCluster (RagTime5Zone &zone, ClusterParser &parser, bool warnForUnparsed=true)
 try to read a cluster zone More...
 
bool readCluster (RagTime5Zone &zone, shared_ptr< Cluster > &cluster, int type=-1)
 try to read a cluster zone More...
 
bool readClusterMainList (ClusterRoot &root, std::vector< int > &list, std::vector< int > const &clusterIdList)
 try to read the cluster root list (in general Data14) More...
 
bool readFieldClusters (Link const &link)
 try to read some field cluster More...
 
bool readUnknownClusterC (Link const &link)
 try to read some unknown cluster More...
 
int getClusterFileType (RagTime5Zone &zone)
 try to find a cluster zone type ( heuristic when the cluster type is unknown ) More...
 
int getClusterType (RagTime5Zone &zone, int fileType)
 returns the local zone type More...
 
bool getClusterBasicHeaderInfo (RagTime5Zone &zone, long &N, long &fSz, long &debHeaderPos)
 try to return basic information about the header cluster's zone More...
 
bool readFieldHeader (RagTime5Zone &zone, long endPos, std::string const &headerName, long &endDataPos, long expectedLVal=-99999)
 try to read a field header, if ok set the endDataPos positions More...
 
std::string getClusterName (int id)
 returns "data"+id+"A" ( followed by the cluster type and name if know) More...
 

Protected Attributes

shared_ptr
< RagTime5ClusterManagerInternal::State
m_state
 the state More...
 
RagTime5Parserm_mainParser
 the main parser More...
 
shared_ptr< RagTime5StructManagerm_structManager
 the structure manager More...
 

Private Member Functions

 RagTime5ClusterManager (RagTime5ClusterManager const &orig)
 
RagTime5ClusterManager operator= (RagTime5ClusterManager const &orig)
 

Friends

struct ClusterParser
 

Detailed Description

basic class used to manage RagTime 5/6 zones

Constructor & Destructor Documentation

RagTime5ClusterManager::RagTime5ClusterManager ( RagTime5Parser parser)

constructor

RagTime5ClusterManager::~RagTime5ClusterManager ( )

destructor

RagTime5ClusterManager::RagTime5ClusterManager ( RagTime5ClusterManager const &  orig)
private

Member Function Documentation

bool RagTime5ClusterManager::getClusterBasicHeaderInfo ( RagTime5Zone zone,
long &  N,
long &  fSz,
long &  debHeaderPos 
)

try to return basic information about the header cluster's zone

Referenced by getClusterFileType(), and getClusterType().

int RagTime5ClusterManager::getClusterFileType ( RagTime5Zone zone)

try to find a cluster zone type ( heuristic when the cluster type is unknown )

Referenced by getClusterType(), readCluster(), and readClusterMainList().

int RagTime5ClusterManager::getClusterType ( RagTime5Zone zone,
int  fileType 
)

returns the local zone type

Referenced by readCluster(), and readClusterMainList().

RagTime5ClusterManager RagTime5ClusterManager::operator= ( RagTime5ClusterManager const &  orig)
private
bool RagTime5ClusterManager::readCluster ( RagTime5Zone zone,
RagTime5ClusterManager::ClusterParser parser,
bool  warnForUnparsed = true 
)

try to read a cluster zone

Referenced by readCluster().

bool RagTime5ClusterManager::readCluster ( RagTime5Zone zone,
shared_ptr< Cluster > &  cluster,
int  type = -1 
)

try to read a cluster zone

bool RagTime5ClusterManager::readClusterMainList ( RagTime5ClusterManager::ClusterRoot root,
std::vector< int > &  list,
std::vector< int > const &  clusterIdList 
)

try to read the cluster root list (in general Data14)

bool RagTime5ClusterManager::readFieldClusters ( Link const &  link)

try to read some field cluster

bool RagTime5ClusterManager::readFieldHeader ( RagTime5Zone zone,
long  endPos,
std::string const &  headerName,
long &  endDataPos,
long  expectedLVal = -99999 
)

try to read a field header, if ok set the endDataPos positions

Referenced by getClusterBasicHeaderInfo(), and readCluster().

bool RagTime5ClusterManager::readUnknownClusterC ( Link const &  link)

try to read some unknown cluster

Friends And Related Function Documentation

friend struct ClusterParser
friend

Member Data Documentation

RagTime5Parser& RagTime5ClusterManager::m_mainParser
protected
shared_ptr<RagTime5ClusterManagerInternal::State> RagTime5ClusterManager::m_state
protected

the state

Referenced by getClusterName(), readCluster(), and readClusterMainList().

shared_ptr<RagTime5StructManager> RagTime5ClusterManager::m_structManager
protected

the structure manager

Referenced by readCluster(), and readClusterMainList().


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

Generated on Thu Jul 9 2015 20:26:39 for libmwaw by doxygen 1.8.8