CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Classes | Public Member Functions | Private Attributes
GenRunInfoProduct Class Reference

#include <GenRunInfoProduct.h>

Classes

struct  XSec
 

Public Member Functions

double crossSection () const
 
const XSecexternalXSecLO () const
 
const XSecexternalXSecNLO () const
 
double filterEfficiency () const
 
 GenRunInfoProduct ()
 
 GenRunInfoProduct (const GenRunInfoProduct &other)
 
const XSecinternalXSec () const
 
virtual bool isProductEqual (const GenRunInfoProduct &other) const
 
virtual bool mergeProduct (const GenRunInfoProduct &other)
 
void setExternalXSecLO (const XSec &xsec)
 
void setExternalXSecNLO (const XSec &xsec)
 
void setFilterEfficiency (double effic)
 
void setInternalXSec (const XSec &xsec)
 
virtual ~GenRunInfoProduct ()
 

Private Attributes

double externalFilterEfficiency_
 
XSec externalXSecLO_
 
XSec externalXSecNLO_
 
XSec internalXSec_
 

Detailed Description

Definition at line 8 of file GenRunInfoProduct.h.

Constructor & Destructor Documentation

GenRunInfoProduct::GenRunInfoProduct ( )

Definition at line 11 of file GenRunInfoProduct.cc.

11  :
13 {
14 }
double externalFilterEfficiency_
GenRunInfoProduct::GenRunInfoProduct ( const GenRunInfoProduct other)
GenRunInfoProduct::~GenRunInfoProduct ( )
virtual

Definition at line 24 of file GenRunInfoProduct.cc.

25 {
26 }

Member Function Documentation

double GenRunInfoProduct::crossSection ( ) const
inline
const XSec& GenRunInfoProduct::externalXSecLO ( ) const
inline

Definition at line 21 of file GenRunInfoProduct.h.

References externalXSecLO_.

21 { return externalXSecLO_; }
const XSec& GenRunInfoProduct::externalXSecNLO ( ) const
inline

Definition at line 22 of file GenRunInfoProduct.h.

References externalXSecNLO_.

22 { return externalXSecNLO_; }
double GenRunInfoProduct::filterEfficiency ( ) const
inline

Definition at line 23 of file GenRunInfoProduct.h.

References externalFilterEfficiency_.

23 { return externalFilterEfficiency_; }
double externalFilterEfficiency_
const XSec& GenRunInfoProduct::internalXSec ( ) const
inline

Definition at line 20 of file GenRunInfoProduct.h.

References internalXSec_.

20 { return internalXSec_; }
bool GenRunInfoProduct::isProductEqual ( const GenRunInfoProduct other) const
virtual
bool GenRunInfoProduct::mergeProduct ( const GenRunInfoProduct other)
virtual

Definition at line 28 of file GenRunInfoProduct.cc.

References externalFilterEfficiency_, externalXSecLO_, and externalXSecNLO_.

29 {
30  // if external xsec and filter efficiency are identical we allow merging
31  // unfortunately we cannot merge on-the-fly xsec, as we do not have
32  // information about the corresponding statistics (i.e. uncertainty)
33  // so we just ignore it.
34  // So in the end this merger is a dummy (just a safety check)
35 
36  if (externalXSecLO_ == other.externalXSecLO_ &&
39  return true;
40 
41  edm::LogWarning("GenRunInfoProduct|ProductsNotMergeable")
42  << "You are merging runs with different cross-sections and/or "
43  "filter efficiencies (from GenRunInfoProduct)\n"
44  "The resulting cross-section will not be consistent." << std::endl;
45 
46  return true;
47 }
double externalFilterEfficiency_
void GenRunInfoProduct::setExternalXSecLO ( const XSec xsec)
inline
void GenRunInfoProduct::setExternalXSecNLO ( const XSec xsec)
inline
void GenRunInfoProduct::setFilterEfficiency ( double  effic)
inline
void GenRunInfoProduct::setInternalXSec ( const XSec xsec)
inline

Member Data Documentation

double GenRunInfoProduct::externalFilterEfficiency_
private
XSec GenRunInfoProduct::externalXSecLO_
private
XSec GenRunInfoProduct::externalXSecNLO_
private
XSec GenRunInfoProduct::internalXSec_
private

Definition at line 68 of file GenRunInfoProduct.h.

Referenced by crossSection(), internalXSec(), and setInternalXSec().