/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Reconstruction/MucRecAlg/MucRecAlg-00-03-08/MucRecAlg/MucRecRoadFinder.h

Go to the documentation of this file.
00001 //$id$
00002 //
00003 //$log$
00004 
00005 /*
00006  *    2003/09/06   Zhengyun You      Peking University
00007  * 
00008  *    2005/02/27   Zhengyun You      Peking University
00009  *                 transplanted to Gaudi framework
00010  */
00011 
00012 #ifndef MUC_REC_ROAD_FINDER_H
00013 #define MUC_REC_ROAD_FINDER_H
00014 
00015 #include "GaudiKernel/Algorithm.h"
00016 #include "GaudiKernel/NTuple.h"
00017 #include "MucRecEvent/RecMucTrack.h"
00018 #include "MucRecEvent/MucRecHitContainer.h"
00019 #include <string>
00028 class MucRecRoadFinder : public Algorithm
00029 {
00030  public:
00031   MucRecRoadFinder(const std::string &name, ISvcLocator* pSvcLocator);
00032   ~MucRecRoadFinder(){};
00033 
00034   StatusCode initialize();
00035   StatusCode execute();
00036   StatusCode finalize();
00037 
00038   void TrackFinding(RecMucTrack *aTrack);
00039 
00040  private:
00041   int m_NEvent;
00042   int m_NEventWithHit;
00043   int m_NEventReco;
00044   int m_NHitsLostTotal;
00045   int m_NHitsTotal;
00046   std::vector<int> m_NHitsLost;
00047   std::vector<int> m_NHitsLostInGap;
00048 
00049   int m_fittingMethod;
00050   std::string m_configFile;
00051   int m_mccosmic;
00052   int m_NtOutput; //switch of output Muc.root
00053   int m_onlyseedfit; //only fit those layers being seed
00054   int m_maxHitsRec; //too many hits, do not deal with;
00055   int m_united;  // judge if that is united or not
00056   int m_seedtype; // 0: find seed gaps event by event, 1: fix seed gaps 
00057   bool m_MsOutput; // for debug cout or not 
00058 
00059   std::string m_filter_filename;
00060   struct FilterEvent {
00061     std::string bossver;
00062     int runid;
00063     int eventid;
00064   }; 
00065   std::vector<FilterEvent> m_filter_event;
00066   MucRecHitContainer *aMucRecHitContainer;
00067 
00068   NTuple::Tuple*  m_tuple;
00069   NTuple::Item<double>             m_part;
00070   NTuple::Item<double>             m_seg;
00071   NTuple::Item<double>             m_gap;
00072   NTuple::Item<double>             m_strip;
00073   NTuple::Item<double>             m_diff;
00074   NTuple::Item<double>             m_dist;
00075 
00076   NTuple::Item<double>             m_run;
00077   NTuple::Item<double>             m_event;
00078   NTuple::Item<double>             m_ngapwithhits;
00079   NTuple::Item<double>             m_nhit;
00080   NTuple::Item<double>             m_maxhit;
00081   NTuple::Item<double>             m_multihit;
00082   NTuple::Item<double>             m_angle_cosmic;
00083   NTuple::Item<double>             m_angle_updown;  
00084   NTuple::Item<double>             m_px;
00085   NTuple::Item<double>             m_py;
00086   NTuple::Item<double>             m_pz;
00087   NTuple::Item<double>             m_theta;
00088   NTuple::Item<double>             m_phi;
00089   NTuple::Item<double>             m_theta_pipe;
00090   NTuple::Item<double>             m_phi_pipe;
00091   NTuple::Item<double>             m_px_mc;
00092   NTuple::Item<double>             m_py_mc;
00093   NTuple::Item<double>             m_pz_mc;
00094   NTuple::Item<double>             m_theta_mc;
00095   NTuple::Item<double>             m_phi_mc;
00096   NTuple::Item<double>             m_theta_mc_pipe;
00097   NTuple::Item<double>             m_phi_mc_pipe;
00098   NTuple::Item<double>             m_emcUp;
00099   NTuple::Item<double>             m_emcDown;
00100   NTuple::Item<double>             m_mucUp;
00101   NTuple::Item<double>             m_mucDown;
00102   NTuple::Item<double>             m_projx;
00103   NTuple::Item<double>             m_projz;
00104 
00105 };
00106 
00107 #endif /* MUC_REC_ROAD_FINDER_H */

Generated on Tue Nov 29 23:13:45 2016 for BOSS_7.0.2 by  doxygen 1.4.7