ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/Mods/interface/MuonIDMod.h
(Generate patch)

Comparing UserCode/MitPhysics/Mods/interface/MuonIDMod.h (file contents):
Revision 1.6 by loizides, Thu Nov 27 16:30:26 2008 UTC vs.
Revision 1.14 by loizides, Mon Mar 23 14:44:12 2009 UTC

# Line 4 | Line 4
4   // MuonIDMod
5   //
6   // This module applies muon identification criteria and exports a pointer to a collection
7 < // of "good muons" according to the specified ID scheme. TODO: Pointer to a presentation.
7 > // of "good muons" according to the specified ID scheme.
8   //
9 < // Authors: S.Xie
9 > // See http://indico.cern.ch/contributionDisplay.py?contribId=1&confId=45945
10 > // See http://indico.cern.ch/getFile.py/access?contribId=1&resId=0&materialId=slides&confId=42229
11 > //
12 > // Authors: S.Xie,C.Loizides
13   //--------------------------------------------------------------------------------------------------
14  
15   #ifndef MITPHYSICS_MODS_MUONIDMOD_H
# Line 23 | Line 26 | namespace mithep
26      public:
27        MuonIDMod(const char *name="MuonIDMod",
28                  const char *title="Muon identification module");
26      ~MuonIDMod() {}
29  
30 <      void          SetMuonBranchName(const char *name)  { fMuonBranchName    = name; }  
31 <      void          SetCleanMuonsName(const char *name)  { fCleanMuonsName    = name; }  
32 <      void          SetMuonIDType(const char *type)      { fMuonIDType        = type; }
33 <      void          SetTrackIsolationCut(Double_t cut)   { fTrackIsolationCut = cut;  }
34 <      void          SetCaloIsolationCut(Double_t cut)    { fCaloIsolationCut  = cut;  }
35 <      void          SetCombIsolationCut(Double_t cut)    { fCombIsolationCut  = cut;  }
36 <      void          SetMuonPtMin(Double_t pt)            { fMuonPtMin          = pt;  }
30 >      Double_t           GetCaloIsoCut()                const { return fCaloIsolationCut;   }
31 >      const char        *GetClassType()                 const { return fMuonClassType;      }
32 >      const char        *GetCleanName()                 const { return GetCleanMuonsName(); }  
33 >      const char        *GetCleanMuonsName()            const { return fCleanMuonsName;     }  
34 >      Double_t           GetCombIsoCut()                const { return fCombIsolationCut;   }
35 >      const char        *GetIDType()                    const { return fMuonIDType;         }
36 >      const char        *GetInputName()                 const { return fMuonBranchName;     }  
37 >      const char        *GetIsoType()                   const { return fMuonIsoType;        }
38 >      const char        *GetOutputName()                const { return GetCleanMuonsName(); }  
39 >      Double_t           GetPtMin(Double_t pt)          const { return fMuonPtMin;          }
40 >      Double_t           GetTrackIsoCut()               const { return fTrackIsolationCut;  }
41 >      void               SetCaloIsoCut(Double_t cut)          { fCaloIsolationCut  = cut;   }
42 >      void               SetCombIsoCut(Double_t cut)          { fCombIsolationCut  = cut;   }
43 >      void               SetClassType(const char *type)       { fMuonClassType     = type;  }
44 >      void               SetCleanName(const char *name)       { SetCleanMuonsName(name);    }  
45 >      void               SetCleanMuonsName(const char *name)  { fCleanMuonsName    = name;  }  
46 >      void               SetIDType(const char *type)          { fMuonIDType        = type;  }
47 >      void               SetInputName(const char *name)       { fMuonBranchName    = name;  }  
48 >      void               SetIsoType(const char *type)         { fMuonIsoType       = type;  }
49 >      void               SetOutputName(const char *name)      { SetCleanMuonsName(name);    }  
50 >      void               SetPtMin(Double_t pt)                { fMuonPtMin         = pt;    }
51 >      void               SetTrackIsoCut(Double_t cut)         { fTrackIsolationCut = cut;   }
52  
53        enum EMuIdType {
54          kIdUndef = 0,       //not defined
55          kTight,             //"Tight"
56          kLoose,             //"Loose"
57 +        kNoId,              //"NoId"
58          kCustomId           //"Custom"
59        };
60        enum EMuIsoType {
# Line 56 | Line 74 | namespace mithep
74        };
75  
76      protected:
77 <      TString       fMuonBranchName;            //name of muon collection (in branch)
78 <      TString       fCleanMuonsName;            //name of exported "good muon" collection
61 <      TString       fMuonIDType;                //type of muon id scheme we impose
62 <      TString       fMuonIsoType;               //type of muon isolations scheme we impose
63 <      TString       fMuonClassType;             //type of muon class we impose
64 <      Double_t      fTrackIsolationCut;         //cut value for track isolation
65 <      Double_t      fCaloIsolationCut;          //cut value for calo isolation
66 <      Double_t      fCombIsolationCut;          //cut value for combined isolation
67 <      Double_t      fMuonPtMin;                 //min muon pt
68 <      MuonCol      *fMuons;                     //!muon branch
69 <      MuonTools    *fMuonTools;                 //!muon tool
70 <      EMuIdType     fMuIDType;                  //!
71 <      EMuIsoType    fMuIsoType;                  //!
72 <      EMuClassType  fMuClassType;            //!
77 >      void               Process();
78 >      void               SlaveBegin();
79  
80 <      void       Process();
81 <      void       SlaveBegin();
80 >      TString            fMuonBranchName;      //name of muon collection (input)
81 >      TString            fCleanMuonsName;      //name of exported "good muon" collection
82 >      TString            fMuonIDType;          //type of muon id scheme we impose
83 >      TString            fMuonIsoType;         //type of muon isolations scheme we impose
84 >      TString            fMuonClassType;       //type of muon class we impose
85 >      Double_t           fTrackIsolationCut;   //cut value for track isolation
86 >      Double_t           fCaloIsolationCut;    //cut value for calo isolation
87 >      Double_t           fCombIsolationCut;    //cut value for combined isolation
88 >      Double_t           fMuonPtMin;           //min muon pt
89 >      const MuonCol     *fMuons;               //!muon collection
90 >      MuonTools         *fMuonTools;           //!muon tool
91 >      EMuIdType          fMuIDType;            //!muon id type (imposed)
92 >      EMuIsoType         fMuIsoType;           //!muon iso type (imposed)
93 >      EMuClassType       fMuClassType;         //!muon class type (imposed)
94      
95 <      ClassDef(MuonIDMod,1) // TAM module for muon id
95 >    ClassDef(MuonIDMod, 1) // Muon identification module
96    };
97   }
98   #endif

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines