Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

Anaphe::AIDA_XMLStore::AIDA_StoreXML Class Reference

#include <AIDA_StoreXML.h>

Collaboration diagram for Anaphe::AIDA_XMLStore::AIDA_StoreXML:

Collaboration graph
[legend]
List of all members.

Public Methods

 AIDA_StoreXML (const std::string &name, bool readOnly, bool createNew, const std::string &options)
 Constructor.

 ~AIDA_StoreXML ()
 Destructor.

const std::string & name () const
 Methods inherited from the IStore class.

bool writeObject (const AIDA::IManagedObject &dataObject, const std::string &path)
AIDA::IManagedObject * copyAndWrite (const AIDA::IManagedObject &dataObject, const std::string &path)
 Here we need the AIDA types.

AIDA::IManagedObject * retrieveObject (const std::string &path)
bool removeObject (const std::string &path)
bool moveObject (const std::string &from, const std::string &to)
bool commit ()
bool close ()
std::vector< std::string > listObjectPaths (const std::string directory, bool recursive=false) const
std::vector< std::string > listObjectTypes (const std::string directory, bool recursive=false) const
bool canMoveTuples () const
bool canCopyTuples () const
bool writeTupleHeader (AIDA::Dev::ITupleHeader &header)
 Methods inherited from the IBackingStore class.

bool readTupleHeader (AIDA::Dev::ITupleHeader &header)
bool bindVariable (AIDA::Dev::ITupleHeader &header, int variableIndex)
void * variableAddress (AIDA::Dev::ITupleHeader &header, int variableIndex)
const void * variableAddress (const AIDA::Dev::ITupleHeader &header, int variableIndex) const
bool clearBindings (const AIDA::Dev::ITupleHeader &header)
bool writeTupleRow (AIDA::Dev::ITupleHeader &header)
bool readTupleRow (AIDA::Dev::ITupleHeader &header)
bool resetTuple (AIDA::Dev::ITupleHeader &header)

Private Methods

bool readAllObjects ()
 read all objects from the XML file

AIDA::Dev::IDevManagedObject * createFromXML (const DataXML::DataObject *xmlObj, std::string &path)
 create a dev AIDA Managed Object from an XML element

bool writeToXML (AIDA::Dev::IDevManagedObject *object, const std::string &path)
 append Managed Object to XML stream


Private Attributes

std::string m_name
Anaphe::AIDA_XMLStore::StoreTranslatorm_outputTranslator
std::map< std::string, std::string > m_objectTypes
std::map< std::string, AIDA::Dev::IDevManagedObject * > m_objectRefs
std::set< std::string > m_objectsToDelete
std::set< std::string > m_objectsToAdd
std::set< std::string > m_objectsToUpdate
bool m_compress

Constructor & Destructor Documentation

Anaphe::AIDA_XMLStore::AIDA_StoreXML::AIDA_StoreXML const std::string &    name,
bool    readOnly,
bool    createNew,
const std::string &    options
 

Definition at line 59 of file AIDA_StoreXML.cpp.

References m_compress, and readAllObjects().

Anaphe::AIDA_XMLStore::AIDA_StoreXML::~AIDA_StoreXML  
 

Definition at line 79 of file AIDA_StoreXML.cpp.

References close().


Member Function Documentation

bool Anaphe::AIDA_XMLStore::AIDA_StoreXML::bindVariable AIDA::Dev::ITupleHeader &    header,
int    variableIndex
 

Definition at line 445 of file AIDA_StoreXML.cpp.

bool Anaphe::AIDA_XMLStore::AIDA_StoreXML::canCopyTuples   const
 

Definition at line 427 of file AIDA_StoreXML.cpp.

bool Anaphe::AIDA_XMLStore::AIDA_StoreXML::canMoveTuples   const
 

Definition at line 426 of file AIDA_StoreXML.cpp.

bool Anaphe::AIDA_XMLStore::AIDA_StoreXML::clearBindings const AIDA::Dev::ITupleHeader &    header
 

Definition at line 466 of file AIDA_StoreXML.cpp.

bool Anaphe::AIDA_XMLStore::AIDA_StoreXML::close  
 

Definition at line 419 of file AIDA_StoreXML.cpp.

Referenced by ~AIDA_StoreXML().

bool Anaphe::AIDA_XMLStore::AIDA_StoreXML::commit  
 

Definition at line 376 of file AIDA_StoreXML.cpp.

References m_name, m_objectRefs, m_outputTranslator, Anaphe::AIDA_XMLStore::StoreTranslator::write(), writeToXML(), and XML_STORE_REPORT_ERROR.

