CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Public Attributes | Static Public Attributes
MTDClusterizerBase::AccretionCluster Struct Reference

#include <MTDClusterizerBase.h>

Public Types

typedef unsigned short UShort
 

Public Member Functions

bool add (FTLCluster::FTLHitPos const &p, float const ienergy, float const itime, float const itimeError)
 
bool empty ()
 
void pop ()
 
UShort top () const
 

Public Attributes

unsigned int curr =0
 
std::array< float, MAXSIZEenergy
 
unsigned int isize =0
 
std::array< float, MAXSIZEtime
 
std::array< float, MAXSIZEtimeError
 
std::array< UShort, MAXSIZEx
 
UShort xmin =16000
 
std::array< UShort, MAXSIZEy
 
UShort ymin =16000
 

Static Public Attributes

static UShort MAXSIZE = 256
 

Detailed Description

Definition at line 36 of file MTDClusterizerBase.h.

Member Typedef Documentation

Definition at line 37 of file MTDClusterizerBase.h.

Member Function Documentation

bool MTDClusterizerBase::AccretionCluster::add ( FTLCluster::FTLHitPos const &  p,
float const  ienergy,
float const  itime,
float const  itimeError 
)
inline

Definition at line 56 of file MTDClusterizerBase.h.

References FTLCluster::FTLHitPos::col(), isize, min(), and FTLCluster::FTLHitPos::row().

Referenced by MTDThresholdClusterizer::make_cluster(), and counter.Counter::register().

56  {
57  if (isize==MAXSIZE) return false;
58  xmin=std::min(xmin,(unsigned short)(p.row()));
59  ymin=std::min(ymin,(unsigned short)(p.col()));
60  energy[isize]=ienergy;
61  time[isize]=itime;
62  timeError[isize]=itimeError;
63  x[isize]=p.row();
64  y[isize]=p.col();
65  isize++;
66  return true;
67  }
std::array< float, MAXSIZE > time
std::array< float, MAXSIZE > timeError
std::array< UShort, MAXSIZE > y
T min(T a, T b)
Definition: MathUtil.h:58
std::array< float, MAXSIZE > energy
std::array< UShort, MAXSIZE > x
bool MTDClusterizerBase::AccretionCluster::empty ( void  )
inline

Definition at line 54 of file MTDClusterizerBase.h.

References isize.

Referenced by MTDThresholdClusterizer::make_cluster().

void MTDClusterizerBase::AccretionCluster::pop ( )
inline

Definition at line 53 of file MTDClusterizerBase.h.

References curr.

Referenced by MTDThresholdClusterizer::make_cluster().

UShort MTDClusterizerBase::AccretionCluster::top ( ) const
inline

Definition at line 52 of file MTDClusterizerBase.h.

References curr.

Referenced by MTDThresholdClusterizer::make_cluster().

52 { return curr;}

Member Data Documentation

unsigned int MTDClusterizerBase::AccretionCluster::curr =0

Definition at line 49 of file MTDClusterizerBase.h.

Referenced by pop(), and top().

std::array<float,MAXSIZE> MTDClusterizerBase::AccretionCluster::energy
unsigned int MTDClusterizerBase::AccretionCluster::isize =0

Definition at line 48 of file MTDClusterizerBase.h.

Referenced by add(), empty(), and MTDThresholdClusterizer::make_cluster().

UShort MTDClusterizerBase::AccretionCluster::MAXSIZE = 256
static

Definition at line 38 of file MTDClusterizerBase.h.

std::array<float,MAXSIZE> MTDClusterizerBase::AccretionCluster::time

Definition at line 41 of file MTDClusterizerBase.h.

Referenced by MTDThresholdClusterizer::make_cluster().

std::array<float,MAXSIZE> MTDClusterizerBase::AccretionCluster::timeError

Definition at line 42 of file MTDClusterizerBase.h.

Referenced by MTDThresholdClusterizer::make_cluster().

std::array<UShort,MAXSIZE> MTDClusterizerBase::AccretionCluster::x
UShort MTDClusterizerBase::AccretionCluster::xmin =16000
std::array<UShort,MAXSIZE> MTDClusterizerBase::AccretionCluster::y
UShort MTDClusterizerBase::AccretionCluster::ymin =16000