|
ATLAS Offline Software
|
Go to the documentation of this file.
28 Tile::MAX_ROS, nL1Triggers);
31 Tile::MAX_ROS, nL1Triggers);
48 int nTowers[
MAX_PART] = { 0, 0, 0, 0, 0 };
56 const CaloTower* mostEnTower = *std::max_element(caloTowerContainer->
begin(), caloTowerContainer->
end(),
58 return tower1->energy() < tower2->energy();
62 double mostEnTowerPhi = 0.0;
64 if (mostEnTower->
energy() > 0.0) {
65 mostEnTowerPhi = mostEnTower->
phi();
69 for (
int l1TriggerIdx : l1TriggersIndices) {
76 for (
int l1TriggerIdx : l1TriggersIndices) {
85 double correlTowerEnergy = 0.0;
87 for (
const CaloTower* tower : *caloTowerContainer) {
89 double energy = tower->energy();
91 if (tower->getNumberOfCells() > 0) {
98 for (
int l1TriggerIdx : l1TriggersIndices) {
105 if (tower->phi() * mostEnTowerPhi < 0.0
106 && tower->energy() > correlTowerEnergy) {
108 correlTowerEnergy = tower->
energy();
114 <<
", Et()= " << tower->et()
115 <<
", Eta= " << tower->eta()
116 <<
", Phi= " << tower->phi() );
123 if (mostEnTower->
energy() > 0.0 && correlTower) {
124 float etaDelta = std::abs(correlTower->
eta()) - std::abs(mostEnTower->
eta());
125 float phiDelta = std::abs(correlTower->
phi() - mostEnTower->
phi());
129 for (
int l1TriggerIdx : l1TriggersIndices) {
137 return StatusCode::SUCCESS;
cell_iterator cell_begin() const
Retrieve a STL-type begin() iterator for the cell store.
def retrieve(aClass, aKey=None)
std::vector< int > getL1TriggerIndices(uint32_t lvl1TriggerType) const
Return indices of histograms to be filled according fired L1 trigger type.
virtual StatusCode initialize() override
initialize
#define ATH_MSG_VERBOSE(x)
def timer(name, disabled=False)
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual StatusCode initialize() override
initialize
std::vector< std::vector< int > > m_towerEtGroups
virtual double phi() const override final
get phi data member
Generic monitoring tool for athena components.
::StatusCode StatusCode
StatusCode definition for legacy code.
void fill(const ToolHandle< GenericMonitoringTool > &groupHandle, std::vector< std::reference_wrapper< Monitored::IMonitoredVariable >> &&variables) const
Fills a vector of variables to a group by reference.
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
SG::ReadHandle< xAOD::EventInfo > GetEventInfo(const EventContext &) const
Return a ReadHandle for an EventInfo object (get run/event numbers, etc.)
virtual StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
virtual bool isValid() override final
Can the handle be successfully dereferenced?
Data class for calorimeter cell towers.
virtual double energy() const override final
get energy data member
ToolHandleArray< GenericMonitoringTool > m_tools
Array of Generic Monitoring Tools.
std::vector< std::vector< int > > m_towerEnergyGroups
Class describing the basic event information.
SG::ReadHandleKey< CaloTowerContainer > m_caloTowerContainerKey
int getNumberOfL1Triggers(void) const
Return number of L1 triggers for which histograms should be filled.
uint16_t level1TriggerType() const
The Level-1 trigger type.
std::vector< int > m_towerEtaPhiGroups
virtual double et() const
transverse energy defined to be e*sin(theta)
Declare a monitored scalar variable.
Handle class for reading from StoreGate.
std::vector< int > m_towerEtaPhiDiffGroups
Partition getPartition(const CaloCell *cell, const TileID *tileID) const
Return Partition for Tile cell or MAX_PART otherwise.
virtual double eta() const override final
get eta data member