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 11 of file HFPhase1PMTData.h.

Member Typedef Documentation

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

Definition at line 26 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 15 of file HFPhase1PMTData.h.

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

Constructor & Destructor Documentation

HFPhase1PMTData::HFPhase1PMTData ( )
inline

Definition at line 29 of file HFPhase1PMTData.h.

30  : 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 33 of file HFPhase1PMTData.h.

35  : cuts_(cutShapes), minCharge0_(charge0),
36  minCharge1_(charge1), minChargeAsymm_(minQAsymm) {}

Member Function Documentation

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

Definition at line 39 of file HFPhase1PMTData.h.

References cuts_.

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

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

Definition at line 46 of file HFPhase1PMTData.h.

References minCharge0_.

Referenced by HFFlexibleTimeCheck::determineAnodeStatus().

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

Definition at line 47 of file HFPhase1PMTData.h.

References minCharge1_.

Referenced by HFFlexibleTimeCheck::determineAnodeStatus().

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

Definition at line 50 of file HFPhase1PMTData.h.

References minChargeAsymm_.

Referenced by HFFlexibleTimeCheck::reconstruct().

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

Definition at line 67 of file HFPhase1PMTData.h.

References alignCSCRings::r.

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

Definition at line 53 of file HFPhase1PMTData.h.

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

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

Definition at line 79 of file HFPhase1PMTData.h.

References minChargeAsymm_.

Friends And Related Function Documentation

friend class boost::serialization::access
friend

Definition at line 76 of file HFPhase1PMTData.h.

Member Data Documentation

Cuts HFPhase1PMTData::cuts_
private

Definition at line 71 of file HFPhase1PMTData.h.

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

float HFPhase1PMTData::minCharge0_
private

Definition at line 72 of file HFPhase1PMTData.h.

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

float HFPhase1PMTData::minCharge1_
private

Definition at line 73 of file HFPhase1PMTData.h.

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

float HFPhase1PMTData::minChargeAsymm_
private

Definition at line 74 of file HFPhase1PMTData.h.

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