ROOT logo
/**************************************************************************
 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/

/* $Id$ */

///////////////////////////////////////////////////////////////////////////////
//                                                                           //
//  General container for data from TRD detector segments                    //
//  Adapted from AliDigits, origin M.Ivanov                                  //
//                                                                           //
//  Author:                                                                  //
//    Mateusz Ploskon (ploskon@ikf.uni-frankfurt.de)                         //
//                                                                           //
///////////////////////////////////////////////////////////////////////////////

#include <algorithm>
#include "TObject.h"
#include "AliLog.h"
#include "AliTRDSignalIndex.h"

ClassImp(AliTRDSignalIndex)

//_____________________________________________________________________________
AliTRDSignalIndex::AliTRDSignalIndex()
  :TObject()
  ,fDet(-1)
  ,fLayer(-1)
  ,fStack(-1)
  ,fSM(-1)
  ,fBoolIndex(NULL)
  ,fSortedIndex(NULL)
  ,fMaxLimit(0)
  ,fPositionRC(0)
  ,fCountRC(1)
  ,fSortedWasInit(kFALSE)
  ,fCurrRow(0)
  ,fCurrCol(0)
  ,fCurrTbin(0)
  ,fNrows(0)
  ,fNcols(0)
  ,fNtbins(0)
{
  //
  // Default contructor
  //

  ResetCounters();

}

//_____________________________________________________________________________
AliTRDSignalIndex::AliTRDSignalIndex(Int_t nrow, Int_t ncol,Int_t ntime)
  :TObject()
  ,fDet(-1)
  ,fLayer(-1)
  ,fStack(-1)
  ,fSM(-1)
  ,fBoolIndex(NULL)
  ,fSortedIndex(NULL)
  ,fMaxLimit(0)
  ,fPositionRC(0)
  ,fCountRC(1)
  ,fSortedWasInit(kFALSE)
  ,fCurrRow(0)
  ,fCurrCol(0)
  ,fCurrTbin(0)
  ,fNrows(0)
  ,fNcols(0)
  ,fNtbins(0)
{
  //
  // Not the default contructor... hmmm...
  //

  Allocate(nrow, ncol, ntime);  

}

//_____________________________________________________________________________
AliTRDSignalIndex::AliTRDSignalIndex(const AliTRDSignalIndex &a)
  :TObject(a)
  ,fDet(a.fDet)
  ,fLayer(a.fLayer)
  ,fStack(a.fStack)
  ,fSM(a.fSM)
  ,fBoolIndex(NULL)
  ,fSortedIndex(NULL)
  ,fMaxLimit(a.fMaxLimit)
  ,fPositionRC(a.fPositionRC)
  ,fCountRC(a.fCountRC)
  ,fSortedWasInit(a.fSortedWasInit)
  ,fCurrRow(a.fCurrRow)
  ,fCurrCol(a.fCurrCol)
  ,fCurrTbin(a.fCurrTbin)
  ,fNrows(a.fNrows)
  ,fNcols(a.fNcols)
  ,fNtbins(a.fNtbins)
{
  //
  // Copy constructor
  //

  fBoolIndex = new Bool_t[fMaxLimit];
  memcpy(fBoolIndex, a.fBoolIndex, fMaxLimit*sizeof(Bool_t));

  fSortedIndex = new RowCol[fMaxLimit+1];
  memcpy(fSortedIndex, a.fSortedIndex, (fMaxLimit+1)*sizeof(RowCol));
}

//_____________________________________________________________________________
AliTRDSignalIndex::~AliTRDSignalIndex()
{
  //
  // Destructor
  //

  if (fBoolIndex) {
    delete [] fBoolIndex;
    fBoolIndex = NULL;
  }

if (fSortedIndex) {
    delete [] fSortedIndex;
    fSortedIndex = NULL;
  }

}

//_____________________________________________________________________________
void AliTRDSignalIndex::Copy(TObject &a) const
{
  //
  // Copy function
  //

  ((AliTRDSignalIndex &)a).fDet           = fDet;
  ((AliTRDSignalIndex &)a).fLayer         = fLayer;
  ((AliTRDSignalIndex &)a).fStack         = fStack;
  ((AliTRDSignalIndex &)a).fSM            = fSM;
  ((AliTRDSignalIndex &)a).fMaxLimit      = fMaxLimit;
  ((AliTRDSignalIndex &)a).fPositionRC    = fPositionRC;
  ((AliTRDSignalIndex &)a).fCountRC       = fCountRC;
  ((AliTRDSignalIndex &)a).fSortedWasInit = fSortedWasInit;
  ((AliTRDSignalIndex &)a).fCurrRow       = fCurrRow;
  ((AliTRDSignalIndex &)a).fCurrCol       = fCurrCol;
  ((AliTRDSignalIndex &)a).fCurrTbin      = fCurrTbin;
  ((AliTRDSignalIndex &)a).fNrows         = fNrows;
  ((AliTRDSignalIndex &)a).fNcols         = fNcols;
  ((AliTRDSignalIndex &)a).fNtbins        = fNtbins;

  if(((AliTRDSignalIndex &)a).fBoolIndex)
    {
      delete [] ((AliTRDSignalIndex &)a).fBoolIndex;
    }
  ((AliTRDSignalIndex &)a).fBoolIndex = new Bool_t[fMaxLimit];
  memcpy(((AliTRDSignalIndex &)a).fBoolIndex, fBoolIndex, fMaxLimit*sizeof(Bool_t));

  if(((AliTRDSignalIndex &)a).fSortedIndex)
    {
      delete [] ((AliTRDSignalIndex &)a).fSortedIndex;
    }
  ((AliTRDSignalIndex &)a).fSortedIndex = new RowCol[fMaxLimit+1];
  memcpy(((AliTRDSignalIndex &)a).fSortedIndex, fSortedIndex, (fMaxLimit+1)*sizeof(RowCol));

}

//_____________________________________________________________________________
AliTRDSignalIndex& AliTRDSignalIndex::operator = (const AliTRDSignalIndex& a)
{
  //
  // Assignment operator
  //

  if (this == &a) {
    return *this;
  }

  fDet           = a.fDet;
  fLayer         = a.fLayer;
  fStack         = a.fStack;
  fSM            = a.fSM;
  fMaxLimit      = a.fMaxLimit;
  fPositionRC    = a.fPositionRC;
  fCountRC       = a.fCountRC;
  fSortedWasInit = a.fSortedWasInit;
  fCurrRow       = a.fCurrRow;
  fCurrCol       = a.fCurrCol;
  fCurrTbin      = a.fCurrTbin;
  fNrows         = a.fNrows;
  fNcols         = a.fNcols;
  fNtbins        = a.fNtbins;

  if (fBoolIndex) {
    delete [] fBoolIndex;
  }
  fBoolIndex = new Bool_t[fMaxLimit];
  memcpy(fBoolIndex, fBoolIndex, fMaxLimit*sizeof(Bool_t));

  if (fSortedIndex) {
    delete [] fSortedIndex;
  }
  fSortedIndex = new RowCol[fMaxLimit+1];
  memcpy(fSortedIndex, fSortedIndex, (fMaxLimit+1)*sizeof(RowCol));

  ResetCounters();

  return *this;

}

//_____________________________________________________________________________
void AliTRDSignalIndex::Allocate(const Int_t nrow, const Int_t ncol, const Int_t ntime)
{
  //
  // Create the arrays
  //

  fNrows = nrow;
  fNcols = ncol;
  fNtbins = ntime;

  fMaxLimit = nrow * ncol + 1;

  if (fBoolIndex) {
    delete [] fBoolIndex;
    fBoolIndex = NULL;
  }
  if (fSortedIndex) {
    delete [] fSortedIndex;
    fSortedIndex = NULL;
  }

  fBoolIndex = new Bool_t[fMaxLimit];
  fSortedIndex = new RowCol[fMaxLimit+1];

  fCountRC = fMaxLimit+1;

  ResetArrays();
  ResetCounters();

  fCountRC = 1;

}

//_____________________________________________________________________________
void AliTRDSignalIndex::ResetArrays()
{
  if (!IsAllocated())
    return;
  memset(fBoolIndex,0x00,sizeof(Bool_t)*fMaxLimit);
  memset(fSortedIndex,0xFF,sizeof(RowCol)*fCountRC); 
  fSortedWasInit = kFALSE;
}

