CMS 3D CMS Logo

Public Member Functions | Protected Member Functions | Protected Attributes | Friends

SiStripCommonModeNoiseSubtractor Class Reference

#include <SiStripCommonModeNoiseSubtractor.h>

Inheritance diagram for SiStripCommonModeNoiseSubtractor:
FastLinearCMNSubtractor IteratedMedianCMNSubtractor MedianCMNSubtractor PercentileCMNSubtractor TT6CMNSubtractor

List of all members.

Public Member Functions

const std::vector< std::pair
< short, float > > & 
getAPVsCM ()
virtual void init (const edm::EventSetup &es)
virtual void subtract (const uint32_t &, std::vector< float > &)=0
virtual void subtract (const uint32_t &, std::vector< int16_t > &)=0
virtual ~SiStripCommonModeNoiseSubtractor ()

Protected Member Functions

template<typename T >
float median (std::vector< T > &)
 SiStripCommonModeNoiseSubtractor ()

Protected Attributes

std::vector< std::pair< short,
float > > 
_vmedians

Friends

class SiStripRawProcessingFactory

Detailed Description

Definition at line 9 of file SiStripCommonModeNoiseSubtractor.h.


Constructor & Destructor Documentation

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

Definition at line 15 of file SiStripCommonModeNoiseSubtractor.h.

{};
SiStripCommonModeNoiseSubtractor::SiStripCommonModeNoiseSubtractor ( ) [inline, protected]

Definition at line 24 of file SiStripCommonModeNoiseSubtractor.h.

{};

Member Function Documentation

const std::vector< std::pair<short,float> >& SiStripCommonModeNoiseSubtractor::getAPVsCM ( ) [inline]

Definition at line 20 of file SiStripCommonModeNoiseSubtractor.h.

References _vmedians.

{return _vmedians;}
virtual void SiStripCommonModeNoiseSubtractor::init ( const edm::EventSetup es) [inline, virtual]

Reimplemented in IteratedMedianCMNSubtractor, and TT6CMNSubtractor.

Definition at line 16 of file SiStripCommonModeNoiseSubtractor.h.

{};
template<typename T >
float SiStripCommonModeNoiseSubtractor::median ( std::vector< T > &  sample) [inline, protected]

Definition at line 36 of file SiStripCommonModeNoiseSubtractor.h.

Referenced by FastLinearCMNSubtractor::subtract_(), and MedianCMNSubtractor::subtract_().

                              {
  typename std::vector<T>::iterator mid = sample.begin() + sample.size()/2;
  std::nth_element(sample.begin(), mid, sample.end());
  if( sample.size() & 1 ) //odd size
    return *mid;
  return ( *std::max_element(sample.begin(), mid) + *mid ) / 2.;
}
virtual void SiStripCommonModeNoiseSubtractor::subtract ( const uint32_t &  ,
std::vector< float > &   
) [pure virtual]
virtual void SiStripCommonModeNoiseSubtractor::subtract ( const uint32_t &  ,
std::vector< int16_t > &   
) [pure virtual]

Friends And Related Function Documentation

friend class SiStripRawProcessingFactory [friend]

Member Data Documentation

std::vector< std::pair<short,float> > SiStripCommonModeNoiseSubtractor::_vmedians [protected]