Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
RecoJets
JetAnalyzers
src
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
//
6
#include "
RecoJets/JetAnalyzers/interface/myRawAna.h
"
7
8
#include "
DataFormats/Common/interface/Handle.h
"
9
#include "
DataFormats/Candidate/interface/Candidate.h
"
10
#include "
FWCore/Framework/interface/Event.h
"
11
12
#include "
DataFormats/FEDRawData/interface/FEDRawDataCollection.h
"
13
14
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
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
31
myRawAna::myRawAna
(
const
ParameterSet
&
cfg
) {}
32
33
// ************************
34
// ************************
35
36
void
myRawAna::beginJob
() {
37
edm::Service<TFileService>
fs;
38
39
fedSize = fs->
make
<TH2F>(
"fedSize"
,
"fedSize"
, 901, -0.5, 900.5, 20000, 0., 20000.);
40
totFedSize = fs->
make
<TH1F>(
"totFedSize"
,
"totFedSize"
, 200, 0., 20000.);
41
}
42
43
// ************************
44
// ************************
45
void
myRawAna::analyze
(
const
edm::Event
& evt,
const
edm::EventSetup
& es) {
46
// **************************************************************
47
// ** Access FED Information
48
// **************************************************************
49
50
edm::Handle<FEDRawDataCollection>
theRaw;
51
bool
getFed = evt.
getByLabel
(
"source"
, theRaw);
52
53
if
(!getFed) {
54
std::cout
<<
"fedRawData not available"
<< std::endl;
55
}
else
{
// got the fed raw data
56
unsigned
int
totalFEDsize = 0;
57
58
// HCAL FEDs are 700-730
59
unsigned
int
fedStart_ = 0;
60
unsigned
int
fedStop_ = 900;
61
62
for
(
unsigned
int
i
= fedStart_;
i
<= fedStop_; ++
i
) {
63
fedSize->Fill(
i
, theRaw->FEDData(
i
).size());
64
totalFEDsize += theRaw->FEDData(
i
).size();
65
}
66
totFedSize->Fill(totalFEDsize);
67
}
68
}
69
70
// ***********************************
71
// ***********************************
72
void
myRawAna::endJob
() {}
73
#include "
FWCore/Framework/interface/MakerMacros.h
"
74
DEFINE_FWK_MODULE
(
myRawAna
);
myRawAna::myRawAna
myRawAna(const edm::ParameterSet &)
Definition:
myRawAna.cc:31
looper.cfg
tuple cfg
Definition:
looper.py:296
mps_fire.i
i
Definition:
mps_fire.py:428
edm::Service< TFileService >
DEFINE_FWK_MODULE
#define DEFINE_FWK_MODULE(type)
Definition:
MakerMacros.h:16
Event.h
MakerMacros.h
edm::Handle< FEDRawDataCollection >
myRawAna::beginJob
void beginJob() override
Definition:
myRawAna.cc:36
myRawAna.h
FEDRawDataCollection.h
TFileService::make
T * make(const Args &...args) const
make new ROOT object
Definition:
TFileService.h:64
dt_dqm_sourceclient_common_cff.reco
tuple reco
Definition:
dt_dqm_sourceclient_common_cff.py:111
myRawAna
Definition:
myRawAna.h:21
ParameterSet.h
Candidate.h
edm::EventSetup
Definition:
EventSetup.h:59
edm::Event::getByLabel
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
Definition:
Event.h:500
myRawAna::endJob
void endJob() override
Definition:
myRawAna.cc:72
edm::ParameterSet
Definition:
ParameterSet.h:47
gather_cfg.cout
tuple cout
Definition:
gather_cfg.py:144
myRawAna::analyze
void analyze(const edm::Event &, const edm::EventSetup &) override
Definition:
myRawAna.cc:45
edm::Event
Definition:
Event.h:73
Handle.h
Generated for CMSSW Reference Manual by
1.8.5