RagTime5ClusterManager Class Reference

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

#include <RagTime5ClusterManager.hxx>

Classes

struct  Cluster
 the cluster data More...
 
struct  ClusterParser
 virtual class use to parse the cluster data More...
 
struct  ClusterRoot
 the cluster for root More...
 
struct  Link
 a link to a small zone (or set of zones) in RagTime 5/6 documents More...
 
struct  NameLink
 a link to a name zone in RagTime 5/6 documents More...
 

Public Member Functions

 RagTime5ClusterManager (RagTime5Document &doc)
 constructor
 
 ~RagTime5ClusterManager ()
 destructor
 
bool sendClusterMainList ()
 try to send the root cluster zone
 
bool readCluster (RagTime5Zone &zone, ClusterParser &parser, bool warnForUnparsed=true)
 try to read a cluster zone
 
bool readCluster (RagTime5Zone &zone, std::shared_ptr< Cluster > &cluster, int type=-1)
 try to read a cluster zone
 
std::shared_ptr< ClusterreadRootCluster (RagTime5Zone &zone)
 try to read the root cluster zone
 
bool readClusterMainList (ClusterRoot &root, std::vector< int > &list, std::vector< int > const &clusterIdList)
 try to read the cluster root list (in general Data14)
 
bool readClusterGObjProperties (RagTime5Zone &zone)
 try to read a level 2 child of a cluster (picture resizing, ...)
 
bool readUnknownClusterC (Link const &link)
 try to read some unknown cluster
 
int getClusterFileType (RagTime5Zone &zone)
 try to find a cluster zone type ( heuristic when the cluster type is unknown )
 
int getClusterType (RagTime5Zone &zone, int fileType)
 returns the local zone type
 
bool getClusterBasicHeaderInfo (RagTime5Zone &zone, long &N, long &fSz, long &debHeaderPos)
 try to return basic information about the header cluster's zone
 
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
 
std::string getClusterDebugName (int id)
 returns "data"+id+"A" ( followed by the cluster type and name if know)
 
void setClusterName (int id, librevenge::RVNGString const &name)
 define a cluster name (used to associate graph name)
 
Cluster::Type getClusterType (int zId) const
 returns the cluster type corresponding to zone id or C_Unknown (if the zone is not a cluster or was not parsed)

 

Static Public Member Functions

static std::string printType (unsigned long fileType)
 debug: print a file type
 

Protected Attributes

std::shared_ptr< RagTime5ClusterManagerInternal::Statem_state
 the state
 
RagTime5Documentm_document
 the main parser
 
std::shared_ptr< RagTime5StructManagerm_structManager
 the structure manager
 

Private Member Functions

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

Friends

struct ClusterParser
 

Detailed Description

basic class used to manage RagTime 5/6 zones

Constructor & Destructor Documentation

◆ RagTime5ClusterManager() [1/2]

RagTime5ClusterManager::RagTime5ClusterManager ( RagTime5Document doc)
explicit

constructor

◆ ~RagTime5ClusterManager()

RagTime5ClusterManager::~RagTime5ClusterManager ( )

destructor

◆ RagTime5ClusterManager() [2/2]

RagTime5ClusterManager::RagTime5ClusterManager ( RagTime5ClusterManager const &  orig)
privatedelete

Member Function Documentation

◆ getClusterBasicHeaderInfo()

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

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

◆ getClusterDebugName()

◆ getClusterFileType()

int RagTime5ClusterManager::getClusterFileType ( RagTime5Zone zone)

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

Referenced by readClusterMainList().

◆ getClusterType() [1/2]

RagTime5ClusterManager::Cluster::Type RagTime5ClusterManager::getClusterType ( int  zId) const

returns the cluster type corresponding to zone id or C_Unknown (if the zone is not a cluster or was not parsed)

◆ getClusterType() [2/2]

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

returns the local zone type

Referenced by readClusterMainList().

◆ operator=()

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

◆ printType()

◆ readCluster() [1/2]

bool RagTime5ClusterManager::readCluster ( RagTime5Zone zone,
RagTime5ClusterManager::ClusterParser parser,
bool  warnForUnparsed = true 
)

try to read a cluster zone

◆ readCluster() [2/2]

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

try to read a cluster zone

◆ readClusterGObjProperties()

bool RagTime5ClusterManager::readClusterGObjProperties ( RagTime5Zone zone)

try to read a level 2 child of a cluster (picture resizing, ...)

◆ readClusterMainList()

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)

◆ readFieldHeader()

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 readCluster().

◆ readRootCluster()

std::shared_ptr< RagTime5ClusterManager::Cluster > RagTime5ClusterManager::readRootCluster ( RagTime5Zone zone)

try to read the root cluster zone

◆ readUnknownClusterC()

bool RagTime5ClusterManager::readUnknownClusterC ( Link const &  link)

try to read some unknown cluster

◆ sendClusterMainList()

bool RagTime5ClusterManager::sendClusterMainList ( )

try to send the root cluster zone

◆ setClusterName()

void RagTime5ClusterManager::setClusterName ( int  id,
librevenge::RVNGString const &  name 
)

define a cluster name (used to associate graph name)

Friends And Related Function Documentation

◆ ClusterParser

friend struct ClusterParser
friend

Member Data Documentation

◆ m_document

RagTime5Document& RagTime5ClusterManager::m_document
protected

◆ m_state

std::shared_ptr<RagTime5ClusterManagerInternal::State> RagTime5ClusterManager::m_state
protected

◆ m_structManager

std::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 Jan 19 2023 00:00:00 for libmwaw by doxygen 1.9.6