//_____________________________________________________________________________
void AliTRDSignalIndex::Reset()
{
  //
  // Reset the array but keep the size - realloc
  //

  fDet   = -1;
  fLayer = -1;
  fStack = -1;
  fSM    = -1;

  // All will be lost 
  Allocate(fNrows, fNcols, fNtbins);

}

//_____________________________________________________________________________
void AliTRDSignalIndex::ResetContent()
{
  //
  // Reset the array but keep the size - no realloc
  //

  fDet   = -1;
  fLayer = -1;
  fStack = -1;
  fSM    = -1;

  ResetArrays();
  ResetCounters();

  fCountRC = 1;

}

//_____________________________________________________________________________
void AliTRDSignalIndex::ResetContentConditional(const Int_t nrow, const Int_t ncol, const Int_t ntime)
{
  //
  // Reset the array but keep the size if no need to enlarge - no realloc
  //

  fDet   = -1;
  fLayer = -1;
  fStack = -1;
  fSM    = -1;

  if ((nrow  > fNrows) || 
      (ncol  > fNcols) || 
      (ntime > fNtbins)) {
    Allocate(nrow, ncol, ntime);
  }
  else {
    ResetArrays();
    ResetCounters();
    fCountRC = 1;
  }

}

//_____________________________________________________________________________
void AliTRDSignalIndex::ClearAll()
{
  //
  // Reset the values - clear all!
  //

  fDet    = -1;
  fLayer  = -1;
  fStack  = -1;
  fSM     = -1;

  fNrows  = -1;
  fNcols  = -1;
  fNtbins = -1;

  if (fBoolIndex) {
    delete [] fBoolIndex;
    fBoolIndex = NULL;
  }

  if (fSortedIndex) {
    delete [] fSortedIndex;
    fSortedIndex = NULL;
  }
  
  ResetCounters();

  fCountRC = 1;
  fSortedWasInit = kFALSE;
  fMaxLimit = 0;

}

//_____________________________________________________________________________
Bool_t  AliTRDSignalIndex::CheckSorting(Int_t &row, Int_t &col)
{
  //
  // Check whether array was read to end or it was not sorted until now
  //

  if(fSortedWasInit || fCountRC==1)
    { //we already reached the end of the array
      ResetCounters();
      row = fCurrRow;
      col = fCurrCol;
      return kFALSE;
    }
  else
    { //we have not sorted the array up to now, let's do so
      InitSortedIndex();
      return NextRCIndex(row, col);
    }
}

//_____________________________________________________________________________
Bool_t AliTRDSignalIndex::NextRCTbinIndex(Int_t &row, Int_t &col, Int_t &tbin)
{
  //
  // Returns the next tbin, or if there is no next time bin, it returns the
  // next used RC combination.
  //  

  if (NextTbinIndex(tbin)) {
    row = fCurrRow;
    col = fCurrCol;
    return kTRUE;
  }
  else {
    if (NextRCIndex(row, col)) {
      return NextRCTbinIndex(row, col, tbin);
    }
  }

  return kFALSE;

}

//_____________________________________________________________________________
Bool_t AliTRDSignalIndex::NextTbinIndex(Int_t &tbin)
{
  //
  // Returns the next tbin of the current RC combination
  //
  
  if(fCurrTbin<fNtbins)
    {
      tbin = fCurrTbin++;
      return kTRUE;
    }

  return kFALSE;

}

//_____________________________________________________________________________
void AliTRDSignalIndex::InitSortedIndex()
{
  //
  // Creates the SortedIndex
  //

  fSortedWasInit = kTRUE;
  std::sort((UShort_t*)fSortedIndex, ((UShort_t*)fSortedIndex) + fCountRC);

}

