CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends
HFPhase1PMTData Class Reference

#include <HFPhase1PMTData.h>

Public Types

enum  {
  T_0_MIN = 0, T_0_MAX, T_1_MIN, T_1_MAX,
  ASYMM_MIN, ASYMM_MAX, N_PMT_CUTS
}
 
typedef boost::array< boost::shared_ptr< AbsHcalFunctor >, N_PMT_CUTSCuts
 

Public Member Functions

const AbsHcalFunctorcut (const unsigned which) const
 
 HFPhase1PMTData ()
 
 HFPhase1PMTData (const Cuts &cutShapes, const float charge0, const float charge1, const float minQAsymm)
 
float minCharge0 () const
 
float minCharge1 () const
 
float minChargeAsymm () const
 
bool operator!= (const HFPhase1PMTData &r) const
 
bool operator== (const HFPhase1PMTData &r) const
 

Private Member Functions

template<class Archive >
void serialize (Archive &ar, unsigned)
 

Private Attributes

Cuts cuts_
 
float minCharge0_
 
float minCharge1_
 
float minChargeAsymm_
 

Friends

class boost::serialization::access
 

Detailed Description

Definition at line 15 of file HFPhase1PMTData.h.

Member Typedef Documentation

typedef boost::array<boost::shared_ptr<AbsHcalFunctor>,N_PMT_CUTS> HFPhase1PMTData::Cuts

Definition at line 30 of file HFPhase1PMTData.h.

Member Enumeration Documentation

anonymous enum
Enumerator
T_0_MIN 
T_0_MAX 
T_1_MIN 
T_1_MAX 
ASYMM_MIN 
ASYMM_MAX 
N_PMT_CUTS 

Definition at line 19 of file HFPhase1PMTData.h.

19  {
20  T_0_MIN = 0, // Min time measurement allowed for the first anode,
21  // depending on charge or energy
22  T_0_MAX, // Max time measurement allowed for the first anode
23  T_1_MIN, // Min time measurement allowed for the second anode
24  T_1_MAX, // Max time measurement allowed for the second anode
25  ASYMM_MIN, // Minimum allowed charge (or energy) asymmetry,
26  // depending on charge (or energy)
27  ASYMM_MAX, // Maximum allowed asymmetry
29  };

Constructor & Destructor Documentation

HFPhase1PMTData::HFPhase1PMTData ( )
inline

Definition at line 33 of file HFPhase1PMTData.h.

34  : minCharge0_(0.0), minCharge1_(0.0), minChargeAsymm_(0.0) {}
HFPhase1PMTData::HFPhase1PMTData ( const Cuts cutShapes,
const float  charge0,
const float  charge1,
const float  minQAsymm 
)
inline

Definition at line 37 of file HFPhase1PMTData.h.

39  : cuts_(cutShapes), minCharge0_(charge0),
40  minCharge1_(charge1), minChargeAsymm_(minQAsymm) {}

Member Function Documentation

const AbsHcalFunctor& HFPhase1PMTData::cut ( const unsigned  which) const
inline

Definition at line 43 of file HFPhase1PMTData.h.

References cuts_.

Referenced by HFFlexibleTimeCheck::determineAnodeStatus(), and HFFlexibleTimeCheck::reconstruct().

44  {return *cuts_.at(which);}
def which(cmd)
Definition: eostools.py:335
float HFPhase1PMTData::minCharge0 ( ) const
inline

Definition at line 50 of file HFPhase1PMTData.h.

References minCharge0_.

Referenced by HFFlexibleTimeCheck::determineAnodeStatus().

50 {return minCharge0_;}
float HFPhase1PMTData::minCharge1 ( ) const
inline

Definition at line 51 of file HFPhase1PMTData.h.

References minCharge1_.

Referenced by HFFlexibleTimeCheck::determineAnodeStatus().

51 {return minCharge1_;}
float HFPhase1PMTData::minChargeAsymm ( ) const
inline

Definition at line 54 of file HFPhase1PMTData.h.

References minChargeAsymm_.

Referenced by HFFlexibleTimeCheck::reconstruct().

54 {return minChargeAsymm_;}
bool HFPhase1PMTData::operator!= ( const HFPhase1PMTData r) const
inline

Definition at line 71 of file HFPhase1PMTData.h.

References alignCSCRings::r.

72  {return !(*this == r);}
bool HFPhase1PMTData::operator== ( const HFPhase1PMTData r) const
inline

Definition at line 57 of file HFPhase1PMTData.h.

References cuts_, mps_fire::i, minCharge0_, minCharge1_, minChargeAsymm_, and N_PMT_CUTS.

58  {
59  if (minCharge0_ != r.minCharge0_)
60  return false;
61  if (minCharge1_ != r.minCharge1_)
62  return false;
64  return false;
65  for (unsigned i=0; i<N_PMT_CUTS; ++i)
66  if (!(*cuts_[i] == *r.cuts_[i]))
67  return false;
68  return true;
69  }
template<class Archive >
void HFPhase1PMTData::serialize ( Archive &  ar,
unsigned   
)
inlineprivate

Definition at line 83 of file HFPhase1PMTData.h.

References minChargeAsymm_.

Friends And Related Function Documentation

friend class boost::serialization::access
friend

Definition at line 80 of file HFPhase1PMTData.h.

Member Data Documentation

Cuts HFPhase1PMTData::cuts_
private

Definition at line 75 of file HFPhase1PMTData.h.

Referenced by cut(), and operator==().

float HFPhase1PMTData::minCharge0_
private

Definition at line 76 of file HFPhase1PMTData.h.

Referenced by minCharge0(), and operator==().

float HFPhase1PMTData::minCharge1_
private

Definition at line 77 of file HFPhase1PMTData.h.

Referenced by minCharge1(), and operator==().

float HFPhase1PMTData::minChargeAsymm_
private

Definition at line 78 of file HFPhase1PMTData.h.

Referenced by minChargeAsymm(), operator==(), and serialize().