ATLAS Offline Software
Public Member Functions | Static Public Member Functions | Protected Member Functions | Friends | List of all members
IRDBAccessSvc Class Referenceabstract

IRDBAccessSvc is an abstract interface to the athena service that provides the following functionalities: More...

#include <IRDBAccessSvc.h>

Inheritance diagram for IRDBAccessSvc:
Collaboration diagram for IRDBAccessSvc:

Public Member Functions

virtual IRDBRecordset_ptr getRecordsetPtr (const std::string &node, const std::string &tag, const std::string &tag2node="", const std::string &connName="ATLASDD")=0
 Provides access to the Recordset object containing HVS-tagged data. More...
 
virtual std::string getChildTag (const std::string &childNode, const std::string &parentTag, const std::string &parentNode, const std::string &connName="ATLASDD")=0
 Gets the tag name for the node by giving its parent node tag. More...
 
virtual std::unique_ptr< IRDBQuerygetQuery (const std::string &node, const std::string &tag, const std::string &tag2node="", const std::string &connName="ATLASDD")=0
 
virtual void getTagDetails (RDBTagDetails &tagDetails, const std::string &tag, const std::string &connName="ATLASDD")=0
 Returns AttributeList with tag details Attributes in the list: Locked (bool), Supported (bool) More...
 

Static Public Member Functions

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

Protected Member Functions

virtual bool connect (const std::string &connName="ATLASDD")=0
 Connect to the relational DB. More...
 
virtual bool disconnect (const std::string &connName="ATLASDD")=0
 If the counnection counter==1 closes the connection. More...
 
virtual bool shutdown (const std::string &connName="ATLASDD")=0
 Closes the connection regardless of the counter value. More...
 

Friends

class GeoModelSvc
 
class SourceCompAlg
 
class TrigRDBManager
 

Detailed Description

IRDBAccessSvc is an abstract interface to the athena service that provides the following functionalities:

  1. Connect/disconnect from the relational database
  2. Access the HVS-tagged data in the database through IRDBRecordset interfaces

Definition at line 44 of file IRDBAccessSvc.h.

Member Function Documentation

◆ connect()

virtual bool IRDBAccessSvc::connect ( const std::string &  connName = "ATLASDD")
protectedpure virtual

Connect to the relational DB.

If this method is called for already open connection the connection counter is incremented.

Returns
success/failure

Implemented in RDBAccessSvc, and SqliteReadSvc.

◆ disconnect()

virtual bool IRDBAccessSvc::disconnect ( const std::string &  connName = "ATLASDD")
protectedpure virtual

If the counnection counter==1 closes the connection.

Decrements the connection counter value otherwise.

Returns
success/failure

Implemented in RDBAccessSvc, and SqliteReadSvc.

◆ getChildTag()

virtual std::string IRDBAccessSvc::getChildTag ( const std::string &  childNode,
const std::string &  parentTag,
const std::string &  parentNode,
const std::string &  connName = "ATLASDD" 
)
pure virtual

Gets the tag name for the node by giving its parent node tag.

Parameters
childNode[IN] name of the child node
parentTag[IN] name of the parent tag
parentNode[IN] name of the parent node
fetchData[IN] if true fetch the corresponding data this parameter has no sence if child is the branch node

Implemented in RDBAccessSvc, and SqliteReadSvc.

◆ getQuery()

virtual std::unique_ptr<IRDBQuery> IRDBAccessSvc::getQuery ( const std::string &  node,
const std::string &  tag,
const std::string &  tag2node = "",
const std::string &  connName = "ATLASDD" 
)
pure virtual

Implemented in RDBAccessSvc, and SqliteReadSvc.

◆ getRecordsetPtr()

virtual IRDBRecordset_ptr IRDBAccessSvc::getRecordsetPtr ( const std::string &  node,
const std::string &  tag,
const std::string &  tag2node = "",
const std::string &  connName = "ATLASDD" 
)
pure virtual

Provides access to the Recordset object containing HVS-tagged data.

Parameters
node[IN] name of the leaf HVS node
tag[IN] tag of the HVS node specified by node parameter if tag2node is omitted, tag of the HVS branch node specified by tag2node otherwise
tag2node[IN] some parent of the HVS leaf node specified by node parameter
Returns
pointer to the recordset object

Implemented in RDBAccessSvc, and SqliteReadSvc.

◆ getTagDetails()

virtual void IRDBAccessSvc::getTagDetails ( RDBTagDetails tagDetails,
const std::string &  tag,
const std::string &  connName = "ATLASDD" 
)
pure virtual

Returns AttributeList with tag details Attributes in the list: Locked (bool), Supported (bool)

Parameters
tagDetails[OUT] attribute list with tag details
tag[IN] name of the tag

Implemented in RDBAccessSvc, and SqliteReadSvc.

◆ interfaceID()

static const InterfaceID& IRDBAccessSvc::interfaceID ( )
inlinestatic

Retrieve interface ID.

Definition at line 54 of file IRDBAccessSvc.h.

54 { return IID_IRDBAccessSvc; }

◆ shutdown()

virtual bool IRDBAccessSvc::shutdown ( const std::string &  connName = "ATLASDD")
protectedpure virtual

Closes the connection regardless of the counter value.

Returns
success/failure

Implemented in RDBAccessSvc, and SqliteReadSvc.

Friends And Related Function Documentation

◆ GeoModelSvc

friend class GeoModelSvc
friend

Definition at line 47 of file IRDBAccessSvc.h.

◆ SourceCompAlg

friend class SourceCompAlg
friend

Definition at line 48 of file IRDBAccessSvc.h.

◆ TrigRDBManager

friend class TrigRDBManager
friend

Definition at line 49 of file IRDBAccessSvc.h.


The documentation for this class was generated from the following file: