#include <BunchCrossingCondTest.h>
|
| virtual StatusCode | initialize () |
| | Initialization run before the event loop.
|
| virtual StatusCode | execute () |
| | Function called once per event.
|
| | AthAlgorithm (const std::string &name, ISvcLocator *pSvcLocator) |
| | Regular Athena algorithm constructor.
|
| virtual StatusCode | sysInitialize () override |
| | Override sysInitialize.
|
| virtual const DataObjIDColl & | extraOutputDeps () const override |
| | Return the list of extra output dependencies.
|
| ServiceHandle< StoreGateSvc > & | evtStore () |
| | The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
|
| const ServiceHandle< StoreGateSvc > & | detStore () const |
| | The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
|
| virtual StatusCode | sysStart () override |
| | Handle START transition.
|
| virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| | Return this algorithm's input handles.
|
| virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| | Return this algorithm's output handles.
|
| Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T, V, H > &t) |
| void | updateVHKA (Gaudi::Details::PropertyBase &) |
| MsgStream & | msg () const |
| bool | msgLvl (const MSG::Level lvl) const |
Definition at line 18 of file BunchCrossingCondTest.h.
◆ StoreGateSvc_t
◆ AthAlgorithm()
| AthAlgorithm::AthAlgorithm |
( |
const std::string & | name, |
|
|
ISvcLocator * | pSvcLocator ) |
Regular Athena algorithm constructor.
Definition at line 51 of file AthAlgorithm.cxx.
25 :
27{
28
29
30
31 m_updateDataHandles =
32 std::make_unique<AthenaBaseComps::AthAlgorithmDHUpdate>
34 std::move (m_updateDataHandles));
35}
DataObjIDColl m_extendedExtraObjects
AthCommonDataStore(const std::string &name, T... args)
◆ declareGaudiProperty()
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
158 {
161 hndl.documentation());
162
163 }
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
◆ declareProperty()
Definition at line 145 of file AthCommonDataStore.h.
145 {
148 }
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
◆ detStore()
◆ evtStore()
◆ execute()
| StatusCode BunchCrossingCondTest::execute |
( |
| ) |
|
|
virtual |
Function called once per event.
Definition at line 31 of file BunchCrossingCondTest.cxx.
31 {
32
33
34 const EventContext& ctx = Gaudi::Hive::currentContext();
35
36
38
39 SG::ReadCondHandle<BunchCrossingCondData> readHdl(
m_inputKey);
40 const BunchCrossingCondData* bccd=*readHdl;
41
42 out <<
"\nTimestamp:" << ctx.eventID().time_stamp() <<
" ns:" << ctx.eventID().time_stamp_ns_offset() << std::endl;
45
46 for (
unsigned bcid=0;
bcid<3564;++
bcid) {
49 }
50 else {
52 }
53 }
54 return StatusCode::SUCCESS;
55}
unsigned int numberOfUnpairedBunches() const
Get the number of unpaired bunches in the current configuration.
unsigned int numberOfBunchTrains() const
Get the number of the bunch trains in the current configuration.
static void printInfo(const BunchCrossingCondData *bccd, unsigned int bcid, std::ostream &out)
Function for printing detailed info about a given bunch crossing.
static void printCompactInfo(const BunchCrossingCondData *bccd, unsigned int bcid, std::ostream &out)
SG::ReadCondHandleKey< BunchCrossingCondData > m_inputKey
Gaudi::Property< bool > m_compact
setEventNumber setTimeStamp bcid
◆ extraDeps_update_handler()
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
◆ extraOutputDeps()
| const DataObjIDColl & AthAlgorithm::extraOutputDeps |
( |
| ) |
const |
|
overridevirtualinherited |
Return the list of extra output dependencies.
This list is extended to include symlinks implied by inheritance relations.
Definition at line 50 of file AthAlgorithm.cxx.
51{
52
53
56 }
57 return Algorithm::extraOutputDeps();
58}
◆ initialize()
| StatusCode BunchCrossingCondTest::initialize |
( |
| ) |
|
|
virtual |
Initialization run before the event loop.
Definition at line 9 of file BunchCrossingCondTest.cxx.
9 {
11
13
18 }
19 else {
21 return StatusCode::FAILURE;
22 }
23 }
24 else
26
27 return StatusCode::SUCCESS;
28}
#define ATH_CHECK
Evaluate an expression and check for errors.
Gaudi::Property< std::string > m_fileName
◆ inputHandles()
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ msg()
◆ msgLvl()
| bool AthCommonMsg< Algorithm >::msgLvl |
( |
const MSG::Level | lvl | ) |
const |
|
inlineinherited |
◆ outputHandles()
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ printCompactInfo()
| void BunchCrossingCondTest::printCompactInfo |
( |
const BunchCrossingCondData * | bccd, |
|
|
unsigned int | bcid, |
|
|
std::ostream & | out ) |
|
staticprivate |
Definition at line 74 of file BunchCrossingCondTest.cxx.
74 {
75
84 if (df>=0) {
86 }
88 if (dt>=0) {
90 }
92 }
93}
int distanceFromFront(const bcid_type bcid, const BunchDistanceType type=NanoSec) const
The distance of the specific bunch crossing from the front of the train.
bool isBeam1(const bcid_type bcid) const
Function deciding if there was a bunch from "beam 1" in this bunch crossing.
bool isBeam2(const bcid_type bcid) const
Function deciding if there was a bunch from "beam 2" in this bunch crossing.
bool isInTrain(const bcid_type bcid) const
Function deciding if a given bunch crossing is in a filled train.
int distanceFromTail(const bcid_type bcid, const BunchDistanceType type=NanoSec) const
The distance of the specific bunch crossing from the tail of the train.
bool isFilled(const bcid_type bcid) const
The simplest query: Is the bunch crossing filled or not?
bool isUnpaired(const bcid_type bcid) const
Function deciding if a given bunch crossing has an unpaired bunch.
df
Printing table to screen.
◆ printInfo()
| void BunchCrossingCondTest::printInfo |
( |
const BunchCrossingCondData * | bccd, |
|
|
unsigned int | bcid, |
|
|
std::ostream & | out ) |
|
staticprivate |
Function for printing detailed info about a given bunch crossing.
Definition at line 58 of file BunchCrossingCondTest.cxx.
58 {
59
63 <<
", isBeam1="<< bccd->
isBeam1(bcid) <<
", isBeam2=" <<bccd->
isBeam2(bcid);
66
69
71
72}
int gapBeforeTrain(bcid_type bcid=0, BunchDistanceType type=NanoSec) const
Gap before the train this BCID is in.
int gapAfterTrain(bcid_type bcid=0, BunchDistanceType type=NanoSec) const
Gap after the train this BCID is in.
◆ renounce()
Definition at line 380 of file AthCommonDataStore.h.
381 {
384 }
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce(T &h)
◆ renounceArray()
◆ sysInitialize()
| StatusCode AthAlgorithm::sysInitialize |
( |
| ) |
|
|
overridevirtualinherited |
Override sysInitialize.
Override sysInitialize from the base class.
Loop through all output handles, and if they're WriteCondHandles, automatically register them and this Algorithm with the CondSvc
Scan through all outputHandles, and if they're WriteCondHandles, register them with the CondSvc
Reimplemented from AthCommonDataStore< AthCommonMsg< Algorithm > >.
Reimplemented in AthAnalysisAlgorithm, AthFilterAlgorithm, AthHistogramAlgorithm, and PyAthena::Alg.
Definition at line 66 of file AthAlgorithm.cxx.
66 {
68
71 }
72 ServiceHandle<ICondSvc> cs(
"CondSvc",
name());
74 if (
h->isCondition() &&
h->mode() == Gaudi::DataHandle::Writer) {
75
76 if ( cs.retrieve().isFailure() ) {
78 return StatusCode::SUCCESS;
79 }
80 if (cs->regHandle(this,*h).isFailure()) {
81 sc = StatusCode::FAILURE;
82 ATH_MSG_ERROR(
"unable to register WriteCondHandle " <<
h->fullKey()
83 << " with CondSvc");
84 }
85 }
86 }
88}
#define ATH_MSG_WARNING(x)
virtual StatusCode sysInitialize() override
Override sysInitialize.
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
::StatusCode StatusCode
StatusCode definition for legacy code.
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ updateVHKA()
Definition at line 308 of file AthCommonDataStore.h.
308 {
309
310
313 for (
auto k :
keys) {
315 }
316 }
317 }
std::vector< SG::VarHandleKeyArray * > m_vhka
◆ m_compact
| Gaudi::Property<bool> BunchCrossingCondTest::m_compact {this,"compact",false} |
|
private |
◆ m_detStore
◆ m_evtStore
◆ m_extendedExtraObjects
| DataObjIDColl AthAlgorithm::m_extendedExtraObjects |
|
privateinherited |
◆ m_fileName
| Gaudi::Property<std::string> BunchCrossingCondTest::m_fileName {this,"FileName",""} |
|
private |
◆ m_fileOut
| std::ofstream BunchCrossingCondTest::m_fileOut |
|
private |
◆ m_inputKey
◆ m_varHandleArraysDeclared
◆ m_vhka
The documentation for this class was generated from the following files: