59 useNewLHCInfo_(iConfig.getParameter<
bool>(
"useNewLHCInfo")),
60 outputFile_(iConfig.getParameter<
string>(
"outputFile")),
62 h_beamEnergy_(new TH1D(
"h_beamEnergy",
";beam energy (GeV)", 81, -50., 8050.)),
63 h_xangle_(new TH1D(
"h_xangle",
";(half) crossing angle (#murad)", 201, -0.5, 200.5)),
64 h_betaStar_(new TH1D(
"h_betaStar",
";#beta^{*} (m)", 101, -0.005, 1.005)),
65 h2_betaStar_vs_xangle_(new TH2D(
"h2_betaStar_vs_xangle",
66 ";(half) crossing angle (#murad);#beta^{*} (m)",
74 h_fill_(new TH1D(
"h_fill",
";fill", 4001, 3999.5, 8000.5)),
75 h_run_(new TH1D(
"h_run",
";run", 6000, 270E3, 330E3)) {}
82 desc.add<
std::string>(
"lhcInfoLabel",
"")->setComment(
"label of the LHCInfo record");
83 desc.add<
std::string>(
"lhcInfoPerLSLabel",
"")->setComment(
"label of the LHCInfoPerLS record");
84 desc.add<
std::string>(
"lhcInfoPerFillLabel",
"")->setComment(
"label of the LHCInfoPerFill record");
85 desc.add<
bool>(
"useNewLHCInfo",
false)->setComment(
"flag whether to use new LHCInfoPer* records or old LHCInfo");
89 descriptions.
add(
"ctppsLHCInfoPlotterDefault",
desc);
112 auto f_out = std::make_unique<TFile>(
outputFile_.c_str(),
"recreate");
void analyze(const edm::Event &, const edm::EventSetup &) override
float crossingAngle() const
CTPPSLHCInfoPlotter(const edm::ParameterSet &)
const edm::ESGetToken< LHCInfoPerLS, LHCInfoPerLSRcd > lhcInfoPerLSToken_
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
#define DEFINE_FWK_MODULE(type)
const bool useNewLHCInfo_
const edm::ESGetToken< LHCInfo, LHCInfoRcd > lhcInfoToken_
TH2D * h2_betaStar_vs_xangle_
void add(std::string const &label, ParameterSetDescription const &psetDescription)
const edm::ESGetToken< LHCInfoPerFill, LHCInfoPerFillRcd > lhcInfoPerFillToken_
unsigned short fillNumber