Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:28:16

0001 #ifndef RecoTracker_MkFitCMS_standalone_MkStandaloneSeqs_h
0002 #define RecoTracker_MkFitCMS_standalone_MkStandaloneSeqs_h
0003 
0004 #include <vector>
0005 #include <map>
0006 
0007 namespace mkfit {
0008 
0009   class EventOfHits;
0010   class Track;
0011   class TrackExtra;
0012   typedef std::vector<Track> TrackVec;
0013   typedef std::vector<TrackExtra> TrackExtraVec;
0014 
0015   class Event;
0016 
0017   namespace StdSeq {
0018 
0019     void loadHitsAndBeamSpot(Event &ev, EventOfHits &eoh);
0020 
0021     void handle_duplicates(Event *event);
0022 
0023     void dump_simtracks(Event *event);
0024     void track_print(Event *event, const Track &t, const char *pref);
0025 
0026     // Validation quality & ROOT
0027     //--------------------------
0028 
0029     struct Quality {
0030       int m_cnt = 0, m_cnt1 = 0, m_cnt2 = 0, m_cnt_8 = 0, m_cnt1_8 = 0, m_cnt2_8 = 0, m_cnt_nomc = 0;
0031 
0032       void quality_val(Event *event);
0033       void quality_reset();
0034       void quality_process(Event *event, Track &tkcand, const int itrack, std::map<int, int> &cmsswLabelToPos);
0035       void quality_print();
0036     };
0037 
0038     void root_val_dumb_cmssw(Event *event);
0039     void root_val(Event *event);
0040 
0041     void prep_recotracks(Event *event);
0042     void prep_simtracks(Event *event);
0043     void prep_cmsswtracks(Event *event);
0044     void prep_reftracks(Event *event, TrackVec &tracks, TrackExtraVec &extras, const bool realigntracks);
0045     // sort hits by layer, init track extras, align track labels if true
0046     void prep_tracks(Event *event, TrackVec &tracks, TrackExtraVec &extras, const bool realigntracks);
0047     void score_tracks(TrackVec &tracks);  // if track score is not already assigned
0048 
0049   }  // namespace StdSeq
0050 
0051 }  // namespace mkfit
0052 
0053 #endif