FairRoot/PandaRoot
PndEventInfo.h
Go to the documentation of this file.
1 #ifndef PNDEVENTINFO_H
2 #define PNDEVENTINFO_H
3 // //
5 // PndEventInfo //
6 // //
7 // Contains and provides access to summary information in the event //
8 // useful for analysis //
9 // //
11 
12 //----------------------
13 // Base Class Headers --
14 //----------------------
15 #include "TObject.h"
16 #include "TVector3.h"
17 #include "TLorentzVector.h"
18 #include "RhoMath/RhoVector3Err.h"
19 
20 #include "RhoEventShape.h"
21 
22 // ---------------------
23 // -- Class Interface --
24 // ---------------------
25 
26 class PndEventInfo : public TObject
27 {
28 
29  //--------------------
30  // Instance Members --
31  //--------------------
32  public:
33 
34  // Constructors
35  PndEventInfo();
36  // there should eventually be a constructor that takes all the
37  // various data items
38 
39  // Destructor
40  virtual ~PndEventInfo( );
41 
42  // Operations
43  virtual void PrintOn ( std::ostream& o=std::cout ) const;
44 
45  // accessors to contained information
46  const TLorentzVector& AntiProtonBeam() const {return fAntiProtonBeam;}
47  const TLorentzVector& CmFrame() const {return fCmFrame;}
48  const RhoVector3Err& BeamSpot() const {return fBeamSpot;}
49  const RhoVector3Err& PrimaryVertex() const { return fPrimaryVertex;}
50  const TVector3& IPTruth() const {return fIPTruth;}
51 // const TEventShape& EventShape() const {return fEventShape;}
52 
53  int GetCharged() {return fNCharged;}
54  int GetNeutrals() {return fNNeutrals;}
55 
56  // Function to set information
57  void SetPrimaryVertex ( RhoVector3Err& inVtx ) { fPrimaryVertex=inVtx;}
58  void SetIPTruth ( TVector3& inVtx ) {fIPTruth=inVtx;}
59  void SetBeamSpot ( RhoVector3Err& inVtx ) { fBeamSpot=inVtx;}
60  void SetCmFrame ( TLorentzVector& cmf );
61  void SetAntiProtonBeam ( TLorentzVector& beam );
62 
63 // void SetEventShape(TEventShape &eventShape) {fEventShape=eventShape;}
64 
65  void SetCharged ( int n ) {fNCharged=n;}
66  void SetNeutrals ( int n ) {fNNeutrals=n;}
67 
68  private:
69  TLorentzVector fAntiProtonBeam; // The antiproton beam
70  TLorentzVector fCmFrame; // The CMS frame
73  TVector3 fIPTruth; // the MC truth IP
74  Int_t fNCharged;
75  Int_t fNNeutrals;
76 // TEventShape fEventShape;
77 
78  public:
79  ClassDef ( PndEventInfo,1 ) // Summary information in the event
80 };
81 
82 // standalone print
84 
85 #endif
const TVector3 & IPTruth() const
Definition: PndEventInfo.h:50
void SetNeutrals(int n)
Definition: PndEventInfo.h:66
int n
void SetPrimaryVertex(RhoVector3Err &inVtx)
Definition: PndEventInfo.h:57
std::ostream & operator<<(std::ostream &o, const PndEventInfo &)
void SetCmFrame(TLorentzVector &cmf)
void SetCharged(int n)
Definition: PndEventInfo.h:65
int GetNeutrals()
Definition: PndEventInfo.h:54
const RhoVector3Err & PrimaryVertex() const
Definition: PndEventInfo.h:49
TLorentzVector fAntiProtonBeam
Definition: PndEventInfo.h:69
void SetAntiProtonBeam(TLorentzVector &beam)
TVector3 fIPTruth
The primary vertex.
Definition: PndEventInfo.h:73
virtual ~PndEventInfo()
Int_t fNNeutrals
Definition: PndEventInfo.h:75
TLorentzVector fCmFrame
Definition: PndEventInfo.h:70
Int_t fNCharged
Definition: PndEventInfo.h:74
void SetIPTruth(TVector3 &inVtx)
Definition: PndEventInfo.h:58
virtual void PrintOn(std::ostream &o=std::cout) const
const RhoVector3Err & BeamSpot() const
Definition: PndEventInfo.h:48
RhoVector3Err fBeamSpot
Definition: PndEventInfo.h:71
RhoVector3Err fPrimaryVertex
The beam spot w/ error matrix.
Definition: PndEventInfo.h:72
int GetCharged()
Definition: PndEventInfo.h:53
void SetBeamSpot(RhoVector3Err &inVtx)
Definition: PndEventInfo.h:59
const TLorentzVector & AntiProtonBeam() const
Definition: PndEventInfo.h:46
const TLorentzVector & CmFrame() const
Definition: PndEventInfo.h:47