AIDA::IManagedObject * Anaphe::AIDA_XMLStore::AIDA_StoreXML::copyAndWrite const AIDA::IManagedObject &    dataObject,
const std::string &    path
 

Definition at line 134 of file AIDA_StoreXML.cpp.

References m_objectTypes, name(), writeObject(), and XML_STORE_REPORT_ERROR.

AIDA::Dev::IDevManagedObject * Anaphe::AIDA_XMLStore::AIDA_StoreXML::createFromXML const DataXML::DataObject *    xmlObj,
std::string &    path
[private]
 

Definition at line 552 of file AIDA_StoreXML.cpp.

References Anaphe::AIDA_XMLStore::FunctionTranslator::createFromXML(), Anaphe::AIDA_XMLStore::DataPointSetTranslator::createFromXML(), Anaphe::AIDA_XMLStore::Profile2DTranslator::createFromXML(), Anaphe::AIDA_XMLStore::Profile1DTranslator::createFromXML(), Anaphe::AIDA_XMLStore::Cloud3DTranslator::createFromXML(), Anaphe::AIDA_XMLStore::Cloud2DTranslator::createFromXML(), Anaphe::AIDA_XMLStore::Cloud1DTranslator::createFromXML(), Anaphe::AIDA_XMLStore::Histo3DTranslator::createFromXML(), Anaphe::AIDA_XMLStore::Histo2DTranslator::createFromXML(), Anaphe::AIDA_XMLStore::Histo1DTranslator::createFromXML(), m_objectRefs, Anaphe::AIDA_XMLStore::FunctionTranslator::name(), Anaphe::AIDA_XMLStore::DataPointSetTranslator::name(), Anaphe::AIDA_XMLStore::Profile2DTranslator::name(), Anaphe::AIDA_XMLStore::Profile1DTranslator::name(), Anaphe::AIDA_XMLStore::Cloud3DTranslator::name(), Anaphe::AIDA_XMLStore::Cloud2DTranslator::name(), Anaphe::AIDA_XMLStore::Cloud1DTranslator::name(), Anaphe::AIDA_XMLStore::Histo3DTranslator::name(), Anaphe::AIDA_XMLStore::Histo2DTranslator::name(), Anaphe::AIDA_XMLStore::Histo1DTranslator::name(), name(), Anaphe::AIDA_XMLStore::FunctionTranslator::path(), Anaphe::AIDA_XMLStore::DataPointSetTranslator::path(), Anaphe::AIDA_XMLStore::Profile2DTranslator::path(), Anaphe::AIDA_XMLStore::Profile1DTranslator::path(), Anaphe::AIDA_XMLStore::Cloud3DTranslator::path(), Anaphe::AIDA_XMLStore::Cloud2DTranslator::path(), Anaphe::AIDA_XMLStore::Cloud1DTranslator::path(), Anaphe::AIDA_XMLStore::Histo3DTranslator::path(), Anaphe::AIDA_XMLStore::Histo2DTranslator::path(), Anaphe::AIDA_XMLStore::Histo1DTranslator::path(), and XML_STORE_REPORT_ERROR.

Referenced by readAllObjects().

std::vector< std::string > Anaphe::AIDA_XMLStore::AIDA_StoreXML::listObjectPaths const std::string    directory,
bool    recursive = false
const
 

Definition at line 283 of file AIDA_StoreXML.cpp.

std::vector< std::string > Anaphe::AIDA_XMLStore::AIDA_StoreXML::listObjectTypes const std::string    directory,
bool    recursive = false
const
 

Definition at line 329 of file AIDA_StoreXML.cpp.

References m_objectTypes.

bool Anaphe::AIDA_XMLStore::AIDA_StoreXML::moveObject const std::string &    from,
const std::string &    to
 

Definition at line 261 of file AIDA_StoreXML.cpp.

References m_objectRefs, and m_objectTypes.

const std::string & Anaphe::AIDA_XMLStore::AIDA_StoreXML::name   const
 

Definition at line 86 of file AIDA_StoreXML.cpp.

References m_name.

Referenced by copyAndWrite(), createFromXML(), and writeToXML().

bool Anaphe::AIDA_XMLStore::AIDA_StoreXML::readAllObjects   [private]
 

Definition at line 496 of file AIDA_StoreXML.cpp.

References createFromXML(), m_name, m_objectRefs, m_objectTypes, Anaphe::AIDA_XMLStore::StoreTranslator::read(), and XML_STORE_REPORT_ERROR.

Referenced by AIDA_StoreXML().

bool Anaphe::AIDA_XMLStore::AIDA_StoreXML::readTupleHeader AIDA::Dev::ITupleHeader &    header
 

Definition at line 438 of file AIDA_StoreXML.cpp.

