#include <Manager.h>
Public Member Functions | |
~Manager () | |
void | setBuilder (Builder *b) |
int | build () |
void | startVisitor (Visitor *) |
This method starts the visit of a hierarchy with a specified visitor. | |
void | cleanRdb () |
Rdb * | getRdb () |
void | setInputSource (std::string pname) |
std::string | getInputSourceString () |
Static Public Member Functions | |
static Manager * | getManager () |
Protected Member Functions | |
Manager () | |
Private Attributes | |
Rdb * | m_rdb |
Builder * | m_builder |
std::string | m_filename |
Static Private Attributes | |
static Manager * | s_pMyself = 0 |
Definition at line 18 of file Manager.h.
rdbModel::Manager::~Manager | ( | ) |
rdbModel::Manager::Manager | ( | ) | [inline, protected] |
int rdbModel::Manager::build | ( | ) |
This method start the parse of the xml file by the builder. It returns an error code (0 if all ok)
Definition at line 43 of file Manager.cxx.
References rdbModel::Builder::buildRdb(), m_builder, m_filename, and rdbModel::Builder::parseInput().
Referenced by calibUtil::Metadata::compareSchema(), and main().
00043 { 00044 int errCode = m_builder->parseInput(m_filename); 00045 00046 // Unlike geometry description/detModel, there is only one way to 00047 // build here: build everything. 00048 if (!errCode) { 00049 return m_builder->buildRdb(); 00050 } 00051 else return errCode; 00052 }
void rdbModel::Manager::cleanRdb | ( | ) |
std::string rdbModel::Manager::getInputSourceString | ( | ) | [inline] |
Manager * rdbModel::Manager::getManager | ( | ) | [static] |
This method is used to access the pointer to the singleton
Definition at line 24 of file Manager.cxx.
References s_pMyself.
Referenced by rdbModel::XercesBuilder::buildRdb(), calibUtil::Metadata::compareSchema(), and main().
Rdb* rdbModel::Manager::getRdb | ( | ) | [inline] |
This method gives back the pointer to the Rdb object. It coule be used by expert clients to access information without the need of a visitor
Definition at line 48 of file Manager.h.
References m_rdb.
Referenced by rdbModel::XercesBuilder::buildRdb(), calibUtil::Metadata::compareSchema(), and main().
00048 {return m_rdb;};
void rdbModel::Manager::setBuilder | ( | Builder * | b | ) |
This method is used to specify a builder to be used by the manager.
Definition at line 37 of file Manager.cxx.
References m_builder.
Referenced by calibUtil::Metadata::compareSchema(), and main().
00038 { 00039 m_builder = b; 00040 00041 }
void rdbModel::Manager::setInputSource | ( | std::string | pname | ) | [inline] |
Definition at line 51 of file Manager.h.
References m_filename.
Referenced by calibUtil::Metadata::compareSchema(), and main().
00051 {m_filename = pname;};
void rdbModel::Manager::startVisitor | ( | Visitor * | ) |
This method starts the visit of a hierarchy with a specified visitor.
Definition at line 53 of file Manager.cxx.
References rdbModel::Rdb::accept(), m_rdb, and v.
00054 { 00055 // if (TablesVisitor* tv = dynamic_cast<TablesVisitor*>(v)) 00056 // { // the only kind we support, at least for now 00057 00058 // if (v->getRecursive()) 00059 m_rdb->accept(v); 00060 // else 00061 // m_rdb->acceptNotRec(sv); 00062 // } 00063 }
Builder* rdbModel::Manager::m_builder [private] |
This is a private pointer to the builder used by the manager to build the hierarchy from the XML file
Definition at line 74 of file Manager.h.
Referenced by build(), setBuilder(), and ~Manager().
std::string rdbModel::Manager::m_filename [private] |
Definition at line 76 of file Manager.h.
Referenced by build(), getInputSourceString(), and setInputSource().
Rdb* rdbModel::Manager::m_rdb [private] |
This is a private pointer to the Rdb object that provide the entry point to all information about all tables.
Definition at line 61 of file Manager.h.
Referenced by cleanRdb(), getRdb(), Manager(), startVisitor(), and ~Manager().
Manager * rdbModel::Manager::s_pMyself = 0 [static, private] |
This is the pointer to the only manager that can be instanciated
Definition at line 71 of file Manager.h.
Referenced by getManager(), and ~Manager().