Newer
Older
TB_Chris / TbAnalysis / src / .svn / text-base / TbEfficiency.h.svn-base
  1. #ifndef TB_EFFICIENCY_H
  2. #define TB_EFFICIENCY_H 1
  3.  
  4. // Tb/TbKernel
  5. #include "TbKernel/TbAlgorithm.h"
  6. #include "AIDA/IHistogram1D.h"
  7. #include "TEfficiency.h"
  8. #include "TH2.h"
  9. #include "TFile.h"
  10. #include "TGraphAsymmErrors.h"
  11.  
  12. /** @class TbEfficiency TbEfficiency.h
  13. *
  14. */
  15.  
  16. class TbEfficiency : public TbAlgorithm {
  17. public:
  18. /// Constructor
  19. TbEfficiency(const std::string& name, ISvcLocator* pSvcLocator);
  20. /// Destructor
  21. virtual ~TbEfficiency() {}
  22.  
  23. bool m_checkHitDUT;
  24. bool m_checkHitAlivePixel;
  25. double m_pointingResAllowance;
  26. uint m_nTracksConsidered;
  27. uint m_nTracksAssociated;
  28. uint m_event;
  29. int m_pointingResAllowance_deadPixels;
  30. bool m_takeDeadPixelsFromFile;
  31. TH2F * m_deadPixelMap;
  32. double m_pitch;
  33. uint m_nTotalTracks;
  34. double m_maxChi;
  35.  
  36. bool passedThroughDUT(Gaudi::XYZPoint interceptUL);
  37. bool passedThroughAlivePixel(Gaudi::XYZPoint interceptUL);
  38.  
  39. virtual StatusCode initialize(); ///< Algorithm initialization
  40. virtual StatusCode execute(); ///< Algorithm execution
  41. virtual StatusCode finalize();
  42. bool passSelectionCriteria(LHCb::TbTrack * track, Gaudi::XYZPoint interceptUL);
  43.  
  44. TEfficiency * h_row;
  45. TEfficiency * h_col;
  46. TEfficiency * m_eff;
  47. TEfficiency * h_hitmap;
  48. TEfficiency * h_pixel;
  49. TEfficiency * h_pixel2x2;
  50.  
  51. private:
  52. uint m_dut;
  53. std::string m_trackLocation;
  54. std::string m_clusterLocation;
  55. };
  56. #endif