|
ATLAS Offline Software
|
#include <MDT_RDOAnalysis.h>
|
| MDT_RDOAnalysis (const std::string &name, ISvcLocator *pSvcLocator) |
|
| ~MDT_RDOAnalysis () |
|
virtual StatusCode | initialize () override final |
|
virtual StatusCode | execute () override final |
|
virtual StatusCode | finalize () override final |
|
virtual StatusCode | sysInitialize () override |
| Override sysInitialize. More...
|
|
virtual const DataObjIDColl & | extraOutputDeps () const override |
| Return the list of extra output dependencies. More...
|
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
Definition at line 24 of file MDT_RDOAnalysis.h.
◆ StoreGateSvc_t
◆ MDT_RDOAnalysis()
MDT_RDOAnalysis::MDT_RDOAnalysis |
( |
const std::string & |
name, |
|
|
ISvcLocator * |
pSvcLocator |
|
) |
| |
◆ ~MDT_RDOAnalysis()
MDT_RDOAnalysis::~MDT_RDOAnalysis |
( |
| ) |
|
|
inline |
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
253 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
229 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
338 return PBASE::declareProperty(
name, property,
doc);
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ detStore()
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ execute()
StatusCode MDT_RDOAnalysis::execute |
( |
| ) |
|
|
finaloverridevirtual |
Definition at line 204 of file MDT_RDOAnalysis.cxx.
235 if(p_MDTcont.isValid()) {
239 for ( ; mdtCont_itr != mdtCont_end; ++mdtCont_itr ) {
240 const Identifier mdtID((*mdtCont_itr)->identify());
242 const uint16_t subID((*mdtCont_itr)->SubDetId());
243 const uint16_t mrodID((*mdtCont_itr)->MrodId());
244 const uint16_t csmID((*mdtCont_itr)->CsmId());
246 unsigned long long mdtID_int = mdtID.get_compact();
247 unsigned int mdtIDhash_int = mdtIDhash.value();
259 const MdtCsm* p_mdtAmt(*mdtCont_itr);
262 for ( ; mdt_itr != mdt_end; ++mdt_itr ) {
264 const uint16_t tdcID((*mdt_itr)->tdcId());
265 const uint16_t chanID((*mdt_itr)->channelId());
266 const uint16_t coarseTime((*mdt_itr)->coarse());
267 const uint16_t fineTime((*mdt_itr)->fine());
268 const uint16_t widthComb((*mdt_itr)->width());
269 const bool lead((*mdt_itr)->leading());
270 const bool masked((*mdt_itr)->isMasked());
271 const std::vector<uint32_t>* dataWords_vec = (*mdt_itr)->dataWords();
276 m_fine->push_back(fineTime);
280 for (std::vector<uint32_t>::size_type
i = 0;
i != dataWords_vec->size(); ++
i) {
296 if(simDataMapMDT.isValid()) {
297 MuonSimDataCollection::const_iterator sdo_itr(simDataMapMDT->begin());
298 const MuonSimDataCollection::const_iterator sdo_end(simDataMapMDT->end());
300 std::vector<int> barcode_vec;
301 std::vector<int> eventIndex_vec;
302 std::vector<double> radius_vec;
303 std::vector<float> localZ_vec;
304 for ( ; sdo_itr != sdo_end; ++sdo_itr ) {
307 const unsigned long long sdoID_int = sdoID.get_compact();
308 const int sdoWord(sdo.word());
310 const float xPos(
gPos.x());
311 const float yPos(
gPos.y());
312 const float zPos(
gPos.z());
327 const std::vector<MuonSimData::Deposit>& deposits = sdo.getdeposits();
328 std::vector<MuonSimData::Deposit>::const_iterator dep_itr(deposits.begin());
329 const std::vector<MuonSimData::Deposit>::const_iterator dep_end(deposits.end());
330 for ( ; dep_itr != dep_end; ++dep_itr ) {
336 const float localZ(
data.secondEntry());
348 barcode_vec.push_back(
bar);
349 eventIndex_vec.push_back(eventIx);
350 radius_vec.push_back(
radius);
351 localZ_vec.push_back(localZ);
358 eventIndex_vec.clear();
368 return StatusCode::SUCCESS;
◆ 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.
57 return Algorithm::extraOutputDeps();
◆ finalize()
StatusCode MDT_RDOAnalysis::finalize |
( |
| ) |
|
|
finaloverridevirtual |
◆ initialize()
StatusCode MDT_RDOAnalysis::initialize |
( |
| ) |
|
|
finaloverridevirtual |
Definition at line 83 of file MDT_RDOAnalysis.cxx.
133 m_h_subID =
new TH1F(
"h_subID",
"Sub-detector ID", 100, 0, 150);
153 m_h_coarse =
new TH1F(
"h_coarse",
"Drift time (coarse)", 100, 0, 100);
157 m_h_fine =
new TH1F(
"h_fine",
"Drift time (fine)", 100, 0, 50);
173 m_h_xPos =
new TH1F(
"h_xPos",
"Global x-position (SDO)", 100, -13000, 13000);
177 m_h_yPos =
new TH1F(
"h_yPos",
"Global y-position (SDO)", 100, -15000, 15000);
181 m_h_zPos =
new TH1F(
"h_zPos",
"Global z-position (SDO)", 100, -22000, 22000);
197 m_h_localZ =
new TH1F(
"h_localZ",
"Local z-position (SDO)", 100, -3200, 3200);
201 return StatusCode::SUCCESS;
◆ 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() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ 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.
◆ renounce()
◆ renounceArray()
◆ sysInitialize()
StatusCode AthAlgorithm::sysInitialize |
( |
| ) |
|
|
overridevirtualinherited |
◆ 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()
◆ m_barcode
std::vector<int>* MDT_RDOAnalysis::m_barcode |
|
private |
◆ m_barcode_vec
std::vector< std::vector<int> >* MDT_RDOAnalysis::m_barcode_vec |
|
private |
◆ m_chanID
std::vector<uint16_t>* MDT_RDOAnalysis::m_chanID |
|
private |
◆ m_coarse
std::vector<uint16_t>* MDT_RDOAnalysis::m_coarse |
|
private |
◆ m_csmID
std::vector<uint16_t>* MDT_RDOAnalysis::m_csmID |
|
private |
◆ m_dataWords
std::vector<uint32_t>* MDT_RDOAnalysis::m_dataWords |
|
private |
◆ m_detStore
◆ m_eventIndex
std::vector<int>* MDT_RDOAnalysis::m_eventIndex |
|
private |
◆ m_eventIndex_vec
std::vector< std::vector<int> >* MDT_RDOAnalysis::m_eventIndex_vec |
|
private |
◆ m_evtStore
◆ m_extendedExtraObjects
DataObjIDColl AthAlgorithm::m_extendedExtraObjects |
|
privateinherited |
◆ m_fine
std::vector<uint16_t>* MDT_RDOAnalysis::m_fine |
|
private |
◆ m_h_barcode
TH1* MDT_RDOAnalysis::m_h_barcode |
|
private |
◆ m_h_chanID
TH1* MDT_RDOAnalysis::m_h_chanID |
|
private |
◆ m_h_coarse
TH1* MDT_RDOAnalysis::m_h_coarse |
|
private |
◆ m_h_csmID
TH1* MDT_RDOAnalysis::m_h_csmID |
|
private |
◆ m_h_eventIndex
TH1* MDT_RDOAnalysis::m_h_eventIndex |
|
private |
◆ m_h_fine
TH1* MDT_RDOAnalysis::m_h_fine |
|
private |
◆ m_h_localZ
TH1* MDT_RDOAnalysis::m_h_localZ |
|
private |
◆ m_h_mdtID
TH1* MDT_RDOAnalysis::m_h_mdtID |
|
private |
◆ m_h_mrodID
TH1* MDT_RDOAnalysis::m_h_mrodID |
|
private |
◆ m_h_radius
TH1* MDT_RDOAnalysis::m_h_radius |
|
private |
◆ m_h_sdoID
TH1* MDT_RDOAnalysis::m_h_sdoID |
|
private |
◆ m_h_sdoWord
TH1* MDT_RDOAnalysis::m_h_sdoWord |
|
private |
◆ m_h_subID
TH1* MDT_RDOAnalysis::m_h_subID |
|
private |
◆ m_h_tdcID
TH1* MDT_RDOAnalysis::m_h_tdcID |
|
private |
◆ m_h_width
TH1* MDT_RDOAnalysis::m_h_width |
|
private |
◆ m_h_xPos
TH1* MDT_RDOAnalysis::m_h_xPos |
|
private |
◆ m_h_yPos
TH1* MDT_RDOAnalysis::m_h_yPos |
|
private |
◆ m_h_zPos
TH1* MDT_RDOAnalysis::m_h_zPos |
|
private |
◆ m_inputKey
◆ m_inputTruthKey
◆ m_isMasked
std::vector<bool>* MDT_RDOAnalysis::m_isMasked |
|
private |
◆ m_leading
std::vector<bool>* MDT_RDOAnalysis::m_leading |
|
private |
◆ m_localZ
std::vector<float>* MDT_RDOAnalysis::m_localZ |
|
private |
◆ m_localZ_vec
std::vector< std::vector<float> >* MDT_RDOAnalysis::m_localZ_vec |
|
private |
◆ m_mdtID
std::vector<unsigned long long>* MDT_RDOAnalysis::m_mdtID |
|
private |
◆ m_mdtIDhash
std::vector<unsigned int>* MDT_RDOAnalysis::m_mdtIDhash |
|
private |
◆ m_mrodID
std::vector<uint16_t>* MDT_RDOAnalysis::m_mrodID |
|
private |
◆ m_ntupleDirName
std::string MDT_RDOAnalysis::m_ntupleDirName |
|
private |
◆ m_ntupleFileName
std::string MDT_RDOAnalysis::m_ntupleFileName |
|
private |
◆ m_ntupleTreeName
std::string MDT_RDOAnalysis::m_ntupleTreeName |
|
private |
◆ m_path
std::string MDT_RDOAnalysis::m_path |
|
private |
◆ m_radius
std::vector<double>* MDT_RDOAnalysis::m_radius |
|
private |
◆ m_radius_vec
std::vector< std::vector<double> >* MDT_RDOAnalysis::m_radius_vec |
|
private |
◆ m_sdoID
std::vector<unsigned long long>* MDT_RDOAnalysis::m_sdoID |
|
private |
◆ m_sdoWord
std::vector<int>* MDT_RDOAnalysis::m_sdoWord |
|
private |
◆ m_subID
std::vector<uint16_t>* MDT_RDOAnalysis::m_subID |
|
private |
◆ m_tdcID
std::vector<uint16_t>* MDT_RDOAnalysis::m_tdcID |
|
private |
◆ m_thistSvc
◆ m_tree
TTree* MDT_RDOAnalysis::m_tree |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
◆ m_width
std::vector<uint16_t>* MDT_RDOAnalysis::m_width |
|
private |
◆ m_xPos
std::vector<float>* MDT_RDOAnalysis::m_xPos |
|
private |
◆ m_yPos
std::vector<float>* MDT_RDOAnalysis::m_yPos |
|
private |
◆ m_zPos
std::vector<float>* MDT_RDOAnalysis::m_zPos |
|
private |
The documentation for this class was generated from the following files:
SG::ReadHandleKey< MdtCsmContainer > m_inputKey
char data[hepevt_bytes_allocation_ATLAS]
Const iterator class for DataVector/DataList.
SG::ReadHandleKey< MuonSimDataCollection > m_inputTruthKey
std::vector< int > * m_barcode
std::vector< unsigned long long > * m_mdtID
std::string m_ntupleTreeName
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
std::vector< double > * m_radius
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
std::vector< int > * m_eventIndex
std::vector< std::vector< int > > * m_barcode_vec
std::vector< uint16_t > * m_fine
MDT RDOs : Chamber Service Module, container of AmtHits of a single Mdt chamber.
virtual void setOwner(IDataHandleHolder *o)=0
std::vector< int > * m_sdoWord
std::vector< unsigned long long > * m_sdoID
a link optimized in size for a GenParticle in a McEventCollection
std::vector< std::vector< float > > * m_localZ_vec
virtual StatusCode sysInitialize() override
Override sysInitialize.
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
std::string m_ntupleDirName
::StatusCode StatusCode
StatusCode definition for legacy code.
std::vector< float > * m_zPos
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
std::vector< uint16_t > * m_mrodID
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
virtual void renounce()=0
std::vector< uint16_t > * m_coarse
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
std::vector< uint16_t > * m_width
std::vector< std::vector< int > > * m_eventIndex_vec
index_type eventIndex() const
Return the event number of the referenced GenEvent.
std::vector< unsigned int > * m_mdtIDhash
std::vector< uint16_t > * m_csmID
std::vector< std::vector< double > > * m_radius_vec
std::vector< bool > * m_leading
Eigen::Matrix< double, 3, 1 > Vector3D
std::vector< bool > * m_isMasked
std::vector< uint16_t > * m_chanID
DataObjIDColl m_extendedExtraObjects
#define ATH_MSG_WARNING(x)
std::vector< uint32_t > * m_dataWords
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
std::string m_ntupleFileName
std::vector< uint16_t > * m_tdcID
AthAlgorithm()
Default constructor:
ServiceHandle< ITHistSvc > m_thistSvc
std::vector< float > * m_localZ
def TH1F(name, title, nxbins, bins_par2, bins_par3=None, path='', **kwargs)
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
std::vector< float > * m_xPos
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
std::vector< uint16_t > * m_subID
std::vector< float > * m_yPos