5#ifndef POOLSVC_DATABASE_H
6#define POOLSVC_DATABASE_H
10#include "GaudiKernel/IFileMgr.h"
43 const std::string& name,
71 const std::string&
fid();
74 const std::string&
pfn();
93 const std::type_info& typeInfo,
94 const std::string& option );
98 const std::type_info& typeInfo,
99 const std::string& option );
AthMessaging(IMessageSvc *msgSvc, const std::string &name)
Constructor.
DatabaseHandler is a class taking care of the micro-connections and the micro transactions for a give...
Container * containerHandle(const std::string &name)
Returns a pointer to a container object. The user acquires ownership of that object.
Specification::NameType m_nameType
The database name spacification.
long m_technology
The technology identifier of the database.
Io::IoFlag m_openMode
Current open mode.
bool checkInRegistry()
Checks in the registry if the database handler already exists.
void disconnect()
Disconnects from the database.
Io::IoFlag openMode() const
Returns the opening mode. It can be used to check whether the database is connected.
void connectForRead()
Connects explicitly to the database for read operations.
bool setAttributeOfType(const std::string &attributeName, const void *data, const std::type_info &typeInfo, const std::string &option)
Database(SessionTool &session, const std::string &name, const Specification::NameType nameType)
Constructor.
const std::string & fid()
Returns the file identifier of this database.
const std::string & pfn()
Returns the physical file name of this database.
std::vector< std::string > containers()
Returns the names of the containers in this database.
std::string m_name
The database name.
bool setTechnology(long technology)
Sets the technology identifier for this database.
SessionTool & m_session
Reference to the session.
void connectForWrite()
Connects explicitly to the database for write/update operations.
DatabaseRegistry & m_registry
Reference to the database registry.
void * readObject(const Token &token, void *object=0)
Reads an object given a token.
std::string m_the_fid
Other names used.
bool attributeOfType(const std::string &attributeName, void *data, const std::type_info &typeInfo, const std::string &option)
DatabaseHandler * m_databaseHandler
The underlying database handler.
pool::FileDescriptor * fileDescriptor()
bool m_alreadyConnected
Flag indicating whether a connection has been already made once.
Token * writeObject(const std::string &containerName, long minorTechnology, const void *object, const RootType &type)
Writes an object and returns a token.
Io::IoFlag m_transactionType
Transaction type (read/update).
Gaudi::IFileCatalog & m_catalog
Reference to the file catalog.
bool m_technologySet
Checks if the technology identifier has been set.
This class provides a token that identifies in a unique way objects on the persistent storage.
=============================================================================
NameType
Enumeration type specifying the database name field, wherever the latter is used in methods accessing...