DD4hep  1.30.0
Detector Description Toolkit for High Energy Physics
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
dd4hep::cond::ConditionDependency Class Reference

Condition dependency definition. More...

#include <ConditionDerived.h>

Public Member Functions

 ConditionDependency (DetElement de, const std::string &item, std::shared_ptr< ConditionUpdateCall > call)
 Initializing constructor used by builder. More...
 
 ConditionDependency (DetElement de, Condition::itemkey_type item_key, std::shared_ptr< ConditionUpdateCall > call)
 Initializing constructor used by builder. More...
 
 ConditionDependency ()
 Default constructor. More...
 
Condition::key_type key () const
 Access the dependency key. More...
 
ConditionDependencyaddRef ()
 Add use count to the object. More...
 
void release ()
 Release object. May not be used any longer. More...
 

Public Attributes

DetElement detector
 Reference to the target's detector element. More...
 
ConditionKey target {0}
 Key to the condition to be updated. More...
 
std::vector< ConditionKeydependencies
 Dependency keys this condition depends on. More...
 
std::shared_ptr< ConditionUpdateCallcallback
 Reference to the update callback. No auto pointer. callback may be shared. More...
 

Protected Member Functions

 ConditionDependency (const ConditionDependency &c)=delete
 Copy constructor. More...
 
ConditionDependencyoperator= (const ConditionDependency &c)=delete
 Assignment operator. More...
 
virtual ~ConditionDependency ()
 Default destructor. More...
 

Protected Attributes

int m_refCount {0}
 Reference count. More...
 

Detailed Description

Condition dependency definition.

Used by clients to update a condition.

Note: We later in DDCond have to do many many set intersections of references to these objects. For this reason we do not want to use std::shared_ptr<ConditionDependency>. For this reason we implement here a simple ref'counting mechanism, which later allows us to use bare pointers.

Author
M.Frank
Version
1.0

Definition at line 316 of file ConditionDerived.h.

Constructor & Destructor Documentation

◆ ConditionDependency() [1/4]

dd4hep::cond::ConditionDependency::ConditionDependency ( const ConditionDependency c)
protecteddelete

Copy constructor.

◆ ~ConditionDependency()

ConditionDependency::~ConditionDependency ( )
protectedvirtual

Default destructor.

Definition at line 160 of file ConditionDerived.cpp.

◆ ConditionDependency() [2/4]

ConditionDependency::ConditionDependency ( DetElement  de,
const std::string &  item,
std::shared_ptr< ConditionUpdateCall call 
)

Initializing constructor used by builder.

Initializing constructor.

Definition at line 144 of file ConditionDerived.cpp.

◆ ConditionDependency() [3/4]

ConditionDependency::ConditionDependency ( DetElement  de,
Condition::itemkey_type  item_key,
std::shared_ptr< ConditionUpdateCall call 
)

Initializing constructor used by builder.

Initializing constructor.

Definition at line 135 of file ConditionDerived.cpp.

◆ ConditionDependency() [4/4]

ConditionDependency::ConditionDependency ( )

Default constructor.

Definition at line 154 of file ConditionDerived.cpp.

Member Function Documentation

◆ addRef()

ConditionDependency* dd4hep::cond::ConditionDependency::addRef ( )
inline

Add use count to the object.

Definition at line 354 of file ConditionDerived.h.

◆ key()

Condition::key_type dd4hep::cond::ConditionDependency::key ( ) const
inline

Access the dependency key.

Definition at line 348 of file ConditionDerived.h.

◆ operator=()

ConditionDependency& dd4hep::cond::ConditionDependency::operator= ( const ConditionDependency c)
protecteddelete

Assignment operator.

◆ release()

void dd4hep::cond::ConditionDependency::release ( )
inline

Release object. May not be used any longer.

Definition at line 356 of file ConditionDerived.h.

Member Data Documentation

◆ callback

std::shared_ptr<ConditionUpdateCall> dd4hep::cond::ConditionDependency::callback

Reference to the update callback. No auto pointer. callback may be shared.

Definition at line 330 of file ConditionDerived.h.

◆ dependencies

std::vector<ConditionKey> dd4hep::cond::ConditionDependency::dependencies

Dependency keys this condition depends on.

Definition at line 328 of file ConditionDerived.h.

◆ detector

DetElement dd4hep::cond::ConditionDependency::detector

Reference to the target's detector element.

Definition at line 324 of file ConditionDerived.h.

◆ m_refCount

int dd4hep::cond::ConditionDependency::m_refCount {0}
protected

Reference count.

Definition at line 320 of file ConditionDerived.h.

◆ target

ConditionKey dd4hep::cond::ConditionDependency::target {0}

Key to the condition to be updated.

Definition at line 326 of file ConditionDerived.h.


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