  | 
  
    ATLAS Offline Software
    
   | 
 
 
 
 
Go to the documentation of this file.
   16 #include "GaudiKernel/ToolHandle.h" 
   28   class TrkV0VertexFitter;
 
   29   class ITrackSelectorTool;
 
   38     std::vector<const xAOD::Muon*> 
muons;
 
   43       std::string chargeStr = 
"";
 
   44       if (
muons.at(0)->charge() > 0) {chargeStr += 
"+";}
 
   45       else {chargeStr += 
"-";}
 
   46       if (
muons.at(1)->charge() > 0) {chargeStr += 
"+";}
 
   47       else {chargeStr += 
"-";}
 
   48       if (
muons.size()==4) {
 
   49         if (
muons.at(2)->charge() > 0) {chargeStr += 
"+";}
 
   50         else {chargeStr += 
"-";}
 
   51         if (
muons.at(3)->charge() > 0) {chargeStr += 
"+";}
 
   52         else {chargeStr += 
"-";}
 
   58       std::string indexStr = 
"";
 
   60       if (
muons.size()==2) {
 
   61         ss.str(
""); 
ss.clear();
 
   64         ss.str(
""); 
ss.clear();
 
   68       if (
muons.size()==4) {
 
   69         for (
unsigned int i=0; 
i<4; ++
i) {
 
   70           ss.str(
""); 
ss.clear();
 
   79       auto& link = 
mu->inDetTrackParticleLink();
 
   80       return link.isValid() ? *link : 
nullptr;
 
   83     std::vector<const xAOD::TrackParticle*> 
trackParticles(
const std::string& specify) {
 
   84       std::vector<const xAOD::TrackParticle*> theTracks;
 
   86       if (
muons.at(0)->charge()*
muons.at(1)->charge() < 0) oppCh=
true;
 
   87       if (specify==
"pair1") {
 
   91       if (specify==
"pair2") {
 
  135     FourMuonTool(
const std::string& 
t, 
const std::string& 
n, 
const IInterface*  
p);
 
  142                              bool &acceptEvent, 
const EventContext& ctx) 
const;
 
  146     static std::vector<std::vector<unsigned int> > 
mFromN(
unsigned int m, 
unsigned int n);
 
  149                               std::vector<unsigned int> &combination,
 
  150                               std::vector<unsigned int> &mainList,
 
  151                               std::vector<std::vector<unsigned int> > &allCombinations);
 
  153                                   std::vector<Combination> &
pairs,
 
  154                                   std::vector<Combination> &quadruplets,
 
  155                                   unsigned int nSelectedMuons);
 
  160     Gaudi::Property<double> 
m_ptCut{
this, 
"ptCut", 0.0};
 
  161     Gaudi::Property<double> 
m_etaCut{
this, 
"etaCut", 0.0};
 
  165     PublicToolHandle < Trk::IVertexFitter > 
m_iVertexFitter{
this, 
"TrkVertexFitterTool", 
"Trk::TrkVKalVrtFitter"};
 
  166     PublicToolHandle < Trk::IVertexFitter > 
m_iV0VertexFitter{
this, 
"V0VertexFitterTool", 
"Trk::V0VertexFitter"};
 
  167     PublicToolHandle < Trk::ITrackSelectorTool > 
m_trkSelector{
this, 
"TrackSelectorTool", 
"InDet::TrackSelectorTool"};
 
  
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
 
std::string combinationIndices()
 
::StatusCode StatusCode
StatusCode definition for legacy code.
 
std::vector< unsigned int > quadIndices
 
Ensure that the ATLAS eigen extensions are properly loaded.
 
std::pair< unsigned int, unsigned int > pairIndices
 
Eigen::Matrix< double, 3, 1 > Vector3D
 
std::vector< const xAOD::Muon * > muons
 
Class describing a Vertex.
 
const xAOD::TrackParticle * GetMuonTrack(const xAOD::Muon *mu) const
 
AthConfigFlags beamSpot(AthConfigFlags flags, str instanceName, str recoMode)
 
Class describing a TrackParticle.
 
std::string combinationCharges()
 
std::vector< const xAOD::TrackParticle * > trackParticles(const std::string &specify)