 |
ATLAS Offline Software
|
Go to the documentation of this file.
39 return StatusCode::SUCCESS;
48 unsigned int maskcopy;
52 while ( ( maskcopy & 0x00000001 ) == 0 ) {
53 maskcopy = maskcopy >> 1;
68 if (readHandleKey.
empty()) {
70 return StatusCode::SUCCESS;
84 ATH_MSG_DEBUG(
"====== (late-muon) RoI debug info for out-of-time RoI =====");
85 ATH_MSG_DEBUG(
"out-of-time bunch crossing shift : " << bc_shift);
87 ATH_MSG_DEBUG(
"RoI pT threshold : name: " << roi->thrName() <<
", number: "<< roi->getThrNumber() <<
", value: " << roi->thrValue());
90 ATH_MSG_DEBUG(
"RoI word : 0x" << MSG::hex << roi->roiWord() << MSG::dec);
92 ATH_MSG_DEBUG(
"Sector address : 0x" << MSG::hex << roi->getSectorAddress() << MSG::dec);
93 ATH_MSG_DEBUG(
"==========================================================");
96 RoIEta.push_back(roi->eta());
97 RoIPhi.push_back(roi->phi());
101 unsigned int sysID = 0;
102 if( temp_sysID & 0
x2 ) sysID = 1;
103 else if( temp_sysID & 0
x1 ) sysID = 2;
106 if ( sysID == 0 ) RpcBCShift.push_back(bc_shift);
107 else TgcBCShift.push_back(bc_shift);
110 roiColl->
push_back(std::make_unique<TrigRoiDescriptor>(
121 return StatusCode::SUCCESS;
132 std::vector<int> RpcBCShift, TgcBCShift;
133 std::vector<float> RoIEta, RoIPhi;
142 ATH_CHECK(wh_roiCollection.
record(std::make_unique<TrigRoiDescriptorCollection>()));
155 return StatusCode::SUCCESS;
SG::ReadHandleKey< xAOD::MuonRoIContainer > m_L1OutOfTimeRoIBCp1Key
SG::ReadHandleKey< xAOD::MuonRoIContainer > m_L1OutOfTimeRoIBCp2Key
StatusCode readAndAppendTrigRoiDescriptors(const EventContext &ctx, TrigRoiDescriptorCollection *roiColl, const SG::ReadHandleKey< xAOD::MuonRoIContainer > &readHandleKey, int bc_shift, unsigned int &roi_id, std::vector< int > &RpcBCShift, std::vector< int > &TgcBCShift, std::vector< float > &RoIEta, std::vector< float > &RoIPhi) const
Group
Properties of a chain group.
T wrapToPi(T phi)
Wrap angle in radians to [-pi, pi].
std::vector< QString > roi_id
#define ATH_MSG_VERBOSE(x)
bool empty() const
Test if the key is blank.
ToolHandle< GenericMonitoringTool > m_monTool
@ u
Enums for curvilinear frames.
ValuesCollection< T > Collection(std::string name, const T &collection)
Declare a monitored (double-convertible) collection.
An algorithm that can be simultaneously executed in multiple threads.
virtual StatusCode execute(const EventContext &ctx) const override
SG::WriteHandleKey< TrigRoiDescriptorCollection > m_roisWriteHandleKey
SG::ReadHandleKey< xAOD::MuonRoIContainer > m_L1OutOfTimeRoIBCm1Key
unsigned int getBitMaskValue(const unsigned int uintValue, const unsigned int mask) const
::StatusCode StatusCode
StatusCode definition for legacy code.
pointer_type ptr()
Dereference the pointer.
Class describing a LVL1 muon region of interest.
#define CHECK(...)
Evaluate an expression and check for errors.
virtual StatusCode initialize() override
TrigmuRoI(const std::string &name, ISvcLocator *pSvcLocator)
std Gaudi algorthm constructor
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
virtual bool isValid() override final
Can the handle be successfully dereferenced?
Helper for azimuthal angle calculations.
value_type push_back(value_type pElem)
Add an element to the end of the collection.
Gaudi::Property< float > m_roiHalfWidthPhi
StatusCode record(std::unique_ptr< T > data)
Record a const object to the store.
bool isPresent() const
Is the referenced object present in SG?
Gaudi::Property< float > m_roiHalfWidthEta
SG::ReadHandleKey< xAOD::MuonRoIContainer > m_L1OutOfTimeRoIBCm2Key