ATLAS Offline Software
Public Types | Public Member Functions | Static Public Member Functions | List of all members
IPoolSvc Class Referenceabstract

This class provides the interface to the LCG POOL persistency software. More...

#include <IPoolSvc.h>

Inheritance diagram for IPoolSvc:
Collaboration diagram for IPoolSvc:

Public Types

enum  PoolStream { kInputStream, kOutputStream }
 Stream to distinguish the POOL Stream instances. More...
 

Public Member Functions

virtual TokenregisterForWrite (const Placement *placement, const void *obj, const RootType &classDesc)=0
 
virtual void setObjPtr (void *&obj, const Token *token)=0
 
virtual unsigned int getOutputContext (const std::string &label)=0
 
virtual unsigned int getInputContext (const std::string &label, unsigned int maxFile=0)=0
 
virtual const std::map< std::string, unsigned int > & getInputContextMap () const =0
 
virtual const coral::Context * context () const =0
 
virtual void loadComponent (const std::string &compName)=0
 
virtual void setShareMode (bool shareCat)=0
 
virtual const pool::IFileCatalogcatalog () const =0
 
virtual void lookupBestPfn (const std::string &token, std::string &pfn, std::string &type) const =0
 
virtual void renamePfn (const std::string &pf, const std::string &newpf)=0
 
virtual pool::ICollectioncreateCollection (const std::string &collectionType, const std::string &connection, const std::string &collectionName, unsigned int contextId=IPoolSvc::kInputStream) const =0
 
virtual TokengetToken (const std::string &connection, const std::string &collection, const unsigned long ientry) const =0
 
virtual StatusCode connect (pool::ITransaction::Type type, unsigned int contextId=IPoolSvc::kInputStream)=0
 Connect to a logical database unit; PersistencySvc is chosen according to transaction type (accessmode). More...
 
virtual StatusCode commit (unsigned int contextId=IPoolSvc::kInputStream) const =0
 Commit data for a given stream and flush buffer. More...
 
virtual StatusCode commitAndHold (unsigned int contextId=IPoolSvc::kInputStream) const =0
 Commit data for a given stream and hold buffer. More...
 
virtual StatusCode disconnect (unsigned int contextId=IPoolSvc::kInputStream) const =0
 Disconnect PersistencySvc associated with a stream. More...
 
virtual StatusCode disconnectDb (const std::string &connection, unsigned int contextId=IPoolSvc::kInputStream) const =0
 Disconnect single Database. More...
 
virtual long long int getFileSize (const std::string &dbName, long tech, unsigned int contextId) const =0
 Get POOL FileSize attribute for database without logging a message. More...
 
virtual StatusCode getAttribute (const std::string &optName, std::string &data, long tech, unsigned int contextId=IPoolSvc::kInputStream) const =0
 Get POOL attributes - domain. More...
 
virtual StatusCode getAttribute (const std::string &optName, std::string &data, long tech, const std::string &dbName, const std::string &contName="", unsigned int contextId=IPoolSvc::kInputStream) const =0
 Get POOL attributes - db/file, container/collection. More...
 
virtual StatusCode setAttribute (const std::string &optName, const std::string &data, long tech, unsigned int contextId=IPoolSvc::kOutputStream) const =0
 Set POOL attributes - domain. More...
 
virtual StatusCode setAttribute (const std::string &optName, const std::string &data, long tech, const std::string &dbName, const std::string &contName="", unsigned int contextId=IPoolSvc::kOutputStream) const =0
 Set POOL attributes - db/file, container/collection. More...
 
virtual StatusCode setFrontierCache (const std::string &conn)=0
 Setup Frontier cache for given logical or physical connection name. More...
 

Static Public Member Functions

static const InterfaceID & interfaceID ()
 Retrieve interface ID. More...
 

Detailed Description

This class provides the interface to the LCG POOL persistency software.

Definition at line 36 of file IPoolSvc.h.

Member Enumeration Documentation

◆ PoolStream

Stream to distinguish the POOL Stream instances.

