![]() |
ATLAS Offline Software
|
Description: ROOT specific implementation of Database container. More...
#include <src/RootKeyContainer.h>
Public Member Functions | |
| RootKeyContainer (const std::string &name) | |
| virtual | ~RootKeyContainer () |
| RootKeyContainer (const RootKeyContainer &)=delete | |
| RootKeyContainer & | operator= (const RootKeyContainer &)=delete |
| virtual DbStatus | close () override |
| Close the container and deallocate resources. | |
| virtual DbStatus | open (DbDatabase &dbH, const std::string &nam, const DbTypeInfo *info, DbAccessMode mod) override |
| Open the container for object access. | |
| virtual DbStatus | checkAccess (DbDatabase &dbH, const std::string &nam) const override final |
| Check if we can access the container for reading with the given type. | |
| virtual uint64_t | size () override |
| Number of entries within the container. | |
| virtual uint64_t | nextRecordId () override |
| Number of record in the container. | |
| virtual DbStatus | next (Token::OID_t &linkH) override |
| Fetch next object address to set token. | |
| virtual DbStatus | loadObject (void **ptr, ShapeH shape, Token::OID_t &oid) override |
| Find object by object identifier and load it into memory. | |
| virtual DbStatus | load (void **ptr, ShapeH shape, const Token::OID_t &linkH, Token::OID_t &oid, bool any_next) override |
| Interface Implementation: Find entry in container. | |
| virtual DbStatus | getOption (DbOption &opt) override |
| Access options. | |
| virtual DbStatus | setOption (const DbOption &opt) override |
| Set options. | |
| virtual DbStatus | transAct (Transaction::Action action) override |
| Execute end of object modification requests during a transaction. | |
| virtual void | release () override |
| Release instance (Abstract interfaces do not expose destructor!) | |
| virtual std::string | name () const override |
| Get container name. | |
| virtual void | useNextRecordId (uint64_t) override |
| Suggest next Record ID for tbe next object written - used only with synced indexes. | |
| virtual DbStatus | store (const void *object, DbContainer &cntH, ShapeH shape) override |
| Store object in location. | |
| virtual DbStatus | allocate (DbContainer &cntH, const void *object, ShapeH shape, Token::OID_t &oid) override |
| In place allocation of object location. | |
| bool | msgLvl (const MSG::Level lvl) const |
| Test the output level. | |
| MsgStream & | msg () const |
| The standard message stream. | |
| MsgStream & | msg (const MSG::Level lvl) const |
| The standard message stream. | |
| void | setLevel (MSG::Level lvl) |
| Change the current logging level. | |
Protected Types | |
| typedef std::vector< DbAction > | ActionList |
Protected Member Functions | |
| virtual DbStatus | writeObject (ActionList::value_type &) override |
| Commit single entry to container. | |
| virtual DbStatus | commitTransaction () |
| Execute object modification requests during a transaction. | |
Protected Attributes | |
| std::string | m_name |
| Container name. | |
Private Member Functions | |
| void | initMessaging () const |
| Initialize our message level and MessageSvc. | |
Private Attributes | |
| TDirectory * | m_dir |
| Reference to the root tree object. | |
| DbDatabase | m_dbH |
| Parent Database handle. | |
| RootDatabase * | m_rootDb |
| Root database file reference. | |
| RootKeyIOHandler * | m_ioHandler |
| CINT IO handler to allow user overloads.... | |
| int | m_policy |
| Policy flag. | |
| int | m_ioBytes |
| Number of bytes written/read during last operation. Set to -1 if it failed. | |
| ActionList | m_writeStack |
| Transaction fifo storage for writing. | |
| size_t | m_size |
| Current size of the transaction stack. | |
| std::string | m_nm |
| Message source name. | |
| boost::thread_specific_ptr< MsgStream > | m_msg_tls |
| MsgStream instance (a std::cout like with print-out levels) | |
| std::atomic< IMessageSvc * > | m_imsg { nullptr } |
| MessageSvc pointer. | |
| std::atomic< MSG::Level > | m_lvl { MSG::NIL } |
| Current logging level. | |
| std::atomic_flag m_initialized | ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT |
| Messaging initialized (initMessaging) | |
Description: ROOT specific implementation of Database container.
Since objects in root are stored in "trees with branches", this object corresponds top a tuple (Tree/Branch), where each object type (determined by the location of the transient object within the data store) is accessed by the "Event" number inside its tree.
Definition at line 44 of file RootKeyContainer.h.
|
protectedinherited |
Definition at line 63 of file DbContainerImp.h.
|
explicit |
|
virtual |
|
delete |
|
overridevirtualinherited |
In place allocation of object location.
Implements pool::IDbContainer.
|
finaloverridevirtual |
Check if we can access the container for reading with the given type.
Implements pool::IDbContainer.
|
overridevirtual |
Close the container and deallocate resources.
Reimplemented from pool::DbContainerImp.
|
protectedvirtualinherited |
Execute object modification requests during a transaction.
Access options.
| opt | [IN] Reference to option object. |
Reimplemented from pool::DbContainerImp.
|
privateinherited |
Initialize our message level and MessageSvc.
This method should only be called once.
Definition at line 39 of file AthMessaging.cxx.
|
overridevirtual |
Interface Implementation: Find entry in container.
Reimplemented from pool::DbContainerImp.
|
overridevirtual |
Find object by object identifier and load it into memory.
| ptr | [IN/OUT] ROOT-style address of the pointer to object |
| shape | [IN] Object type |
| oid | [OUT] Object OID |
Implements pool::DbContainerImp.
|
inlineinherited |
The standard message stream.
Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.
Definition at line 163 of file AthMessaging.h.
|
inlineinherited |
The standard message stream.
Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.
Definition at line 178 of file AthMessaging.h.
|
inlineinherited |
Test the output level.
| lvl | The message level to test against |
| true | Messages at level "lvl" will be printed |
Definition at line 151 of file AthMessaging.h.
|
inlineoverridevirtualinherited |
|
overridevirtual |
Fetch next object address to set token.
Reimplemented from pool::DbContainerImp.
|
overridevirtual |
Number of record in the container.
Reimplemented from pool::DbContainerImp.
|
overridevirtual |
Open the container for object access.
Implements pool::IDbContainer.
|
delete |
|
inlineoverridevirtualinherited |
Release instance (Abstract interfaces do not expose destructor!)
Implements pool::IDbContainer.
Definition at line 85 of file DbContainerImp.h.
|
inherited |
Change the current logging level.
Use this rather than msg().setLevel() for proper operation with MT.
Definition at line 28 of file AthMessaging.cxx.
Set options.
| opt | [IN] Reference to option object. |
Reimplemented from pool::DbContainerImp.
|
overridevirtual |
Number of entries within the container.
Reimplemented from pool::DbContainerImp.
|
overridevirtualinherited |
|
overridevirtual |
Execute end of object modification requests during a transaction.
| refTr | [IN] Transaction reference |
Reimplemented from pool::DbContainerImp.
|
inlineoverridevirtualinherited |
Suggest next Record ID for tbe next object written - used only with synced indexes.
Implements pool::IDbContainer.
Reimplemented in pool::RootTreeIndexContainer, and RNTupleContainer.
Definition at line 94 of file DbContainerImp.h.
|
overrideprotectedvirtual |
Commit single entry to container.
Reimplemented from pool::DbContainerImp.
|
mutableprivateinherited |
Messaging initialized (initMessaging)
Definition at line 141 of file AthMessaging.h.
|
private |
Parent Database handle.
Definition at line 48 of file RootKeyContainer.h.
|
private |
Reference to the root tree object.
Definition at line 46 of file RootKeyContainer.h.
|
mutableprivateinherited |
|
private |
Number of bytes written/read during last operation. Set to -1 if it failed.
Definition at line 56 of file RootKeyContainer.h.
|
private |
CINT IO handler to allow user overloads....
Definition at line 52 of file RootKeyContainer.h.
|
mutableprivateinherited |
|
mutableprivateinherited |
MsgStream instance (a std::cout like with print-out levels)
Definition at line 132 of file AthMessaging.h.
|
protectedinherited |
Container name.
Definition at line 72 of file DbContainerImp.h.
|
privateinherited |
Message source name.
Definition at line 129 of file AthMessaging.h.
|
private |
Policy flag.
Definition at line 54 of file RootKeyContainer.h.
|
private |
Root database file reference.
Definition at line 50 of file RootKeyContainer.h.
|
privateinherited |
Current size of the transaction stack.
Definition at line 69 of file DbContainerImp.h.
|
privateinherited |
Transaction fifo storage for writing.
Definition at line 67 of file DbContainerImp.h.