|  | ATLAS Offline Software
    | 
 
 
 
Go to the documentation of this file.
   11                                                        bool , 
bool doTrigMuonL1Validation, 
bool doTrigMuonL2Validation,
 
   12                                                        bool doTrigMuonEFValidation, std::vector<std::vector<std::string>> ChainSeed,
 
   13                                                        std::vector<std::string> L1MuonItems) :
 
   15     m_selectedAuthors(std::move(authors)),
 
   16     m_doTrigMuonL1Validation(doTrigMuonL1Validation),
 
   17     m_doTrigMuonL2Validation(doTrigMuonL2Validation),
 
   18     m_doTrigMuonEFValidation(doTrigMuonEFValidation),
 
   19     m_ChainSeed(std::move(ChainSeed)),
 
   20     m_L1MuonItems(std::move(L1MuonItems)) {
 
   31             std::make_unique<ResoTriggerMuonPlots>(
this, 
"trigger/L2/StandAlone/Resolution/BARREL/", 
""));
 
   34             std::make_unique<ResoTriggerMuonPlots>(
this, 
"trigger/L2/StandAlone/Resolution/ENDCAPS/", 
""));
 
   36             std::make_unique<ResoTriggerMuonPlots>(
this, 
"trigger/L2/Combined/Resolution/ENDCAPS/", 
""));
 
   38             std::make_unique<ResoTriggerMuonPlots>(
this, 
"trigger/L2/StandAlone/Resolution/WHOLE_DETECT/", 
""));
 
   48                 std::make_unique<ResoTriggerMuonPlots>(
this, 
"trigger/EF/" + sAuthor + 
"/Resolution/BARREL/", 
""));
 
   51                 std::make_unique<ResoTriggerMuonPlots>(
this, 
"trigger/EF/" + sAuthor + 
"/Resolution/ENDCAPS/", 
""));
 
   54                 std::make_unique<ResoTriggerMuonPlots>(
this, 
"trigger/EF/" + sAuthor + 
"/Resolution/WHOLE_DETECT/", 
""));
 
   60                 std::make_unique<TriggerEfficiencyPlots>(
this, 
"trigger/" + 
m_L1MuonItems[
i] + 
"_Efficiency/BARREL/"));
 
   63                 std::make_unique<TriggerEfficiencyPlots>(
this, 
"trigger/" + 
m_L1MuonItems[
i] + 
"_Efficiency/ENDCAPS/"));
 
   66                 std::make_unique<TriggerEfficiencyPlots>(
this, 
"trigger/" + 
m_L1MuonItems[
i] + 
"_Efficiency/WHOLE_DETECT/"));
 
   68     for (
unsigned int i = 0; 
i < 
m_chains.size(); 
i++) {
 
   71                 std::make_unique<TriggerEfficiencyPlots>(
this, 
"trigger/" + 
m_chains[
i] + 
"_Efficiency/BARREL/"));
 
   74                 std::make_unique<TriggerEfficiencyPlots>(
this, 
"trigger/" + 
m_chains[
i] + 
"_Efficiency/ENDCAPS/"));
 
   77                 std::make_unique<TriggerEfficiencyPlots>(
this, 
"trigger/" + 
m_chains[
i] + 
"_Efficiency/WHOLE_DETECT/"));
 
   79     for (
unsigned int i = 0; 
i < 
m_chains.size(); 
i++) {
 
   82                 std::make_unique<TriggerEfficiencyPlots>(
this, 
"trigger/" + 
m_chains[
i] + 
"_wrt_" + 
m_seeds[
i] + 
"_Efficiency/BARREL/"));
 
   85                 std::make_unique<TriggerEfficiencyPlots>(
this, 
"trigger/" + 
m_chains[
i] + 
"_wrt_" + 
m_seeds[
i] + 
"_Efficiency/ENDCAPS/"));
 
   88                 std::make_unique<TriggerEfficiencyPlots>(
this, 
"trigger/" + 
m_chains[
i] + 
"_wrt_" + 
m_seeds[
i] + 
"_Efficiency/WHOLE_DETECT/"));
 
  154     for (
unsigned int i = 0; 
i < 
m_chains.size(); 
i++) {
 
  166     for (
unsigned int i = 0; 
i < 
m_chains.size(); 
i++) {
 
  169             if (((
mu.eta()) > -1.05) && ((
mu.eta()) < 1.05))
 
  171             if (((
mu.eta()) < -1.05) || ((
mu.eta()) > 1.05))
 
  180     for (
unsigned int i = 0; 
i < 
m_chains.size(); 
i++) {
 
  207             if (((
mu.eta()) > -1.05) && ((
mu.eta()) < 1.05))
 
  209             if (((
mu.eta()) < -1.05) || ((
mu.eta()) > 1.05))
 
  219     ROIinMuons->setStore(ROIinMuonsAux);
 
  227             if (((TrigL1mu.
eta()) > -1.05) && ((TrigL1mu.
eta()) < 1.05))
 
  229             if (((TrigL1mu.
eta()) < -1.05) || ((TrigL1mu.
eta()) > 1.05))
 
  234     delete ROIinMuonsAux;
 
  240     for (
unsigned int i = 0; 
i < 
m_chains.size(); 
i++) {
 
  243             if (((
mu.eta()) > -1.05) && ((
mu.eta()) < 1.05))
 
  245             if (((
mu.eta()) < -1.05) || ((
mu.eta()) > 1.05))
 
  254     for (
unsigned int i = 0; 
i < 
m_chains.size(); 
i++) {
 
  257             if (((
mu.eta()) > -1.05) && ((
mu.eta()) < 1.05))
 
  259             if (((
mu.eta()) < -1.05) || ((
mu.eta()) > 1.05))
 
  269     if (
str.find(
"HLT_") != std::string::npos) {
 
  270         for (
unsigned int l = 0; 
l < 
str.size(); 
l++) {
 
  271             if (isdigit(
str[
l])) {
 
  272                 for (
unsigned int a = 
l; 
a < 
str.size(); 
a++) {
 
  274                     if ((isdigit(
str[
a])) == 0) 
break;
 
  281     if (
str.find(
"L1_MU") != std::string::npos) {
 
  282         for (
unsigned int l = 0; 
l < 
str.size(); 
l++) {
 
  283             if ((
str[
l]) == 
'U') {
 
  284                 for (
unsigned int a = 
l + 1; 
a < 
str.size(); 
a++) {
 
  
void fillNumRELEff(const xAOD::Muon &Trigmu, const std::string &selectedChain)
std::vector< std::string > m_seeds
MuonContainer_v1 MuonContainer
Definition of the current "Muon container version".
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oEFTriggerChainBarrelEfficiencyPlots
Class describing standalone muons reconstructed in the LVL2 trigger.
void fillNumEff(const xAOD::Muon &Trigmu, const std::string &selectedChain)
virtual double eta() const
The pseudorapidity ( ) of the particle.
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oEFTriggerChainBarrelRELEfficiencyPlots
std::vector< std::unique_ptr< ResoTriggerMuonPlots > > m_oEFTriggerMuonEndcapsResolutionPlots
void fill(const xAOD::MuonRoI &TrigL1mu)
float eta() const
The pseudorapidity ( ) of the muon candidate.
void setP4(double pt, double eta, double phi)
Set method for IParticle values.
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oL1TriggerChainEndcapsEfficiencyPlots
float thrValue() const
The highest threshold value (in MeV) passed by the muon candidate.
std::unique_ptr< L1TriggerMuonPlots > m_oL1TriggerMuonPlots
std::vector< std::string > m_chains
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oEFTriggerChainEndcapsRELEfficiencyPlots
Class describing combined muon reconstructed in the LVL2 trigger.
Temporary container used until we have I/O for AuxStoreInternal.
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oEFTriggerChainEndcapsEfficiencyPlots
void fillDenEff(const xAOD::Muon &Trigmu, const std::string &selectedChain)
std::vector< std::vector< std::string > > m_ChainSeed
std::vector< std::unique_ptr< HLTriggerMuonPlots > > m_oL2TriggerMuonPlots
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oL1TriggerChainBarrelEfficiencyPlots
Class describing a LVL1 muon region of interest.
bool m_doTrigMuonEFValidation
bool m_doTrigMuonL1Validation
TriggerMuonValidationPlots(PlotBase *pParent, const std::string &sDir, std::vector< unsigned int > authors, bool isData, bool doTrigMuonL1Validation, bool doTrigMuonL2Validation, bool doTrigMuonEFValidation, std::vector< std::vector< std::string >> ChainSeed, std::vector< std::string > L1MuonItems)
void fillDenRELEff(const xAOD::Muon &Trigmu, const std::string &selectedChain)
bool isAuthor(const Author author) const
Returns 'true' if 'author' is the an author of this muon.
std::vector< std::unique_ptr< ResoTriggerMuonPlots > > m_oEFTriggerMuonBarrelResolutionPlots
Muon_v1 Muon
Reference the current persistent version:
bool m_doTrigMuonL2Validation
std::vector< std::string > m_L1MuonItems
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oL1TriggerChainEfficiencyPlots
void fillTriggerMuonPlots(const xAOD::Muon &Trigmu)
value_type push_back(value_type pElem)
Add an element to the end of the collection.
void fillNumL1Eff(const xAOD::Muon &Trigmu, const std::string &selectedChain)
std::vector< std::unique_ptr< ResoTriggerMuonPlots > > m_oL2TriggerMuonResolutionPlots
std::vector< std::unique_ptr< ResoTriggerMuonPlots > > m_oL2TriggerMuonEndcapsResolutionPlots
void fillDenL1Eff(const xAOD::Muon &Trigmu, const std::string &selectedChain)
float findTrigTreshold(const TString &chain)
void fillFeatPlots(const xAOD::Muon &Trigmu, const std::string &selectedChain)
std::vector< std::unique_ptr< HLTriggerMuonPlots > > m_oEFTriggerMuonPlots
std::vector< std::unique_ptr< ResoTriggerMuonPlots > > m_oEFTriggerMuonResolutionPlots
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oEFTriggerChainEfficiencyPlots
MuonAuxContainer_v5 MuonAuxContainer
Definition of the current Muon auxiliary container.
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oEFTriggerChainRELEfficiencyPlots
virtual ~TriggerMuonValidationPlots()
std::vector< std::unique_ptr< ResoTriggerMuonPlots > > m_oL2TriggerMuonBarrelResolutionPlots
float phi() const
The azimuthal angle ( ) of the muon candidate.
std::vector< unsigned int > m_selectedAuthors