bool Anaphe::AIDA_XMLStore::AIDA_StoreXML::readTupleRow AIDA::Dev::ITupleHeader &    header
 

Definition at line 480 of file AIDA_StoreXML.cpp.

bool Anaphe::AIDA_XMLStore::AIDA_StoreXML::removeObject const std::string &    path
 

Definition at line 249 of file AIDA_StoreXML.cpp.

References m_objectRefs, and m_objectTypes.

bool Anaphe::AIDA_XMLStore::AIDA_StoreXML::resetTuple AIDA::Dev::ITupleHeader &    header
 

Definition at line 487 of file AIDA_StoreXML.cpp.

AIDA::IManagedObject * Anaphe::AIDA_XMLStore::AIDA_StoreXML::retrieveObject const std::string &    path
 

Definition at line 237 of file AIDA_StoreXML.cpp.

References m_objectRefs.

const void * Anaphe::AIDA_XMLStore::AIDA_StoreXML::variableAddress const AIDA::Dev::ITupleHeader &    header,
int    variableIndex
const
 

Definition at line 459 of file AIDA_StoreXML.cpp.

void * Anaphe::AIDA_XMLStore::AIDA_StoreXML::variableAddress AIDA::Dev::ITupleHeader &    header,
int    variableIndex
 

Definition at line 452 of file AIDA_StoreXML.cpp.

bool Anaphe::AIDA_XMLStore::AIDA_StoreXML::writeObject const AIDA::IManagedObject &    dataObject,
const std::string &    path
 

Definition at line 93 of file AIDA_StoreXML.cpp.

References m_objectRefs, and m_objectTypes.

Referenced by copyAndWrite().

bool Anaphe::AIDA_XMLStore::AIDA_StoreXML::writeToXML AIDA::Dev::IDevManagedObject *    object,
const std::string &    path
[private]
 

append Managed object to XML stream but now write yet to the file

Definition at line 679 of file AIDA_StoreXML.cpp.

References Anaphe::AIDA_XMLStore::StoreTranslator::append(), m_outputTranslator, name(), and XML_STORE_REPORT_ERROR.

Referenced by commit().

bool Anaphe::AIDA_XMLStore::AIDA_StoreXML::writeTupleHeader AIDA::Dev::ITupleHeader &    header
 

Definition at line 431 of file AIDA_StoreXML.cpp.

bool Anaphe::AIDA_XMLStore::AIDA_StoreXML::writeTupleRow AIDA::Dev::ITupleHeader &    header
 

Definition at line 473 of file AIDA_StoreXML.cpp.


Member Data Documentation

bool Anaphe::AIDA_XMLStore::AIDA_StoreXML::m_compress [private]
 

Definition at line 93 of file AIDA_StoreXML.h.

Referenced by AIDA_StoreXML().

std::string Anaphe::AIDA_XMLStore::AIDA_StoreXML::m_name [private]
 

Definition at line 84 of file AIDA_StoreXML.h.

Referenced by commit(), name(), and readAllObjects().

std::map< std::string, AIDA::Dev::IDevManagedObject* > Anaphe::AIDA_XMLStore::AIDA_StoreXML::m_objectRefs [private]
 

Definition at line 88 of file AIDA_StoreXML.h.

Referenced by commit(), createFromXML(), moveObject(), readAllObjects(), removeObject(), retrieveObject(), and writeObject().

std::set< std::string > Anaphe::AIDA_XMLStore::AIDA_StoreXML::m_objectsToAdd [private]
 

Definition at line 90 of file AIDA_StoreXML.h.

std::set< std::string > Anaphe::AIDA_XMLStore::AIDA_StoreXML::m_objectsToDelete [private]
 

Definition at line 89 of file AIDA_StoreXML.h.

std::set< std::string > Anaphe::AIDA_XMLStore::AIDA_StoreXML::m_objectsToUpdate [private]
 

Definition at line 91 of file AIDA_StoreXML.h.

std::map< std::string, std::string > Anaphe::AIDA_XMLStore::AIDA_StoreXML::m_objectTypes [private]
 

Definition at line 87 of file AIDA_StoreXML.h.

Referenced by copyAndWrite(), listObjectTypes(), moveObject(), readAllObjects(), removeObject(), and writeObject().

Anaphe::AIDA_XMLStore::StoreTranslator* Anaphe::AIDA_XMLStore::AIDA_StoreXML::m_outputTranslator [private]
 

Definition at line 85 of file AIDA_StoreXML.h.

Referenced by commit(), and writeToXML().


The documentation for this class was generated from the following files:
Generated on Tue Nov 19 12:33:02 2002 for AIDA_XMLStore by doxygen1.2.16