ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitProd/TreeFiller/src/FillerBeamSpot.cc
Revision: 1.4
Committed: Mon Jun 15 15:00:25 2009 UTC (15 years, 10 months ago) by loizides
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_011, Mit_010a, Mit_010, Mit_009c, Mit_009b
Changes since 1.3: +4 -4 lines
Log Message:
Added proper fwd defs plus split up complilation of MitAna/DataTree LinkDefs.

File Contents

# User Rev Content
1 loizides 1.4 // $Id: FillerBeamSpot.cc,v 1.3 2009/03/15 11:20:41 loizides Exp $
2 bendavid 1.1
3     #include "MitProd/TreeFiller/interface/FillerBeamSpot.h"
4 loizides 1.4 #include "DataFormats/BeamSpot/interface/BeamSpot.h"
5     #include "MitAna/DataTree/interface/BeamSpotCol.h"
6 bendavid 1.1 #include "MitAna/DataTree/interface/Names.h"
7 loizides 1.4 #include "MitProd/ObjectService/interface/ObjectService.h"
8 bendavid 1.1
9     using namespace std;
10     using namespace edm;
11     using namespace mithep;
12    
13     //--------------------------------------------------------------------------------------------------
14     FillerBeamSpot::FillerBeamSpot(const ParameterSet &cfg, const char *name, bool active) :
15     BaseFiller(cfg,name,active),
16     edmName_(Conf().getUntrackedParameter<string>("edmName","offlineBeamSpot")),
17     mitName_(Conf().getUntrackedParameter<string>("mitName","BeamSpot")),
18 loizides 1.2 beamSpots_(new mithep::BeamSpotArr)
19 bendavid 1.1 {
20     // Constructor.
21     }
22    
23     //--------------------------------------------------------------------------------------------------
24     FillerBeamSpot::~FillerBeamSpot()
25     {
26     // Destructor.
27    
28 loizides 1.2 delete beamSpots_;
29 bendavid 1.1 }
30    
31     //--------------------------------------------------------------------------------------------------
32     void FillerBeamSpot::BookDataBlock(TreeWriter &tws)
33     {
34     // Add Vertex branch and the VertexMap to tree.
35    
36 loizides 1.3 tws.AddBranch(mitName_,&beamSpots_);
37     OS()->add<mithep::BeamSpotArr>(beamSpots_,mitName_);
38 bendavid 1.1 }
39    
40     //--------------------------------------------------------------------------------------------------
41     void FillerBeamSpot::FillDataBlock(const edm::Event &event,
42     const edm::EventSetup &setup)
43     {
44     // Fill the BeamSpot branch.
45    
46 loizides 1.2 beamSpots_->Delete();
47    
48 bendavid 1.1 Handle<reco::BeamSpot> hBeamSpotProduct;
49     GetProduct(edmName_, hBeamSpotProduct, event);
50     const reco::BeamSpot *inBeamSpot = hBeamSpotProduct.product();
51    
52 loizides 1.2 mithep::BeamSpot *bs = beamSpots_->AddNew();
53     bs->SetErrors(inBeamSpot->x0Error(),inBeamSpot->y0Error(),inBeamSpot->z0Error());
54     bs->SetPosition(inBeamSpot->x0(),inBeamSpot->y0(),inBeamSpot->z0());
55 bendavid 1.1 }