//_____________________________________________________________________________
void AliTRDSignalIndex::ResetCounters()    
{ 
  //
  // Reset the counters/iterators
  //

  fCurrRow    = -1;
  fCurrCol    = -1;
  fCurrTbin   = -1;
  fPositionRC =  0;
}
 AliTRDSignalIndex.cxx:1
 AliTRDSignalIndex.cxx:2
 AliTRDSignalIndex.cxx:3
 AliTRDSignalIndex.cxx:4
 AliTRDSignalIndex.cxx:5
 AliTRDSignalIndex.cxx:6
 AliTRDSignalIndex.cxx:7
 AliTRDSignalIndex.cxx:8
 AliTRDSignalIndex.cxx:9
 AliTRDSignalIndex.cxx:10
 AliTRDSignalIndex.cxx:11
 AliTRDSignalIndex.cxx:12
 AliTRDSignalIndex.cxx:13
 AliTRDSignalIndex.cxx:14
 AliTRDSignalIndex.cxx:15
 AliTRDSignalIndex.cxx:16
 AliTRDSignalIndex.cxx:17
 AliTRDSignalIndex.cxx:18
 AliTRDSignalIndex.cxx:19
 AliTRDSignalIndex.cxx:20
 AliTRDSignalIndex.cxx:21
 AliTRDSignalIndex.cxx:22
 AliTRDSignalIndex.cxx:23
 AliTRDSignalIndex.cxx:24
 AliTRDSignalIndex.cxx:25
 AliTRDSignalIndex.cxx:26
 AliTRDSignalIndex.cxx:27
 AliTRDSignalIndex.cxx:28
 AliTRDSignalIndex.cxx:29
 AliTRDSignalIndex.cxx:30
 AliTRDSignalIndex.cxx:31
 AliTRDSignalIndex.cxx:32
 AliTRDSignalIndex.cxx:33
 AliTRDSignalIndex.cxx:34
 AliTRDSignalIndex.cxx:35
 AliTRDSignalIndex.cxx:36
 AliTRDSignalIndex.cxx:37
 AliTRDSignalIndex.cxx:38
 AliTRDSignalIndex.cxx:39
 AliTRDSignalIndex.cxx:40
 AliTRDSignalIndex.cxx:41
 AliTRDSignalIndex.cxx:42
 AliTRDSignalIndex.cxx:43
 AliTRDSignalIndex.cxx:44
 AliTRDSignalIndex.cxx:45
 AliTRDSignalIndex.cxx:46
 AliTRDSignalIndex.cxx:47
 AliTRDSignalIndex.cxx:48
 AliTRDSignalIndex.cxx:49
 AliTRDSignalIndex.cxx:50
 AliTRDSignalIndex.cxx:51
 AliTRDSignalIndex.cxx:52
 AliTRDSignalIndex.cxx:53
 AliTRDSignalIndex.cxx:54
 AliTRDSignalIndex.cxx:55
 AliTRDSignalIndex.cxx:56
 AliTRDSignalIndex.cxx:57
 AliTRDSignalIndex.cxx:58
 AliTRDSignalIndex.cxx:59
 AliTRDSignalIndex.cxx:60
 AliTRDSignalIndex.cxx:61
 AliTRDSignalIndex.cxx:62
 AliTRDSignalIndex.cxx:63
 AliTRDSignalIndex.cxx:64
 AliTRDSignalIndex.cxx:65
 AliTRDSignalIndex.cxx:66
 AliTRDSignalIndex.cxx:67
 AliTRDSignalIndex.cxx:68
 AliTRDSignalIndex.cxx:69
 AliTRDSignalIndex.cxx:70
 AliTRDSignalIndex.cxx:71
 AliTRDSignalIndex.cxx:72
 AliTRDSignalIndex.cxx:73
 AliTRDSignalIndex.cxx:74
 AliTRDSignalIndex.cxx:75
 AliTRDSignalIndex.cxx:76
 AliTRDSignalIndex.cxx:77
 AliTRDSignalIndex.cxx:78
 AliTRDSignalIndex.cxx:79
 AliTRDSignalIndex.cxx:80
 AliTRDSignalIndex.cxx:81
 AliTRDSignalIndex.cxx:82
 AliTRDSignalIndex.cxx:83
 AliTRDSignalIndex.cxx:84
 AliTRDSignalIndex.cxx:85
 AliTRDSignalIndex.cxx:86
 AliTRDSignalIndex.cxx:87
 AliTRDSignalIndex.cxx:88
 AliTRDSignalIndex.cxx:89
 AliTRDSignalIndex.cxx:90
 AliTRDSignalIndex.cxx:91
 AliTRDSignalIndex.cxx:92
 AliTRDSignalIndex.cxx:93
 AliTRDSignalIndex.cxx:94
 AliTRDSignalIndex.cxx:95
 AliTRDSignalIndex.cxx:96
 AliTRDSignalIndex.cxx:97
 AliTRDSignalIndex.cxx:98
 AliTRDSignalIndex.cxx:99
 AliTRDSignalIndex.cxx:100
 AliTRDSignalIndex.cxx:101
 AliTRDSignalIndex.cxx:102
 AliTRDSignalIndex.cxx:103
 AliTRDSignalIndex.cxx:104
 AliTRDSignalIndex.cxx:105
 AliTRDSignalIndex.cxx:106
 AliTRDSignalIndex.cxx:107
 AliTRDSignalIndex.cxx:108
 AliTRDSignalIndex.cxx:109
 AliTRDSignalIndex.cxx:110
 AliTRDSignalIndex.cxx:111
 AliTRDSignalIndex.cxx:112
 AliTRDSignalIndex.cxx:113
 AliTRDSignalIndex.cxx:114
 AliTRDSignalIndex.cxx:115
 AliTRDSignalIndex.cxx:116
 AliTRDSignalIndex.cxx:117
 AliTRDSignalIndex.cxx:118
 AliTRDSignalIndex.cxx:119
 AliTRDSignalIndex.cxx:120
 AliTRDSignalIndex.cxx:121
 AliTRDSignalIndex.cxx:122
 AliTRDSignalIndex.cxx:123
 AliTRDSignalIndex.cxx:124
 AliTRDSignalIndex.cxx:125
 AliTRDSignalIndex.cxx:126
 AliTRDSignalIndex.cxx:127
 AliTRDSignalIndex.cxx:128
 AliTRDSignalIndex.cxx:129
 AliTRDSignalIndex.cxx:130
 AliTRDSignalIndex.cxx:131
 AliTRDSignalIndex.cxx:132
 AliTRDSignalIndex.cxx:133
 AliTRDSignalIndex.cxx:134
 AliTRDSignalIndex.cxx:135
 AliTRDSignalIndex.cxx:136
 AliTRDSignalIndex.cxx:137
 AliTRDSignalIndex.cxx:138
 AliTRDSignalIndex.cxx:139
 AliTRDSignalIndex.cxx:140
 AliTRDSignalIndex.cxx:141
 AliTRDSignalIndex.cxx:142
 AliTRDSignalIndex.cxx:143
 AliTRDSignalIndex.cxx:144
 AliTRDSignalIndex.cxx:145
 AliTRDSignalIndex.cxx:146
 AliTRDSignalIndex.cxx:147
 AliTRDSignalIndex.cxx:148
 AliTRDSignalIndex.cxx:149
 AliTRDSignalIndex.cxx:150
 AliTRDSignalIndex.cxx:151
 AliTRDSignalIndex.cxx:152
 AliTRDSignalIndex.cxx:153
 AliTRDSignalIndex.cxx:154
 AliTRDSignalIndex.cxx:155
 AliTRDSignalIndex.cxx:156
 AliTRDSignalIndex.cxx:157
 AliTRDSignalIndex.cxx:158
 AliTRDSignalIndex.cxx:159
 AliTRDSignalIndex.cxx:160
 AliTRDSignalIndex.cxx:161
 AliTRDSignalIndex.cxx:162
 AliTRDSignalIndex.cxx:163
 AliTRDSignalIndex.cxx:164
 AliTRDSignalIndex.cxx:165
 AliTRDSignalIndex.cxx:166
 AliTRDSignalIndex.cxx:167
 AliTRDSignalIndex.cxx:168
 AliTRDSignalIndex.cxx:169
 AliTRDSignalIndex.cxx:170
 AliTRDSignalIndex.cxx:171
 AliTRDSignalIndex.cxx:172
 AliTRDSignalIndex.cxx:173
 AliTRDSignalIndex.cxx:174
 AliTRDSignalIndex.cxx:175
 AliTRDSignalIndex.cxx:176
 AliTRDSignalIndex.cxx:177
 AliTRDSignalIndex.cxx:178
 AliTRDSignalIndex.cxx:179
 AliTRDSignalIndex.cxx:180
 AliTRDSignalIndex.cxx:181
 AliTRDSignalIndex.cxx:182
 AliTRDSignalIndex.cxx:183
 AliTRDSignalIndex.cxx:184
 AliTRDSignalIndex.cxx:185
 AliTRDSignalIndex.cxx:186
 AliTRDSignalIndex.cxx:187
 AliTRDSignalIndex.cxx:188
 AliTRDSignalIndex.cxx:189
 AliTRDSignalIndex.cxx:190
 AliTRDSignalIndex.cxx:191
 AliTRDSignalIndex.cxx:192
 AliTRDSignalIndex.cxx:193
 AliTRDSignalIndex.cxx:194
 AliTRDSignalIndex.cxx:195
 AliTRDSignalIndex.cxx:196
 AliTRDSignalIndex.cxx:197
 AliTRDSignalIndex.cxx:198
 AliTRDSignalIndex.cxx:199
 AliTRDSignalIndex.cxx:200
 AliTRDSignalIndex.cxx:201
 AliTRDSignalIndex.cxx:202
 AliTRDSignalIndex.cxx:203
 AliTRDSignalIndex.cxx:204
 AliTRDSignalIndex.cxx:205
 AliTRDSignalIndex.cxx:206
 AliTRDSignalIndex.cxx:207
 AliTRDSignalIndex.cxx:208
 AliTRDSignalIndex.cxx:209
 AliTRDSignalIndex.cxx:210
 AliTRDSignalIndex.cxx:211
 AliTRDSignalIndex.cxx:212
 AliTRDSignalIndex.cxx:213
 AliTRDSignalIndex.cxx:214
 AliTRDSignalIndex.cxx:215
 AliTRDSignalIndex.cxx:216
 AliTRDSignalIndex.cxx:217
 AliTRDSignalIndex.cxx:218
 AliTRDSignalIndex.cxx:219
 AliTRDSignalIndex.cxx:220
 AliTRDSignalIndex.cxx:221
 AliTRDSignalIndex.cxx:222
 AliTRDSignalIndex.cxx:223
 AliTRDSignalIndex.cxx:224
 AliTRDSignalIndex.cxx:225
 AliTRDSignalIndex.cxx:226
 AliTRDSignalIndex.cxx:227
 AliTRDSignalIndex.cxx:228
 AliTRDSignalIndex.cxx:229
 AliTRDSignalIndex.cxx:230
 AliTRDSignalIndex.cxx:231
 AliTRDSignalIndex.cxx:232
 AliTRDSignalIndex.cxx:233
 AliTRDSignalIndex.cxx:234
 AliTRDSignalIndex.cxx:235
 AliTRDSignalIndex.cxx:236
 AliTRDSignalIndex.cxx:237
 AliTRDSignalIndex.cxx:238
 AliTRDSignalIndex.cxx:239
 AliTRDSignalIndex.cxx:240
 AliTRDSignalIndex.cxx:241
 AliTRDSignalIndex.cxx:242
 AliTRDSignalIndex.cxx:243
 AliTRDSignalIndex.cxx:244
 AliTRDSignalIndex.cxx:245
 AliTRDSignalIndex.cxx:246
 AliTRDSignalIndex.cxx:247
 AliTRDSignalIndex.cxx:248
 AliTRDSignalIndex.cxx:249
 AliTRDSignalIndex.cxx:250
 AliTRDSignalIndex.cxx:251
 AliTRDSignalIndex.cxx:252
 AliTRDSignalIndex.cxx:253
 AliTRDSignalIndex.cxx:254
 AliTRDSignalIndex.cxx:255
 AliTRDSignalIndex.cxx:256
 AliTRDSignalIndex.cxx:257
 AliTRDSignalIndex.cxx:258
 AliTRDSignalIndex.cxx:259
 AliTRDSignalIndex.cxx:260
 AliTRDSignalIndex.cxx:261
 AliTRDSignalIndex.cxx:262
 AliTRDSignalIndex.cxx:263
 AliTRDSignalIndex.cxx:264
 AliTRDSignalIndex.cxx:265
 AliTRDSignalIndex.cxx:266
 AliTRDSignalIndex.cxx:267
 AliTRDSignalIndex.cxx:268
 AliTRDSignalIndex.cxx:269
 AliTRDSignalIndex.cxx:270
 AliTRDSignalIndex.cxx:271
 AliTRDSignalIndex.cxx:272
 AliTRDSignalIndex.cxx:273
 AliTRDSignalIndex.cxx:274
 AliTRDSignalIndex.cxx:275
 AliTRDSignalIndex.cxx:276
 AliTRDSignalIndex.cxx:277
 AliTRDSignalIndex.cxx:278
 AliTRDSignalIndex.cxx:279
 AliTRDSignalIndex.cxx:280
 AliTRDSignalIndex.cxx:281
 AliTRDSignalIndex.cxx:282
 AliTRDSignalIndex.cxx:283
 AliTRDSignalIndex.cxx:284
 AliTRDSignalIndex.cxx:285
 AliTRDSignalIndex.cxx:286
 AliTRDSignalIndex.cxx:287
 AliTRDSignalIndex.cxx:288
 AliTRDSignalIndex.cxx:289
 AliTRDSignalIndex.cxx:290
 AliTRDSignalIndex.cxx:291
 AliTRDSignalIndex.cxx:292
 AliTRDSignalIndex.cxx:293
 AliTRDSignalIndex.cxx:294
 AliTRDSignalIndex.cxx:295
 AliTRDSignalIndex.cxx:296
 AliTRDSignalIndex.cxx:297
 AliTRDSignalIndex.cxx:298
 AliTRDSignalIndex.cxx:299
 AliTRDSignalIndex.cxx:300
 AliTRDSignalIndex.cxx:301
 AliTRDSignalIndex.cxx:302
 AliTRDSignalIndex.cxx:303
 AliTRDSignalIndex.cxx:304
 AliTRDSignalIndex.cxx:305
 AliTRDSignalIndex.cxx:306
 AliTRDSignalIndex.cxx:307
 AliTRDSignalIndex.cxx:308
 AliTRDSignalIndex.cxx:309
 AliTRDSignalIndex.cxx:310
 AliTRDSignalIndex.cxx:311
 AliTRDSignalIndex.cxx:312
 AliTRDSignalIndex.cxx:313
 AliTRDSignalIndex.cxx:314
 AliTRDSignalIndex.cxx:315
 AliTRDSignalIndex.cxx:316
 AliTRDSignalIndex.cxx:317
 AliTRDSignalIndex.cxx:318
 AliTRDSignalIndex.cxx:319
 AliTRDSignalIndex.cxx:320
 AliTRDSignalIndex.cxx:321
 AliTRDSignalIndex.cxx:322
 AliTRDSignalIndex.cxx:323
 AliTRDSignalIndex.cxx:324
 AliTRDSignalIndex.cxx:325
 AliTRDSignalIndex.cxx:326
 AliTRDSignalIndex.cxx:327
 AliTRDSignalIndex.cxx:328
 AliTRDSignalIndex.cxx:329
 AliTRDSignalIndex.cxx:330
 AliTRDSignalIndex.cxx:331
 AliTRDSignalIndex.cxx:332
 AliTRDSignalIndex.cxx:333
 AliTRDSignalIndex.cxx:334
 AliTRDSignalIndex.cxx:335
 AliTRDSignalIndex.cxx:336
 AliTRDSignalIndex.cxx:337
 AliTRDSignalIndex.cxx:338
 AliTRDSignalIndex.cxx:339
 AliTRDSignalIndex.cxx:340
 AliTRDSignalIndex.cxx:341
 AliTRDSignalIndex.cxx:342
 AliTRDSignalIndex.cxx:343
 AliTRDSignalIndex.cxx:344
 AliTRDSignalIndex.cxx:345
 AliTRDSignalIndex.cxx:346
 AliTRDSignalIndex.cxx:347
 AliTRDSignalIndex.cxx:348
 AliTRDSignalIndex.cxx:349
 AliTRDSignalIndex.cxx:350
 AliTRDSignalIndex.cxx:351
 AliTRDSignalIndex.cxx:352
 AliTRDSignalIndex.cxx:353
 AliTRDSignalIndex.cxx:354
 AliTRDSignalIndex.cxx:355
 AliTRDSignalIndex.cxx:356
 AliTRDSignalIndex.cxx:357
 AliTRDSignalIndex.cxx:358
 AliTRDSignalIndex.cxx:359
 AliTRDSignalIndex.cxx:360
 AliTRDSignalIndex.cxx:361
 AliTRDSignalIndex.cxx:362
 AliTRDSignalIndex.cxx:363
 AliTRDSignalIndex.cxx:364
 AliTRDSignalIndex.cxx:365
 AliTRDSignalIndex.cxx:366
 AliTRDSignalIndex.cxx:367
 AliTRDSignalIndex.cxx:368
 AliTRDSignalIndex.cxx:369
 AliTRDSignalIndex.cxx:370
 AliTRDSignalIndex.cxx:371
 AliTRDSignalIndex.cxx:372
 AliTRDSignalIndex.cxx:373
 AliTRDSignalIndex.cxx:374
 AliTRDSignalIndex.cxx:375
 AliTRDSignalIndex.cxx:376
 AliTRDSignalIndex.cxx:377
 AliTRDSignalIndex.cxx:378
 AliTRDSignalIndex.cxx:379
 AliTRDSignalIndex.cxx:380
 AliTRDSignalIndex.cxx:381
 AliTRDSignalIndex.cxx:382
 AliTRDSignalIndex.cxx:383
 AliTRDSignalIndex.cxx:384
 AliTRDSignalIndex.cxx:385
 AliTRDSignalIndex.cxx:386
 AliTRDSignalIndex.cxx:387
 AliTRDSignalIndex.cxx:388
 AliTRDSignalIndex.cxx:389
 AliTRDSignalIndex.cxx:390
 AliTRDSignalIndex.cxx:391
 AliTRDSignalIndex.cxx:392
 AliTRDSignalIndex.cxx:393
 AliTRDSignalIndex.cxx:394
 AliTRDSignalIndex.cxx:395
 AliTRDSignalIndex.cxx:396
 AliTRDSignalIndex.cxx:397
 AliTRDSignalIndex.cxx:398
 AliTRDSignalIndex.cxx:399
 AliTRDSignalIndex.cxx:400
 AliTRDSignalIndex.cxx:401
 AliTRDSignalIndex.cxx:402
 AliTRDSignalIndex.cxx:403
 AliTRDSignalIndex.cxx:404
 AliTRDSignalIndex.cxx:405
 AliTRDSignalIndex.cxx:406
 AliTRDSignalIndex.cxx:407
 AliTRDSignalIndex.cxx:408
 AliTRDSignalIndex.cxx:409
 AliTRDSignalIndex.cxx:410
 AliTRDSignalIndex.cxx:411
 AliTRDSignalIndex.cxx:412
 AliTRDSignalIndex.cxx:413
 AliTRDSignalIndex.cxx:414
 AliTRDSignalIndex.cxx:415
 AliTRDSignalIndex.cxx:416
 AliTRDSignalIndex.cxx:417
 AliTRDSignalIndex.cxx:418
 AliTRDSignalIndex.cxx:419
 AliTRDSignalIndex.cxx:420
 AliTRDSignalIndex.cxx:421
 AliTRDSignalIndex.cxx:422
 AliTRDSignalIndex.cxx:423
 AliTRDSignalIndex.cxx:424
 AliTRDSignalIndex.cxx:425
 AliTRDSignalIndex.cxx:426
 AliTRDSignalIndex.cxx:427
 AliTRDSignalIndex.cxx:428
 AliTRDSignalIndex.cxx:429
 AliTRDSignalIndex.cxx:430
 AliTRDSignalIndex.cxx:431
 AliTRDSignalIndex.cxx:432
 AliTRDSignalIndex.cxx:433
 AliTRDSignalIndex.cxx:434
 AliTRDSignalIndex.cxx:435
 AliTRDSignalIndex.cxx:436
 AliTRDSignalIndex.cxx:437
 AliTRDSignalIndex.cxx:438
 AliTRDSignalIndex.cxx:439
 AliTRDSignalIndex.cxx:440
 AliTRDSignalIndex.cxx:441
 AliTRDSignalIndex.cxx:442
 AliTRDSignalIndex.cxx:443
 AliTRDSignalIndex.cxx:444
 AliTRDSignalIndex.cxx:445
 AliTRDSignalIndex.cxx:446