Loading [MathJax]/extensions/tex2jax.js
 |
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);
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);
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
Temporary container used until we have I/O for AuxStoreInternal.
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)