ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitProd/TreeFiller/src/FillerConversionElectrons.cc
Revision: 1.1
Committed: Wed Jul 2 19:41:02 2008 UTC (16 years, 10 months ago) by bendavid
Content type: text/plain
Branch: MAIN
Log Message:
added fillers for photons and conversions

File Contents

# User Rev Content
1 bendavid 1.1 // $Id: FillerGlobalMuons.cc,v 1.3 2008/06/18 19:17:21 loizides Exp $
2    
3     #include "FWCore/MessageLogger/interface/MessageLogger.h"
4     #include "FWCore/Framework/interface/ESHandle.h"
5     #include "DataFormats/Common/interface/Handle.h"
6     #include "FWCore/ServiceRegistry/interface/Service.h"
7     #include "DataFormats/TrackReco/interface/Track.h"
8     #include "MitAna/DataTree/interface/Electron.h"
9     #include "DataFormats/TrackReco/interface/TrackFwd.h"
10    
11    
12     #include "MitAna/DataTree/interface/Track.h"
13     #include "MitAna/DataTree/interface/Names.h"
14     #include "MitProd/TreeFiller/interface/FillerConversionElectrons.h"
15    
16     using namespace std;
17     using namespace edm;
18     using namespace mithep;
19    
20     //-------------------------------------------------------------------------------------------------
21     FillerConversionElectrons::FillerConversionElectrons(const edm::ParameterSet& cfg, bool active, const mithep::TrackCol* conversionInOutTracks, const mithep::TrackCol* conversionOutInTracks, const mithep::TrackMap* conversionInOutTrackMap, const mithep::TrackMap* conversionOutInTrackMap) :
22     BaseFiller(cfg, "ConversionElectrons", active),
23     mitName_(Conf().getUntrackedParameter<string>("mitName","")),
24     conversionElectrons_(new mithep::ElectronArr),
25     convElectronMap_(new mithep::ConversionElectronMap),
26     conversionInOutTracks_(conversionInOutTracks),
27     conversionOutInTracks_(conversionOutInTracks),
28     conversionInOutTrackMap_(conversionInOutTrackMap),
29     conversionOutInTrackMap_(conversionOutInTrackMap)
30     {
31     }
32    
33     //-------------------------------------------------------------------------------------------------
34     FillerConversionElectrons::~FillerConversionElectrons()
35     {
36     delete convElectronMap_;
37     }
38    
39     //-------------------------------------------------------------------------------------------------
40     void FillerConversionElectrons::BookDataBlock(TreeWriter &tws)
41     {
42     tws.AddBranch(mitName_.c_str(),&conversionElectrons_);
43     }
44    
45     //-------------------------------------------------------------------------------------------------
46     void FillerConversionElectrons::FillDataBlock(const edm::Event &event,
47     const edm::EventSetup &setup)
48     {
49     // Fill global muon information. Links to the various standalone components are created in the
50     // link resolution.
51    
52     conversionElectrons_->Reset();
53     convElectronMap_->Reset();
54     FillFromTracks(conversionInOutTracks_, conversionInOutTrackMap_);
55     FillFromTracks(conversionOutInTracks_, conversionOutInTrackMap_);
56     conversionElectrons_->Trim();
57    
58    
59     }
60    
61     void FillerConversionElectrons::FillFromTracks(const mithep::TrackCol* tracks, const TrackMap* trackMap) {
62     for (UInt_t i=0; i<tracks->GetEntries(); i++) {
63     mithep::Track* track = (Track*)tracks->At(i);
64     mithep::Electron* electron = conversionElectrons_->AddNew();
65     electron->SetTrackerTrack(track);
66     convElectronMap_->Add(trackMap->GetEdmRef(track), electron);
67     }
68     }
69    
70