Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2022-02-21 23:14:28

0001 #ifndef RecoTracker_MkFitCore_standalone_Validation_h
0002 #define RecoTracker_MkFitCore_standalone_Validation_h
0003 
0004 #include "RecoTracker/MkFitCore/interface/Track.h"
0005 #include "RecoTracker/MkFitCore/standalone/ConfigStandalone.h"
0006 #include "RecoTracker/MkFitCore/standalone/TrackExtra.h"
0007 
0008 namespace mkfit {
0009 
0010   class Event;
0011 
0012   // Fit Validation objects -- mplex only
0013   struct FitVal {
0014   public:
0015     FitVal() {}
0016     FitVal(float ppz,
0017            float eppz,
0018            float ppphi,
0019            float eppphi,
0020            float upt,
0021            float eupt,
0022            float umphi,
0023            float eumphi,
0024            float umeta,
0025            float eumeta)
0026         : ppz(ppz),
0027           eppz(eppz),
0028           ppphi(ppphi),
0029           eppphi(eppphi),
0030           upt(upt),
0031           eupt(eupt),
0032           umphi(umphi),
0033           eumphi(eumphi),
0034           umeta(umeta),
0035           eumeta(eumeta) {}
0036 
0037     // first p or u = propagated or updated
0038     // middle: p or m/nothing = position or momentum
0039     // begining: e = error (already sqrt)
0040     float ppz, eppz, ppphi, eppphi;
0041     float upt, eupt, umphi, eumphi, umeta, eumeta;
0042   };
0043 
0044   class Validation {
0045   public:
0046     virtual ~Validation() {}
0047 
0048     virtual void alignTracks(TrackVec&, TrackExtraVec&, bool) {}
0049 
0050     virtual void resetValidationMaps() {}
0051     virtual void resetDebugVectors() {}
0052 
0053     virtual void collectFitInfo(const FitVal&, int, int) {}
0054 
0055     virtual void setTrackExtras(Event& ev) {}
0056     virtual void makeSimTkToRecoTksMaps(Event&) {}
0057     virtual void makeSeedTkToRecoTkMaps(Event&) {}
0058     virtual void makeRecoTkToRecoTkMaps(Event&) {}
0059     virtual void makeCMSSWTkToRecoTksMaps(Event&) {}
0060     virtual void makeSeedTkToCMSSWTkMap(Event&) {}
0061     virtual void makeCMSSWTkToSeedTkMap(Event&) {}
0062     virtual void makeRecoTkToSeedTkMapsDumbCMSSW(Event&) {}
0063 
0064     virtual void setTrackScoresDumbCMSSW(Event&) {}
0065 
0066     virtual void fillEfficiencyTree(const Event&) {}
0067     virtual void fillFakeRateTree(const Event&) {}
0068     virtual void fillConfigTree() {}
0069     virtual void fillCMSSWEfficiencyTree(const Event&) {}
0070     virtual void fillCMSSWFakeRateTree(const Event&) {}
0071     virtual void fillFitTree(const Event&) {}
0072 
0073     virtual void saveTTrees() {}
0074 
0075     static Validation* make_validation(const std::string&, const TrackerInfo*);
0076 
0077   protected:
0078     Validation();
0079   };
0080 
0081 }  // end namespace mkfit
0082 #endif