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 164 of file PrimaryVertexResolution.cc.

Constructor & Destructor Documentation

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

Definition at line 166 of file PrimaryVertexResolution.cc.

Member Function Documentation

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

Definition at line 175 of file PrimaryVertexResolution.cc.

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

175  {
176  const auto binsResol = binningY_.binsResol_;
177  const auto maxResol = binningY_.maxResol_;
178  hDiffX_ = iBooker.book2D("res_x_vs_" + postfix_,
179  "Resolution of X vs. " + postfix_,
180  std::forward<Args>(args)...,
181  binsResol,
182  -maxResol,
183  maxResol);
184  hDiffY_ = iBooker.book2D("res_y_vs_" + postfix_,
185  "Resolution of Y vs. " + postfix_,
186  std::forward<Args>(args)...,
187  binsResol,
188  -maxResol,
189  maxResol);
190  hDiffZ_ = iBooker.book2D("res_z_vs_" + postfix_,
191  "Resolution of Z vs. " + postfix_,
192  std::forward<Args>(args)...,
193  binsResol,
194  -maxResol,
195  maxResol);
196 
197  const auto binsPull = binningY_.binsPull_;
198  const auto maxPull = binningY_.maxPull_;
199  hPullX_ = iBooker.book2D("pull_x_vs_" + postfix_,
200  "Pull of X vs. " + postfix_,
201  std::forward<Args>(args)...,
202  binsPull,
203  -maxPull,
204  maxPull);
205  hPullY_ = iBooker.book2D("pull_y_vs_" + postfix_,
206  "Pull of Y vs. " + postfix_,
207  std::forward<Args>(args)...,
208  binsPull,
209  -maxPull,
210  maxPull);
211  hPullZ_ = iBooker.book2D("pull_z_vs_" + postfix_,
212  "Pull of Z vs. " + postfix_,
213  std::forward<Args>(args)...,
214  binsPull,
215  -maxPull,
216  maxPull);
217  }
template<typename T >
void PrimaryVertexResolution::DiffPlots::bookLogX ( DQMStore::IBooker iBooker,
const T binArray 
)
inline

Definition at line 169 of file PrimaryVertexResolution.cc.

169  {
170  book(iBooker, binArray.size() - 1, binArray.front(), binArray.back());
171  setLogX(binArray.size() - 1, binArray.data());
172  }
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 219 of file PrimaryVertexResolution.cc.

References writedatasetfile::args.

219  {
220  hDiffX_->getTH2F()->GetXaxis()->Set(std::forward<Args>(args)...);
221  hDiffY_->getTH2F()->GetXaxis()->Set(std::forward<Args>(args)...);
222  hDiffZ_->getTH2F()->GetXaxis()->Set(std::forward<Args>(args)...);
223 
224  hPullX_->getTH2F()->GetXaxis()->Set(std::forward<Args>(args)...);
225  hPullY_->getTH2F()->GetXaxis()->Set(std::forward<Args>(args)...);
226  hPullZ_->getTH2F()->GetXaxis()->Set(std::forward<Args>(args)...);
227  }

Member Data Documentation

const BinningY& PrimaryVertexResolution::DiffPlots::binningY_
private

Definition at line 241 of file PrimaryVertexResolution.cc.

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

Definition at line 242 of file PrimaryVertexResolution.cc.

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

Definition at line 243 of file PrimaryVertexResolution.cc.

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

Definition at line 244 of file PrimaryVertexResolution.cc.

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

Definition at line 245 of file PrimaryVertexResolution.cc.

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

Definition at line 246 of file PrimaryVertexResolution.cc.

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

Definition at line 247 of file PrimaryVertexResolution.cc.

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

Definition at line 240 of file PrimaryVertexResolution.cc.