62 #include "StTrsSector.hh"
63 #include "StMCTruth.h"
71 for(irow=0; irow< geoDb->numberOfRows(); irow++) {
74 padRow.resize(geoDb->numberOfPadsAtRow(irow+1), timeBins);
75 mSector.push_back(padRow);
87 StTrsSector::~StTrsSector() {}
90 void StTrsSector::clear()
93 for(
unsigned int irow=0; irow<mSector.size(); irow++) {
94 for(
unsigned int ipad=0; ipad<mSector[irow].size(); ipad++) {
95 mSector[irow][ipad].clear();
115 addEntry(coord.row(), coord.pad(), sig);
132 assignTimeBins(coord.row(), coord.pad(), tbins);
135 int StTrsSector::sort()
139 int nrows = mSector.size();
140 for (
int irow=0;irow<nrows;irow++) {
141 int npads = mSector[irow].size();
142 for (
int ipad=0; ipad<npads; ipad++) {
143 tpcTimeBins &tb = mSector[irow][ipad];
146 #if defined( __ICC ) && __ICC < 910
153 assert(jr==ntb || tb[jl].time() <= tb[jr].time());
154 if (jr==ntb || tb[jl].time() < tb[jr].time()) {
155 if (pivo.Size()) {tb[jl].setId(pivo.Get()); pivo.Reset();}
157 jl++;
if (jl != jr) tb[jl] = tb[jr];
160 if (!pivo.Size()) pivo.Add(tb[jl].id(),tb[jl].amplitude());
161 pivo.Add(tb[jr].
id(),tb[jr].amplitude());