CMS 3D CMS Logo

Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Attributes | Static Private Attributes

EcalSrFlag Class Reference

#include <EcalSrFlag.h>

Inheritance diagram for EcalSrFlag:
EBSrFlag EESrFlag

List of all members.

Public Member Functions

std::string flagName () const
virtual const DetIdid () const =0
 operator int () const
void setValue (const int &flag)
int value () const
virtual ~EcalSrFlag ()

Static Public Member Functions

static std::string flagName (const int &flag)

Static Public Attributes

static const int SRF_FORCED_MASK = 0x4
static const int SRF_FULL = 3
static const int SRF_SUPPRESS = 0
static const int SRF_ZS1 = 1
static const int SRF_ZS2 = 2

Protected Attributes

unsigned char flag_

Static Private Attributes

static const char * srfNames []

Detailed Description

Base class for Selective Readout Flag (SR flag or SRF).

Definition at line 11 of file EcalSrFlag.h.


Constructor & Destructor Documentation

virtual EcalSrFlag::~EcalSrFlag ( ) [inline, virtual]

Destructor

Definition at line 35 of file EcalSrFlag.h.

{};    

Member Function Documentation

static std::string EcalSrFlag::flagName ( const int &  flag) [inline, static]

Return a human readable flag name from its integer value.

Parameters:
flagthe flag value
Returns:
the human readable string (which can contain space).

Definition at line 63 of file EcalSrFlag.h.

References srfNames.

Referenced by operator<<().

                                            {
    return (flag==(flag&0x7))?srfNames[flag]:"Invalid";
  }
std::string EcalSrFlag::flagName ( ) const [inline]

Return a human readable flag name from the flag value.

Returns:
the human readable string (which can contain space).

Definition at line 70 of file EcalSrFlag.h.

References flag_.

                            {
    return flagName(flag_);
  }
virtual const DetId& EcalSrFlag::id ( ) const [pure virtual]

Gets the Det Id the flag is associated to.

Returns:
the det id of the readout unit (a barrel TT or a SC).

Implemented in EBSrFlag, and EESrFlag.

Referenced by EcalDigiToRaw::produce().

EcalSrFlag::operator int ( ) const [inline]

Cast to int: same as value().

Returns:
the SR flag value

Definition at line 55 of file EcalSrFlag.h.

References flag_.

                      {
    return flag_;
  }
void EcalSrFlag::setValue ( const int &  flag) [inline]

Set the SR flag value. See SRF_XXX constants.

Parameters:
flagnew flag value. Must be between 0 and 7.

Definition at line 50 of file EcalSrFlag.h.

References flag_.

{ flag_ = (unsigned char) flag; }
int EcalSrFlag::value ( ) const [inline]

SR flag value. See SRF_XXX constants.

Returns:
the flag value

Definition at line 45 of file EcalSrFlag.h.

References flag_.

Referenced by EcalSelectiveReadoutValidation::analyzeEB(), EcalSelectiveReadoutValidation::analyzeEE(), EcalSimRawData::getSrfs(), operator<<(), EcalSelectiveReadoutProducer::printSrFlags(), and EcalDigiToRaw::produce().

{ return flag_;}

Member Data Documentation

unsigned char EcalSrFlag::flag_ [protected]

The SRP flag.

Definition at line 77 of file EcalSrFlag.h.

Referenced by EBSrFlag::EBSrFlag(), EESrFlag::EESrFlag(), flagName(), operator int(), setValue(), and value().

const int EcalSrFlag::SRF_FORCED_MASK = 0x4 [static]

Mask for the 'forced' bit which is set when the decision was forced by an error condition or by configuration.

E.g., a force full readout flag has value SRF_FORCED_MASK|SRF_FULL

Definition at line 30 of file EcalSrFlag.h.

Referenced by EESelectiveReadoutTask::analyze(), EBSelectiveReadoutTask::analyze(), EcalSelectiveReadoutValidation::analyzeEB(), EcalSelectiveReadoutValidation::analyzeEE(), and EcalDetIdToBeRecoveredProducer::produce().

const int EcalSrFlag::SRF_FULL = 3 [static]
const int EcalSrFlag::SRF_SUPPRESS = 0 [static]

SRP flag for suppression of every channel of the readout unit.

Definition at line 16 of file EcalSrFlag.h.

const int EcalSrFlag::SRF_ZS1 = 1 [static]
const int EcalSrFlag::SRF_ZS2 = 2 [static]

SRP flag for zero suppression with level 2.

Definition at line 22 of file EcalSrFlag.h.

Referenced by EESelectiveReadoutTask::analyze(), EBSelectiveReadoutTask::analyze(), and EcalSelectiveReadoutValidation::checkSrApplication().

const char * EcalSrFlag::srfNames [static, private]
Initial value:
 {
  "Suppress",           
  "Zs1",                
  "Zs2",                
  "Full Readout",       
  "Forced Suppress",    
  "Forced Zs1",   
  "Forced Zs2",   
  "Forced Full Readout" 
}

Human readable flag value names

Definition at line 82 of file EcalSrFlag.h.

Referenced by flagName().