Enumerator
kInputStream 
kOutputStream 

Definition at line 40 of file IPoolSvc.h.

Member Function Documentation

◆ catalog()

virtual const pool::IFileCatalog* IPoolSvc::catalog ( ) const
pure virtual
Returns
the file catalog.

Implemented in PoolSvc.

◆ commit()

virtual StatusCode IPoolSvc::commit ( unsigned int  contextId = IPoolSvc::kInputStream) const
pure virtual

Commit data for a given stream and flush buffer.

Parameters
stream[IN] poolStream to be commited.

Implemented in PoolSvc.

◆ commitAndHold()

virtual StatusCode IPoolSvc::commitAndHold ( unsigned int  contextId = IPoolSvc::kInputStream) const
pure virtual

Commit data for a given stream and hold buffer.

Parameters
stream[IN] poolStream to be commited.

Implemented in PoolSvc.

◆ connect()

virtual StatusCode IPoolSvc::connect ( pool::ITransaction::Type  type,
unsigned int  contextId = IPoolSvc::kInputStream 
)
pure virtual

Connect to a logical database unit; PersistencySvc is chosen according to transaction type (accessmode).

Implemented in PoolSvc.

◆ context()

virtual const coral::Context* IPoolSvc::context ( ) const
pure virtual
Returns
the context.

Implemented in PoolSvc.

◆ createCollection()

virtual pool::ICollection* IPoolSvc::createCollection ( const std::string &  collectionType,
const std::string &  connection,
const std::string &  collectionName,
unsigned int  contextId = IPoolSvc::kInputStream 
) const
pure virtual
Returns
a pointer to a Pool Collection.
Parameters
collectionType[IN] string containing the collection type.
connection[IN] string containing the connection.
collectionName[IN] string containing the persistent name of the collection.
contextId[IN] id for PoolSvc persistency service to use for input.

Implemented in PoolSvc.

◆ disconnect()

virtual StatusCode IPoolSvc::disconnect ( unsigned int  contextId = IPoolSvc::kInputStream) const
pure virtual

Disconnect PersistencySvc associated with a stream.

Parameters
stream[IN] poolStream to be disconnected.

Implemented in PoolSvc.

◆ disconnectDb()

virtual StatusCode IPoolSvc::disconnectDb ( const std::string &  connection,
unsigned int  contextId = IPoolSvc::kInputStream 
) const
pure virtual

Disconnect single Database.

Parameters
connection[IN] connection string for Database to be disconnected.
contextId[IN] context id of database to be disconnected.

Implemented in PoolSvc.

◆ getAttribute() [1/2]

virtual StatusCode IPoolSvc::getAttribute ( const std::string &  optName,
std::string &  data,
long  tech,
const std::string &  dbName,
const std::string &  contName = "",
unsigned int  contextId = IPoolSvc::kInputStream 
) const
pure virtual

Get POOL attributes - db/file, container/collection.

Implemented in PoolSvc.

◆ getAttribute() [2/2]

virtual StatusCode IPoolSvc::getAttribute ( const std::string &  optName,
std::string &  data,
long  tech,
unsigned int  contextId = IPoolSvc::kInputStream 
) const
pure virtual

Get POOL attributes - domain.

Implemented in PoolSvc.

◆ getFileSize()

virtual long long int IPoolSvc::getFileSize ( const std::string &  dbName,
long  tech,
unsigned int  contextId 
) const
pure virtual

Get POOL FileSize attribute for database without logging a message.

Implemented in PoolSvc.

◆ getInputContext()

virtual unsigned int IPoolSvc::getInputContext ( const std::string &  label,
unsigned int  maxFile = 0 
)
pure virtual
Returns
an Id for an input context (POOL persistency service) and create it if needed.
Parameters
label[IN] string label to name new context and allow sharing (returns existing contextId)
maxFile[IN] maximum number of open input files.

Implemented in PoolSvc.

◆ getInputContextMap()

