/***************************************************************************
*
* $Id$
*
* Author: Marcelo Munhoz
***************************************************************************
*
* Description: SVT Hybrid System Test Array BASE class
*
***************************************************************************
*
* $Log$
**************************************************************************/
////////////////////////////////////////////////////////////////////////////
// //
// It is an array of 240 X 128 floats. //
// It can be used to store any pixel data from one hybrid. //
// For instance, the pedestals can be defined as a StSvtHybridPixels. //
// //
////////////////////////////////////////////////////////////////////////////
#include <iostream.h>
#include "StSvtHybridPixels.hh"
ClassImp(StSvtHybridPixels)
StSvtHybridPixels::StSvtHybridPixels(int size, float* x) : StSvtHybrid(), TArrayF(size, x)
{}
StSvtHybridPixels::StSvtHybridPixels(int barrel, int ladder, int wafer, int hybrid) :
StSvtHybrid(barrel, ladder, wafer, hybrid), TArrayF(1)
{
// The same as StSvtHybrid.
mNumberOfAnodes = 240;
mNumberOfTimeBins = 128;
mTotalNumberOfPixels = mNumberOfAnodes*mNumberOfTimeBins;
Set(mTotalNumberOfPixels);
}
StSvtHybridPixels::~StSvtHybridPixels()
{}
StSvtHybridPixels& StSvtHybridPixels::operator = (StSvtHybridPixels& h)
{
float x;
for (int i=0;i<mTotalNumberOfPixels;i++) {
x = h.At(i);
AddAt(x,i);
}
return *this;
}
StSvtHybridPixels& StSvtHybridPixels::operator + (StSvtHybridPixels& h)
{
float x1, x2;
for (int i=0;i<mTotalNumberOfPixels;i++) {
x1 = At(i);
x2 = h.At(i);
AddAt(x1+x2,i);
}
return *this;
}
int StSvtHybridPixels::getPixelIndex(int anode, int time)
{
// Returns an internal index for pixel (anode,time).
// It should be used to store or retrieve a pixel value from this object.
int index;
index = mNumberOfTimeBins*(anode-1) + time;
return index;
}
ROOT page - Class index - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.