CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
myRawAna.cc
Go to the documentation of this file.
1 // myRawAna.cc
2 // Description: Access raw data, specifically event fragment size per FED
3 // Author: Jim Hirschauer
4 // Date: 28 - July - 2009
5 //
7 
11 
13 
15 #include <TROOT.h>
16 #include <TSystem.h>
17 #include <TFile.h>
18 #include <TCanvas.h>
19 #include <cmath>
20 
21 using namespace edm;
22 using namespace reco;
23 using namespace std;
24 
25 #define DEBUG 1
26 #define MAXJETS 100
27 
28 // Nothing passed from .cfg yet, but I leave the syntax here for
29 // future reference.
30 
32 }
33 
34 
35 // ************************
36 // ************************
37 
39 
41 
42  fedSize = fs->make<TH2F>( "fedSize", "fedSize", 901, -0.5, 900.5, 20000, 0., 20000. );
43  totFedSize = fs->make<TH1F>( "totFedSize", "totFedSize", 200, 0., 20000. );
44 
45 
46 }
47 
48 // ************************
49 // ************************
50 void myRawAna::analyze( const edm::Event& evt, const edm::EventSetup& es ) {
51 
52  // **************************************************************
53  // ** Access FED Information
54  // **************************************************************
55 
56 
58  bool getFed = evt.getByLabel("source", theRaw);
59 
60  if ( ! getFed ) {
61  std::cout << "fedRawData not available" << std::endl;
62  } else { // got the fed raw data
63  unsigned int totalFEDsize = 0 ;
64 
65  // HCAL FEDs are 700-730
66  unsigned int fedStart_ = 0;
67  unsigned int fedStop_ = 900;
68 
69  for (unsigned int i=fedStart_; i<=fedStop_; ++i) {
70  fedSize->Fill(i,theRaw->FEDData(i).size());
71  totalFEDsize += theRaw->FEDData(i).size() ;
72  }
73  totFedSize->Fill(totalFEDsize);
74  }
75 
76 
77 }
78 
79 // ***********************************
80 // ***********************************
82 
83 }
int i
Definition: DBlmapReader.cc:9
myRawAna(const edm::ParameterSet &)
Definition: myRawAna.cc:31
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:17
T * make(const Args &...args) const
make new ROOT object
Definition: TFileService.h:64
void beginJob()
Definition: myRawAna.cc:38
void analyze(const edm::Event &, const edm::EventSetup &)
Definition: myRawAna.cc:50
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
Definition: Event.h:390
void endJob()
Definition: myRawAna.cc:81
tuple cout
Definition: gather_cfg.py:121