virtual const std::map<std::string, unsigned int>& IPoolSvc::getInputContextMap ( ) const
pure virtual
Returns
map of all labelled input contexts.

Implemented in PoolSvc.

◆ getOutputContext()

virtual unsigned int IPoolSvc::getOutputContext ( const std::string &  label)
pure virtual
Returns
an Id for an output context (POOL persistency service) and create it if needed.
Parameters
label[IN] string label to name new context and allow sharing (returns existing contextId)

Implemented in PoolSvc.

◆ getToken()

virtual Token* IPoolSvc::getToken ( const std::string &  connection,
const std::string &  collection,
const unsigned long  ientry 
) const
pure virtual
Returns
a token for a container entry.
Parameters
connection[IN] string containing the connection/file name.
collection[IN] string containing the persistent name of the collection.
ientry[IN] entry number for the token to be returned

Implemented in PoolSvc.

◆ interfaceID()

static const InterfaceID& IPoolSvc::interfaceID ( )
inlinestatic

Retrieve interface ID.

Definition at line 44 of file IPoolSvc.h.

44 { return(IID_IPoolSvc); }

◆ loadComponent()

virtual void IPoolSvc::loadComponent ( const std::string &  compName)
pure virtual
Returns
void
Parameters
compName[IN] string name of the component to be loaded.

Implemented in PoolSvc.

◆ lookupBestPfn()

virtual void IPoolSvc::lookupBestPfn ( const std::string &  token,
std::string &  pfn,
std::string &  type 
) const
pure virtual
Returns
void
Parameters
token[IN] filename/token string to be translated
pfn[OUT] string PFN of database
type[OUT] string filetype of database

Implemented in PoolSvc.

◆ registerForWrite()

virtual Token* IPoolSvc::registerForWrite ( const Placement placement,
const void *  obj,
const RootType classDesc 
)
pure virtual
Returns
a token to a Data Object written to Pool.
Parameters
placement[IN] pointer to the placement hint.
obj[IN] pointer to the Data Object to be written to Pool.
classDesc[IN] pointer to the Seal class description for the Data Object.

Implemented in PoolSvc.

◆ renamePfn()

virtual void IPoolSvc::renamePfn ( const std::string &  pf,
const std::string &  newpf 
)
pure virtual
Returns
void
Parameters
pf[IN] filename to be renamed
newpf[IN] new filename

Implemented in PoolSvc.

◆ setAttribute() [1/2]

virtual StatusCode IPoolSvc::setAttribute ( const std::string &  optName,
const std::string &  data,
long  tech,
const std::string &  dbName,
const std::string &  contName = "",
unsigned int  contextId = IPoolSvc::kOutputStream 
) const
pure virtual

Set POOL attributes - db/file, container/collection.

Implemented in PoolSvc.

◆ setAttribute() [2/2]

virtual StatusCode IPoolSvc::setAttribute ( const std::string &  optName,
const std::string &  data,
long  tech,
unsigned int  contextId = IPoolSvc::kOutputStream 
) const
pure virtual

Set POOL attributes - domain.

Implemented in PoolSvc.

◆ setFrontierCache()

virtual StatusCode IPoolSvc::setFrontierCache ( const std::string &  conn)
pure virtual

Setup Frontier cache for given logical or physical connection name.

Implemented in PoolSvc.

◆ setObjPtr()

virtual void IPoolSvc::setObjPtr ( void *&  obj,
const Token token 
)
pure virtual
Returns
void
Parameters
obj[OUT] pointer to the Data Object.
token[IN] token of the Data Object for which a Pool Ref is filled.

Implemented in PoolSvc.

◆ setShareMode()

virtual void IPoolSvc::setShareMode ( bool  shareCat)
pure virtual
Returns
void
Parameters
shareCat[IN] bool to share the file catalog.

Implemented in PoolSvc.


The documentation for this class was generated from the following file:
IPoolSvc::kOutputStream
@ kOutputStream
Definition: IPoolSvc.h:40
IPoolSvc::kInputStream
@ kInputStream
Definition: IPoolSvc.h:40