• Main Page
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

/Users/jmonk/Physics/ForIA/ForIA/AnalysisTools/TruthSelection.hh

Go to the documentation of this file.
00001 #ifndef FORIA_TRUTHSELECTION_HH
00002 #define FORIA_TRUTHSELECTION_HH
00003 
00004 #include "ForIA/TruthParticle.hh"
00005 #include "ForIA/AnalysisTools/FourVectorSelection.hh"
00006 
00007 namespace ForIA {
00008   
00009   class TruthSelection: public FourVectorSelection{
00010     
00011   public:
00012     
00013     TruthSelection();
00014     
00024     enum DefinedSelection{MINBIAS_2, UE};
00025     
00026     enum charge{ANY, NEUTRAL, CHARGED, POSITIVE, NEGATIVE};
00027     
00028     const TruthParticleVector &particles()const;
00029     const TruthParticleVector &rejectedParticles()const;
00030     
00031     bool setPTMin(double pt);
00032     bool setEtaMax(double eta);
00033     bool setCharged(charge chrg);
00034     bool setBarcodeMax(int bcode);
00035     bool setIsPrimary(bool isPrimary);
00036     
00037     bool setSelection(DefinedSelection selection);
00038     
00039   private:
00040     
00041     void fillVectors() const;
00042     
00043     mutable TruthParticleVector m_passedParticles;
00044     mutable TruthParticleVector m_rejectedParticles;
00045     
00046     double m_ptMin;
00047     double m_etaMax;
00048     charge m_charge;
00049     int m_barcodeMax;
00050     bool m_isPrimary;
00051     
00052     bool m_haveSetPT;
00053     bool m_haveSetEta;
00054     bool m_haveSetCharged;
00055     bool m_haveSetBarcode;
00056     bool m_haveSetIsPrimary;
00057     
00058   };
00059 }
00060 
00061 #endif 

Generated on Mon Jul 30 2012 16:56:35 for ForIA by  doxygen 1.7.2