ATLAS Offline Software
Loading...
Searching...
No Matches
TrigEFBphys.h
Go to the documentation of this file.
1// -*- C++ -*-
2
3/*
4 Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
5*/
6
7
23
24#ifndef TRIG_EFBPHYS
25#define TRIG_EFBPHYS
26
28
29#include <vector>
30#include <iostream>
31#include <string>
32#include <map>
33
35#include "AthLinks/ElementLink.h"
36#include "AthLinks/ElementLinkVector.h"
38class TrigEFBphys;
39
41
43
44 public:
45
50
52 TrigEFBphys(int roi, float eta, float phi, pType particleType,
53 float mass);
54
56 TrigEFBphys(int roi, float eta, float phi, pType particleType,
57 float mass, const ElementLink<TrigEFBphysContainer>& sDecay);
58
60 ~TrigEFBphys() = default;
61
63 int roiId() const { return m_roiID; }
65 pType particleType() const { return m_particleType; }
67 float eta() const { return m_eta; }
69 float phi() const { return m_phi; }
71 float mass() const { return m_mass; }
73 float fitmass() const { return m_fitmass; }
75 float fitchi2() const { return m_fitchi2; }
77 int fitndof() const { return m_fitndof; }
79 float fitx() const { return m_fitx; }
81 float fity() const { return m_fity; }
83 float fitz() const { return m_fitz; }
85 const TrigEFBphys* pSecondDecay() const;
87
90
92 void fitmass(float FitMass);
94 void fitchi2(float FitChi2);
96 void fitndof(int FitNdof);
98 void fitx(float FitX);
100 void fity(float FitY);
102 void fitz(float FitZ);
106 void pSecondDecay(ElementLink<TrigEFBphysContainer> p_secondaryDecay);
107
108 private:
109
110 // private data members
111
114 float m_eta;
115 float m_phi;
116 float m_mass;
120 float m_fitx;
121 float m_fity;
122 float m_fitz;
125};
126
127std::string str( const TrigEFBphys& p ); //<! printing helper
128MsgStream& operator<< ( MsgStream& m, const TrigEFBphys& p ); //<! printing helper (wraps above)
129bool operator == ( const TrigEFBphys& a, const TrigEFBphys& b );
130inline bool operator != ( const TrigEFBphys& a, const TrigEFBphys& b ) { return !(a==b); }
131
139void diff( const TrigEFBphys& a, const TrigEFBphys& b, std::map<std::string, double>& variableChange );
140
141
142CLASS_DEF( TrigEFBphys , 54197992 , 1 )
143
144#endif // TRIG_BPHYS
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
#define ELEMENTLINK_FWD(TYPE, VALUE_TYPE)
Forward declaration helper for ElementLink.
static Double_t a
void diff(const TrigEFBphys &a, const TrigEFBphys &b, std::map< std::string, double > &variableChange)
comparison with feedback Function compares two objects and returns "semi verbose" output in the form ...
MsgStream & operator<<(MsgStream &m, const TrigEFBphys &p)
bool operator!=(const TrigEFBphys &a, const TrigEFBphys &b)
bool operator==(const TrigEFBphys &a, const TrigEFBphys &b)
ElementLinkVector implementation for standalone ROOT.
float phi() const
accessor method: phi
Definition TrigEFBphys.h:69
float fitchi2() const
accessor method: chi2 from vertex fit
Definition TrigEFBphys.h:75
const ElementLink< TrigEFBphysContainer > & secondaryDecayLink() const
TrigEFBphys()
constructors; note: default constructor needed by POOL
void addTrack(const ElementLink< Rec::TrackParticleContainer > &track)
set method: add track to particle
float fitmass() const
accessor method: mass from vertex fit
Definition TrigEFBphys.h:73
float m_fitmass
float m_fitchi2
~TrigEFBphys()=default
destructor
ElementLinkVector< Rec::TrackParticleContainer > m_trackVector
pType
enum for different particle types
Definition TrigEFBphys.h:47
float fity() const
accessor method: y position of vertex
Definition TrigEFBphys.h:81
float fitx() const
accessor method: x position of vertex
Definition TrigEFBphys.h:79
pType particleType() const
accessor method: particle Type
Definition TrigEFBphys.h:65
pType m_particleType
ElementLink< TrigEFBphysContainer > m_secondaryDecay
float mass() const
accessor method: mass
Definition TrigEFBphys.h:71
float fitz() const
accessor method: z position of vertex
Definition TrigEFBphys.h:83
int roiId() const
accessor method: ID of L1 RoI
Definition TrigEFBphys.h:63
float eta() const
accessor method: eta
Definition TrigEFBphys.h:67
const TrigEFBphys * pSecondDecay() const
accessor method: secondary decay particle
const ElementLinkVector< Rec::TrackParticleContainer > & trackVector() const
accessor method:vector of tracks used to make particle
Definition TrigEFBphys.h:89
int fitndof() const
accessor method: ndof from vertex fit
Definition TrigEFBphys.h:77