CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
PrimaryVertexResolution::DiffPlots Class Reference

Public Member Functions

template<typename... Args>
void book (DQMStore::IBooker &iBooker, Args &&...args)
 
template<typename T >
void bookLogX (DQMStore::IBooker &iBooker, const T &binArray)
 
 DiffPlots (const std::string &postfix, const BinningY &binY)
 
template<typename T >
void fill (const Resolution &res, const T ref)
 
template<typename... Args>
void setLogX (Args &&...args)
 

Private Attributes

const BinningYbinningY_
 
MonitorElementhDiffX_ = 0
 
MonitorElementhDiffY_ = 0
 
MonitorElementhDiffZ_ = 0
 
MonitorElementhPullX_ = 0
 
MonitorElementhPullY_ = 0
 
MonitorElementhPullZ_ = 0
 
std::string postfix_
 

Detailed Description

Definition at line 147 of file PrimaryVertexResolution.cc.

Constructor & Destructor Documentation

PrimaryVertexResolution::DiffPlots::DiffPlots ( const std::string &  postfix,
const BinningY binY 
)
inlineexplicit

Definition at line 149 of file PrimaryVertexResolution.cc.

Member Function Documentation

template<typename... Args>
void PrimaryVertexResolution::DiffPlots::book ( DQMStore::IBooker iBooker,
Args &&...  args 
)
inline

Definition at line 161 of file PrimaryVertexResolution.cc.

References writedatasetfile::args, PrimaryVertexResolution::binningY_, PrimaryVertexResolution::BinningY::binsPull_, PrimaryVertexResolution::BinningY::binsResol_, DQMStore::IBooker::book2D(), PrimaryVertexResolution::BinningY::maxPull_, and PrimaryVertexResolution::BinningY::maxResol_.

161  {
162  const auto binsResol = binningY_.binsResol_;
163  const auto maxResol = binningY_.maxResol_;
164  hDiffX_ = iBooker.book2D("res_x_vs_"+postfix_, "Resolution of X vs. "+postfix_, std::forward<Args>(args)..., binsResol,-maxResol,maxResol);
165  hDiffY_ = iBooker.book2D("res_y_vs_"+postfix_, "Resolution of Y vs. "+postfix_, std::forward<Args>(args)..., binsResol,-maxResol,maxResol);
166  hDiffZ_ = iBooker.book2D("res_z_vs_"+postfix_, "Resolution of Z vs. "+postfix_, std::forward<Args>(args)..., binsResol,-maxResol,maxResol);
167 
168  const auto binsPull = binningY_.binsPull_;
169  const auto maxPull = binningY_.maxPull_;
170  hPullX_ = iBooker.book2D("pull_x_vs_"+postfix_, "Pull of X vs. "+postfix_, std::forward<Args>(args)..., binsPull,-maxPull,maxPull);
171  hPullY_ = iBooker.book2D("pull_y_vs_"+postfix_, "Pull of Y vs. "+postfix_, std::forward<Args>(args)..., binsPull,-maxPull,maxPull);
172  hPullZ_ = iBooker.book2D("pull_z_vs_"+postfix_, "Pull of Z vs. "+postfix_, std::forward<Args>(args)..., binsPull,-maxPull,maxPull);
173  }
MonitorElement * book2D(Args &&...args)
Definition: DQMStore.h:109
template<typename T >
void PrimaryVertexResolution::DiffPlots::bookLogX ( DQMStore::IBooker iBooker,
const T binArray 
)
inline

Definition at line 155 of file PrimaryVertexResolution.cc.

155  {
156  book(iBooker, binArray.size()-1, binArray.front(), binArray.back());
157  setLogX(binArray.size()-1, binArray.data());
158  }
void book(DQMStore::IBooker &iBooker, Args &&...args)
template<typename T >
void PrimaryVertexResolution::DiffPlots::fill ( const Resolution res,
const T  ref 
)
inline
template<typename... Args>
void PrimaryVertexResolution::DiffPlots::setLogX ( Args &&...  args)
inline

Definition at line 175 of file PrimaryVertexResolution.cc.

References writedatasetfile::args.

175  {
176  hDiffX_->getTH2F()->GetXaxis()->Set(std::forward<Args>(args)...);
177  hDiffY_->getTH2F()->GetXaxis()->Set(std::forward<Args>(args)...);
178  hDiffZ_->getTH2F()->GetXaxis()->Set(std::forward<Args>(args)...);
179 
180  hPullX_->getTH2F()->GetXaxis()->Set(std::forward<Args>(args)...);
181  hPullY_->getTH2F()->GetXaxis()->Set(std::forward<Args>(args)...);
182  hPullZ_->getTH2F()->GetXaxis()->Set(std::forward<Args>(args)...);
183  }
TH2F * getTH2F() const

Member Data Documentation

const BinningY& PrimaryVertexResolution::DiffPlots::binningY_
private

Definition at line 197 of file PrimaryVertexResolution.cc.

MonitorElement* PrimaryVertexResolution::DiffPlots::hDiffX_ = 0
private

Definition at line 198 of file PrimaryVertexResolution.cc.

MonitorElement* PrimaryVertexResolution::DiffPlots::hDiffY_ = 0
private

Definition at line 199 of file PrimaryVertexResolution.cc.

MonitorElement* PrimaryVertexResolution::DiffPlots::hDiffZ_ = 0
private

Definition at line 200 of file PrimaryVertexResolution.cc.

MonitorElement* PrimaryVertexResolution::DiffPlots::hPullX_ = 0
private

Definition at line 201 of file PrimaryVertexResolution.cc.

MonitorElement* PrimaryVertexResolution::DiffPlots::hPullY_ = 0
private

Definition at line 202 of file PrimaryVertexResolution.cc.

MonitorElement* PrimaryVertexResolution::DiffPlots::hPullZ_ = 0
private

Definition at line 203 of file PrimaryVertexResolution.cc.

std::string PrimaryVertexResolution::DiffPlots::postfix_
private

Definition at line 196 of file PrimaryVertexResolution.cc.