#include <string>
#include <sstream>
#include <fstream>
#include "TProfile.h"
#include "TFile.h"
#include "AliRawReader.h"
#include "AliCaloRawStreamV3.h"
#include "AliCaloConstants.h"
#include "AliCaloBunchInfo.h"
#include "AliCaloFitResults.h"
#include "AliCaloRawAnalyzer.h"
#include "AliCaloRawAnalyzerFactory.h"
#include "AliCaloCalibSignal.h"
ClassImp(AliCaloCalibSignal)
using namespace std;
static int fChannelNum = 0;
static int fRefNum = 0;
static double fAmp = 0;
static double fAvgAmp = 0;
static double fRMS = 0;
AliCaloCalibSignal::AliCaloCalibSignal(kDetType detectorType) :
TObject(),
fDetType(kNone),
fColumns(0),
fRows(0),
fLEDRefs(0),
fModules(0),
fCaloString(),
fMapping(NULL),
fFittingAlgorithm(0),
fRawAnalyzer(0),
fRunNumber(-1),
fStartTime(0),
fAmpCut(40),
fReqFractionAboveAmpCutVal(0.6),
fReqFractionAboveAmp(kTRUE),
fAmpCutLEDRef(100),
fReqLEDRefAboveAmpCutVal(kTRUE),
fHour(0),
fLatestHour(0),
fUseAverage(kTRUE),
fSecInAverage(1800),
fDownscale(10),
fNEvents(0),
fNAcceptedEvents(0),
fTreeAmpVsTime(NULL),
fTreeAvgAmpVsTime(NULL),
fTreeLEDAmpVsTime(NULL),
fTreeLEDAvgAmpVsTime(NULL)
{
if (detectorType == kPhos) {
fColumns = fgkPhosCols;
fRows = fgkPhosRows;
fLEDRefs = fgkPhosLEDRefs;
fModules = fgkPhosModules;
fCaloString = "PHOS";
}
else {
fColumns = AliEMCALGeoParams::fgkEMCALCols;
fRows = AliEMCALGeoParams::fgkEMCALRows;
fLEDRefs = AliEMCALGeoParams::fgkEMCALLEDRefs;
fModules = AliEMCALGeoParams::fgkEMCALModules;
fCaloString = "EMCAL";
}
fDetType = detectorType;
SetFittingAlgorithm(Algo::kStandard);
ResetInfo();
}
AliCaloCalibSignal::~AliCaloCalibSignal()
{
DeleteTrees();
}
void AliCaloCalibSignal::DeleteTrees()
{
if (fTreeAmpVsTime) delete fTreeAmpVsTime;
if (fTreeAvgAmpVsTime) delete fTreeAvgAmpVsTime;
if (fTreeLEDAmpVsTime) delete fTreeLEDAmpVsTime;
if (fTreeLEDAvgAmpVsTime) delete fTreeLEDAvgAmpVsTime;
fTreeAmpVsTime = NULL;
fTreeAvgAmpVsTime = NULL;
fTreeLEDAmpVsTime = NULL;
fTreeLEDAvgAmpVsTime = NULL;
return;
}
void AliCaloCalibSignal::CreateTrees()
{
fTreeAmpVsTime = new TTree("fTreeAmpVsTime","Amplitude vs. Time Tree Variables");
fTreeAmpVsTime->Branch("fChannelNum", &fChannelNum, "fChannelNum/I");
fTreeAmpVsTime->Branch("fHour", &fHour, "fHour/D");
fTreeAmpVsTime->Branch("fAmp", &fAmp, "fAmp/D");
fTreeAvgAmpVsTime = new TTree("fTreeAvgAmpVsTime","Average Amplitude vs. Time Tree Variables");
fTreeAvgAmpVsTime->Branch("fChannelNum", &fChannelNum, "fChannelNum/I");
fTreeAvgAmpVsTime->Branch("fHour", &fHour, "fHour/D");
fTreeAvgAmpVsTime->Branch("fAvgAmp", &fAvgAmp, "fAvgAmp/D");
fTreeAvgAmpVsTime->Branch("fRMS", &fRMS, "fRMS/D");
fTreeLEDAmpVsTime = new TTree("fTreeLEDAmpVsTime","LED Amplitude vs. Time Tree Variables");
fTreeLEDAmpVsTime->Branch("fRefNum", &fRefNum, "fRefNum/I");
fTreeLEDAmpVsTime->Branch("fHour", &fHour, "fHour/D");
fTreeLEDAmpVsTime->Branch("fAmp", &fAmp, "fAmp/D");
fTreeLEDAvgAmpVsTime = new TTree("fTreeLEDAvgAmpVsTime","Average LED Amplitude vs. Time Tree Variables");
fTreeLEDAvgAmpVsTime->Branch("fRefNum", &fRefNum, "fRefNum/I");
fTreeLEDAvgAmpVsTime->Branch("fHour", &fHour, "fHour/D");
fTreeLEDAvgAmpVsTime->Branch("fAvgAmp", &fAvgAmp, "fAvgAmp/D");
fTreeLEDAvgAmpVsTime->Branch("fRMS", &fRMS, "fRMS/D");
return;
}
void AliCaloCalibSignal::ResetInfo()
{
Zero();
DeleteTrees();
CreateTrees();
return;
}
void AliCaloCalibSignal::Zero()
{
fHour = 0;
fLatestHour = 0;
fNEvents = 0;
fNAcceptedEvents = 0;
memset(fNHighGain, 0, sizeof(fNHighGain));
memset(fNLowGain, 0, sizeof(fNLowGain));
memset(fNRef, 0, sizeof(fNRef));
return;
}
Bool_t AliCaloCalibSignal::CheckFractionAboveAmp(const int *iAmpVal,
int resultArray[]) const
{
Bool_t returnCode = false;
int iTowerNum = 0;
double fraction = 0;
for (int i = 0; i<fModules; i++) {
for (int j = 0; j<fColumns; j++) {
int nAbove = 0;
for (int k = 0; k<fRows; k++) {
iTowerNum = GetTowerNum(i,j,k);
if (iAmpVal[iTowerNum] > fAmpCut) {
nAbove++;
}
}
resultArray[i*fColumns +j] = 0;
if (nAbove > 0) {
fraction = (1.0*nAbove) / fRows;
if (fraction > fReqFractionAboveAmpCutVal) {
resultArray[i*fColumns + j] = nAbove;
returnCode = true;
}
}
}
}
return returnCode;
}
Bool_t AliCaloCalibSignal::CheckLEDRefAboveAmp(const int *iAmpVal,
int resultArray[]) const
{
Bool_t returnCode = false;
int iRefNum = 0;
int gain = 1;
for (int i = 0; i<fModules; i++) {
for (int j = 0; j<fLEDRefs; j++) {
iRefNum = GetRefNum(i, j, gain);
if (iAmpVal[iRefNum] > fAmpCutLEDRef) {
resultArray[i*fLEDRefs +j] = 1;
returnCode = true;
}
else {
resultArray[i*fLEDRefs +j] = 0;
}
}
}
return returnCode;
}
void AliCaloCalibSignal::SetParametersFromFile(const char *parameterFile)
{
static const string delimitor("::");
ifstream in( parameterFile );
if( !in ) {
printf("in AliCaloCalibSignal::SetParametersFromFile - Using default/run_time parameters.\n");
return;
}
char readline[1024];
while ((in.rdstate() & ios::failbit) == 0 ) {
in.getline(readline, 1024);
istringstream s(readline);
while ( ( s.rdstate() & ios::failbit ) == 0 ) {
string keyValue;
s >> keyValue;
if( ( s.rdstate() & ios::failbit ) == ios::failbit ) break;
if( keyValue.substr( 0, 2 ) == "//" ) break;
size_t position = keyValue.find( delimitor );
if( position == string::npos ) {
printf("wrong format for key::value pair: %s\n", keyValue.c_str());
}
string key( keyValue.substr( 0, position ) );
string value( keyValue.substr( position+delimitor.size(),
keyValue.size()-delimitor.size() ) );
if( value.find( delimitor ) != string::npos ) {
printf("wrong format for key::value pair: %s\n", keyValue.c_str());
}
if ( (key == "fAmpCut") || (key == "fReqFractionAboveAmpCutVal") ||
(key == "fAmpCutLEDRef") || (key == "fSecInAverage") ||
(key == "fFittingAlgorithm") || (key == "fDownscale") ) {
istringstream iss(value);
printf("AliCaloCalibSignal::SetParametersFromFile - key %s value %s\n", key.c_str(), value.c_str());
if (key == "fAmpCut") {
iss >> fAmpCut;
}
else if (key == "fReqFractionAboveAmpCutVal") {
iss >> fReqFractionAboveAmpCutVal;
}
else if (key == "fAmpCutLEDRef") {
iss >> fAmpCutLEDRef;
}
else if (key == "fSecInAverage") {
iss >> fSecInAverage;
}
else if (key == "fFittingAlgorithm") {
iss >> fFittingAlgorithm;
SetFittingAlgorithm( fFittingAlgorithm );
}
else if (key == "fDownscale") {
iss >> fDownscale;
}
}
}
}
in.close();
return;
}
void AliCaloCalibSignal::WriteParametersToFile(const char *parameterFile)
{
static const string delimitor("::");
ofstream out( parameterFile );
out << "// " << parameterFile << endl;
out << "fAmpCut" << "::" << fAmpCut << endl;
out << "fReqFractionAboveAmpCutVal" << "::" << fReqFractionAboveAmpCutVal << endl;
out << "fAmpCutLEDRef" << "::" << fAmpCutLEDRef << endl;
out << "fSecInAverage" << "::" << fSecInAverage << endl;
out << "fFittingAlgorithm" << "::" << fFittingAlgorithm << endl;
out << "fDownscale" << "::" << fDownscale << endl;
out.close();
return;
}
void AliCaloCalibSignal::SetFittingAlgorithm(Int_t fitAlgo)
{
fFittingAlgorithm = fitAlgo;
delete fRawAnalyzer;
fRawAnalyzer = AliCaloRawAnalyzerFactory::CreateAnalyzer( fitAlgo );
fRawAnalyzer->SetIsZeroSuppressed(true);
}
Bool_t AliCaloCalibSignal::AddInfo(const AliCaloCalibSignal *sig)
{
TTree *sigAmp = sig->GetTreeAmpVsTime();
TTree *sigAvgAmp = sig->GetTreeAvgAmpVsTime();
sigAmp->SetBranchAddress("fChannelNum",&fChannelNum);
sigAmp->SetBranchAddress("fHour",&fHour);
sigAmp->SetBranchAddress("fAmp",&fAmp);
for (int i=0; i<sigAmp->GetEntries(); i++) {
sigAmp->GetEntry(i);
fTreeAmpVsTime->Fill();
}
sigAvgAmp->SetBranchAddress("fChannelNum",&fChannelNum);
sigAvgAmp->SetBranchAddress("fHour",&fHour);
sigAvgAmp->SetBranchAddress("fAvgAmp",&fAvgAmp);
sigAvgAmp->SetBranchAddress("fRMS",&fRMS);
for (int i=0; i<sigAvgAmp->GetEntries(); i++) {
sigAvgAmp->GetEntry(i);
fTreeAvgAmpVsTime->Fill();
}
TTree *sigLEDAmp = sig->GetTreeLEDAmpVsTime();
TTree *sigLEDAvgAmp = sig->GetTreeLEDAvgAmpVsTime();
sigLEDAmp->SetBranchAddress("fRefNum",&fRefNum);
sigLEDAmp->SetBranchAddress("fHour",&fHour);
sigLEDAmp->SetBranchAddress("fAmp",&fAmp);
for (int i=0; i<sigLEDAmp->GetEntries(); i++) {
sigLEDAmp->GetEntry(i);
fTreeLEDAmpVsTime->Fill();
}
sigLEDAvgAmp->SetBranchAddress("fRefNum",&fRefNum);
sigLEDAvgAmp->SetBranchAddress("fHour",&fHour);
sigLEDAvgAmp->SetBranchAddress("fAvgAmp",&fAvgAmp);
sigLEDAvgAmp->SetBranchAddress("fRMS",&fRMS);
for (int i=0; i<sigLEDAvgAmp->GetEntries(); i++) {
sigLEDAvgAmp->GetEntry(i);
fTreeLEDAvgAmpVsTime->Fill();
}
fRunNumber = sig->GetRunNumber();
fStartTime = sig->GetStartTime();
fAmpCut = sig->GetAmpCut();
fReqFractionAboveAmpCutVal = sig->GetReqFractionAboveAmpCutVal();
fReqFractionAboveAmp = sig->GetReqFractionAboveAmp();
fAmpCutLEDRef = sig->GetAmpCutLEDRef();
fReqLEDRefAboveAmpCutVal = sig->GetReqLEDRefAboveAmpCutVal();
fHour = sig->GetHour();
fLatestHour = sig->GetLatestHour();
fUseAverage = sig->GetUseAverage();
fSecInAverage = sig->GetSecInAverage();
fDownscale = sig->GetDownscale();
fNEvents = sig->GetNEvents();
fNAcceptedEvents = sig->GetNAcceptedEvents();
return kTRUE;
}
Bool_t AliCaloCalibSignal::ProcessEvent(AliRawReader *rawReader)
{
AliCaloRawStreamV3 rawStream(rawReader, fCaloString, (AliAltroMapping**)fMapping);
if (fDetType == kEmCal) {
rawReader->Select("EMCAL", 0, AliEMCALGeoParams::fgkLastAltroDDL) ;
}
return ProcessEvent( &rawStream, rawReader->GetTimestamp() );
}
Bool_t AliCaloCalibSignal::ProcessEvent(AliCaloRawStreamV3 *in, UInt_t Timestamp)
{
if (!in) return kFALSE;
fNEvents++;
if ( (fNEvents%fDownscale)!=0 ) return kFALSE;
int iAmpValHighGain[fgkMaxTowers];
int iAmpValLowGain[fgkMaxTowers];
memset(iAmpValHighGain, 0, sizeof(iAmpValHighGain));
memset(iAmpValLowGain, 0, sizeof(iAmpValLowGain));
int iLEDAmpVal[fgkMaxRefs * 2];
memset(iLEDAmpVal, 0, sizeof(iLEDAmpVal));
int gain = 0;
int nLowChan = 0;
int nHighChan = 0;
int nLEDRefChan = 0;
int iTowerNum = 0;
int iRefNum = 0;
while (in->NextDDL()) {
while (in->NextChannel()) {
vector<AliCaloBunchInfo> bunchlist;
while (in->NextBunch()) {
bunchlist.push_back( AliCaloBunchInfo(in->GetStartTimeBin(), in->GetBunchLength(), in->GetSignals() ) );
}
if (bunchlist.size() == 0) continue;
gain = -1;
if ( in->IsLowGain() ) {
gain = 0;
}
else if ( in->IsHighGain() ) {
gain = 1;
}
else if ( in->IsLEDMonData() ) {
gain = in->GetRow();
}
else { continue; }
int arrayPos = in->GetModule();
if (arrayPos < 0 || arrayPos >= fModules) {
printf("AliCaloCalibSignal::ProcessEvent = Oh no: arrayPos = %i.\n", arrayPos);
return kFALSE;
}
AliCaloFitResults res = fRawAnalyzer->Evaluate( bunchlist, in->GetAltroCFG1(), in->GetAltroCFG2());
if ( in->IsHighGain() || in->IsLowGain() ) {
iTowerNum = GetTowerNum(arrayPos, in->GetColumn(), in->GetRow());
if (gain == 0) {
iAmpValLowGain[iTowerNum] = (int) res.GetAmp();
nLowChan++;
}
else if (gain==1) {
iAmpValHighGain[iTowerNum] = (int) res.GetAmp();
nHighChan++;
}
}
else if ( in->IsLEDMonData() ) {
iRefNum = GetRefNum(arrayPos, in->GetColumn(), gain);
iLEDAmpVal[iRefNum] = (int) res.GetAmp();
nLEDRefChan++;
}
}
}
in->Reset();
int checkResultArray[AliEMCALGeoParams::fgkEMCALModules * AliEMCALGeoParams::fgkEMCALCols];
for (int ia=0; ia<(AliEMCALGeoParams::fgkEMCALModules * AliEMCALGeoParams::fgkEMCALCols); ia++) {
checkResultArray[ia] = 1;
}
if (fReqFractionAboveAmp) {
bool ok = false;
if (nHighChan > 0) {
ok = CheckFractionAboveAmp(iAmpValHighGain, checkResultArray);
}
if (!ok) return false;
}
int checkResultArrayLEDRef[AliEMCALGeoParams::fgkEMCALModules * AliEMCALGeoParams::fgkEMCALLEDRefs];
for (int ia=0; ia<(AliEMCALGeoParams::fgkEMCALModules * AliEMCALGeoParams::fgkEMCALLEDRefs); ia++) {
checkResultArrayLEDRef[ia] = 1;
}
if (fReqLEDRefAboveAmpCutVal) {
bool ok = false;
if (nLEDRefChan > 0) {
ok = CheckLEDRefAboveAmp(iLEDAmpVal, checkResultArrayLEDRef);
}
if (!ok) return false;
}
fNAcceptedEvents++;
if (fStartTime == 0) {
fStartTime = Timestamp;
}
fHour = (Timestamp - fStartTime)/(double)fgkNumSecInHr;
if (fLatestHour < fHour) {
fLatestHour = fHour;
}
for(int i=0; i<fModules; i++){
for(int j=0; j<fColumns; j++) {
int iStrip = (i%2==0) ? j/2 : AliEMCALGeoParams::fgkEMCALLEDRefs - 1 - j/2;
if (checkResultArray[i*fColumns + j]>0 && checkResultArrayLEDRef[i*fLEDRefs + iStrip]>0) {
for(int k=0; k<fRows; k++){
iTowerNum = GetTowerNum(i, j, k);
if(iAmpValHighGain[iTowerNum]) {
fAmp = iAmpValHighGain[iTowerNum];
fChannelNum = GetChannelNum(i,j,k,1);
fTreeAmpVsTime->Fill();
fNHighGain[iTowerNum]++;
}
if(iAmpValLowGain[iTowerNum]) {
fAmp = iAmpValLowGain[iTowerNum];
fChannelNum = GetChannelNum(i,j,k,0);
fTreeAmpVsTime->Fill();
fNLowGain[iTowerNum]++;
}
}
}
}
for(int j=0; j<fLEDRefs; j++){
int iColFirst = (i%2==0) ? j*2 : (AliEMCALGeoParams::fgkEMCALLEDRefs - 1 - j)*2;
if ( ((checkResultArray[i*fColumns + iColFirst]>0) || (checkResultArray[i*fColumns + iColFirst + 1]>0)) &&
(checkResultArrayLEDRef[i*fLEDRefs + j]>0) ) {
for (gain=0; gain<2; gain++) {
fRefNum = GetRefNum(i, j, gain);
if (iLEDAmpVal[fRefNum]) {
fAmp = iLEDAmpVal[fRefNum];
fTreeLEDAmpVsTime->Fill();
fNRef[fRefNum]++;
}
}
}
}
}
return kTRUE;
}
Bool_t AliCaloCalibSignal::Save(TString fileName)
{
TFile destFile(fileName, "recreate");
if (destFile.IsZombie()) {
return kFALSE;
}
destFile.cd();
fTreeAmpVsTime->Write();
fTreeLEDAmpVsTime->Write();
if (fUseAverage) {
Analyze();
fTreeAvgAmpVsTime->Write();
fTreeLEDAvgAmpVsTime->Write();
}
destFile.Close();
return kTRUE;
}
Bool_t AliCaloCalibSignal::Analyze()
{
if (!fUseAverage) { return kFALSE; }
if (fTreeAvgAmpVsTime->GetEntries() > 0) {
fTreeAvgAmpVsTime->Reset();
}
int numProfBins = 0;
double timeMin = 0;
double timeMax = 0;
if (fSecInAverage > 0) {
numProfBins = (int)( (fLatestHour*fgkNumSecInHr)/fSecInAverage + 1 );
}
numProfBins += 2;
double binSize = 1.0*fSecInAverage / fgkNumSecInHr;
timeMin = - binSize;
timeMax = timeMin + numProfBins*binSize;
TProfile * profile[fgkMaxTowers*2];
memset(profile, 0, sizeof(profile));
const Int_t buffersize = 200;
char name[buffersize];
int iTowerNum = 0;
for (int i = 0; i<fModules; i++) {
for (int ic=0; ic<fColumns; ic++){
for (int ir=0; ir<fRows; ir++) {
iTowerNum = GetTowerNum(i, ic, ir);
if (fNHighGain[iTowerNum] > 0) {
fChannelNum = GetChannelNum(i, ic, ir, 1);
snprintf(name,buffersize,"profileChan%d", fChannelNum);
profile[fChannelNum] = new TProfile(name, name, numProfBins, timeMin, timeMax, "s");
}
if (fNLowGain[iTowerNum] > 0) {
fChannelNum = GetChannelNum(i, ic, ir, 0);
snprintf(name,buffersize,"profileChan%d", fChannelNum);
profile[fChannelNum] = new TProfile(name, name, numProfBins, timeMin, timeMax, "s");
}
}
}
}
fTreeAmpVsTime->SetBranchAddress("fChannelNum", &fChannelNum);
fTreeAmpVsTime->SetBranchAddress("fHour", &fHour);
fTreeAmpVsTime->SetBranchAddress("fAmp", &fAmp);
for (int ient=0; ient<fTreeAmpVsTime->GetEntries(); ient++) {
fTreeAmpVsTime->GetEntry(ient);
if (profile[fChannelNum]) {
profile[fChannelNum]->Fill(fHour, fAmp);
}
}
fTreeAvgAmpVsTime->SetBranchAddress("fChannelNum", &fChannelNum);
fTreeAvgAmpVsTime->SetBranchAddress("fHour", &fHour);
fTreeAvgAmpVsTime->SetBranchAddress("fAvgAmp", &fAvgAmp);
fTreeAvgAmpVsTime->SetBranchAddress("fRMS", &fRMS);
for (fChannelNum = 0; fChannelNum<(fgkMaxTowers*2); fChannelNum++) {
if (profile[fChannelNum]) {
if (profile[fChannelNum]->GetEntries() > 0) {
for(int it=0; it<numProfBins; it++) {
if (profile[fChannelNum]->GetBinEntries(it+1) > 0) {
fAvgAmp = profile[fChannelNum]->GetBinContent(it+1);
fHour = profile[fChannelNum]->GetBinCenter(it+1);
fRMS = profile[fChannelNum]->GetBinError(it+1);
fTreeAvgAmpVsTime->Fill();
}
}
}
}
}
TProfile * profileLED[fgkMaxRefs*2];
memset(profileLED, 0, sizeof(profileLED));
for (int i = 0; i<fModules; i++) {
for(int j=0; j<fLEDRefs; j++){
for (int gain=0; gain<2; gain++) {
fRefNum = GetRefNum(i, j, gain);
if (fNRef[fRefNum] > 0) {
snprintf(name, buffersize, "profileLEDRef%d", fRefNum);
profileLED[fRefNum] = new TProfile(name, name, numProfBins, timeMin, timeMax, "s");
}
}
}
}
fTreeLEDAmpVsTime->SetBranchAddress("fRefNum", &fRefNum);
fTreeLEDAmpVsTime->SetBranchAddress("fHour", &fHour);
fTreeLEDAmpVsTime->SetBranchAddress("fAmp", &fAmp);
for (int ient=0; ient<fTreeLEDAmpVsTime->GetEntries(); ient++) {
fTreeLEDAmpVsTime->GetEntry(ient);
if (profileLED[fRefNum]) {
profileLED[fRefNum]->Fill(fHour, fAmp);
}
}
fTreeLEDAvgAmpVsTime->SetBranchAddress("fRefNum", &fRefNum);
fTreeLEDAvgAmpVsTime->SetBranchAddress("fHour", &fHour);
fTreeLEDAvgAmpVsTime->SetBranchAddress("fAvgAmp", &fAvgAmp);
fTreeLEDAvgAmpVsTime->SetBranchAddress("fRMS", &fRMS);
for (fRefNum = 0; fRefNum<(fgkMaxRefs*2); fRefNum++) {
if (profileLED[fRefNum]) {
if (profileLED[fRefNum]->GetEntries() > 0) {
for(int it=0; it<numProfBins; it++) {
if (profileLED[fRefNum]->GetBinEntries(it+1) > 0) {
fAvgAmp = profileLED[fRefNum]->GetBinContent(it+1);
fHour = profileLED[fRefNum]->GetBinCenter(it+1);
fRMS = profileLED[fRefNum]->GetBinError(it+1);
fTreeLEDAvgAmpVsTime->Fill();
}
}
}
}
}
return kTRUE;
}
Bool_t AliCaloCalibSignal::DecodeChannelNum(const int chanId,
int *imod, int *icol, int *irow, int *igain) const
{
*igain = chanId/(fModules*fColumns*fRows);
*imod = (chanId/(fColumns*fRows)) % fModules;
*icol = (chanId/fRows) % fColumns;
*irow = chanId % fRows;
return kTRUE;
}
Bool_t AliCaloCalibSignal::DecodeRefNum(const int refId,
int *imod, int *istripMod, int *igain) const
{
*igain = refId/(fModules*fLEDRefs);
*imod = (refId/(fLEDRefs)) % fModules;
*istripMod = refId % fLEDRefs;
return kTRUE;
}
AliCaloCalibSignal.cxx:10 AliCaloCalibSignal.cxx:11 AliCaloCalibSignal.cxx:12 AliCaloCalibSignal.cxx:13 AliCaloCalibSignal.cxx:14 AliCaloCalibSignal.cxx:15 AliCaloCalibSignal.cxx:16 AliCaloCalibSignal.cxx:17 AliCaloCalibSignal.cxx:18 AliCaloCalibSignal.cxx:19 AliCaloCalibSignal.cxx:20 AliCaloCalibSignal.cxx:21 AliCaloCalibSignal.cxx:22 AliCaloCalibSignal.cxx:23 AliCaloCalibSignal.cxx:24 AliCaloCalibSignal.cxx:25 AliCaloCalibSignal.cxx:26 AliCaloCalibSignal.cxx:27 AliCaloCalibSignal.cxx:28 AliCaloCalibSignal.cxx:29 AliCaloCalibSignal.cxx:30 AliCaloCalibSignal.cxx:31 AliCaloCalibSignal.cxx:32 AliCaloCalibSignal.cxx:33 AliCaloCalibSignal.cxx:34 AliCaloCalibSignal.cxx:35 AliCaloCalibSignal.cxx:36 AliCaloCalibSignal.cxx:37 AliCaloCalibSignal.cxx:38 AliCaloCalibSignal.cxx:39 AliCaloCalibSignal.cxx:40 AliCaloCalibSignal.cxx:41 AliCaloCalibSignal.cxx:42 AliCaloCalibSignal.cxx:43 AliCaloCalibSignal.cxx:44 AliCaloCalibSignal.cxx:45 AliCaloCalibSignal.cxx:46 AliCaloCalibSignal.cxx:47 AliCaloCalibSignal.cxx:48 AliCaloCalibSignal.cxx:49 AliCaloCalibSignal.cxx:50 AliCaloCalibSignal.cxx:51 AliCaloCalibSignal.cxx:52 AliCaloCalibSignal.cxx:53 AliCaloCalibSignal.cxx:54 AliCaloCalibSignal.cxx:55 AliCaloCalibSignal.cxx:56 AliCaloCalibSignal.cxx:57 AliCaloCalibSignal.cxx:58 AliCaloCalibSignal.cxx:59 AliCaloCalibSignal.cxx:60 AliCaloCalibSignal.cxx:61 AliCaloCalibSignal.cxx:62 AliCaloCalibSignal.cxx:63 AliCaloCalibSignal.cxx:64 AliCaloCalibSignal.cxx:65 AliCaloCalibSignal.cxx:66 AliCaloCalibSignal.cxx:67 AliCaloCalibSignal.cxx:68 AliCaloCalibSignal.cxx:69 AliCaloCalibSignal.cxx:70 AliCaloCalibSignal.cxx:71 AliCaloCalibSignal.cxx:72 AliCaloCalibSignal.cxx:73 AliCaloCalibSignal.cxx:74 AliCaloCalibSignal.cxx:75 AliCaloCalibSignal.cxx:76 AliCaloCalibSignal.cxx:77 AliCaloCalibSignal.cxx:78 AliCaloCalibSignal.cxx:79 AliCaloCalibSignal.cxx:80 AliCaloCalibSignal.cxx:81 AliCaloCalibSignal.cxx:82 AliCaloCalibSignal.cxx:83 AliCaloCalibSignal.cxx:84 AliCaloCalibSignal.cxx:85 AliCaloCalibSignal.cxx:86 AliCaloCalibSignal.cxx:87 AliCaloCalibSignal.cxx:88 AliCaloCalibSignal.cxx:89 AliCaloCalibSignal.cxx:90 AliCaloCalibSignal.cxx:91 AliCaloCalibSignal.cxx:92 AliCaloCalibSignal.cxx:93 AliCaloCalibSignal.cxx:94 AliCaloCalibSignal.cxx:95 AliCaloCalibSignal.cxx:96 AliCaloCalibSignal.cxx:97 AliCaloCalibSignal.cxx:98 AliCaloCalibSignal.cxx:99 AliCaloCalibSignal.cxx:100 AliCaloCalibSignal.cxx:101 AliCaloCalibSignal.cxx:102 AliCaloCalibSignal.cxx:103 AliCaloCalibSignal.cxx:104 AliCaloCalibSignal.cxx:105 AliCaloCalibSignal.cxx:106 AliCaloCalibSignal.cxx:107 AliCaloCalibSignal.cxx:108 AliCaloCalibSignal.cxx:109 AliCaloCalibSignal.cxx:110 AliCaloCalibSignal.cxx:111 AliCaloCalibSignal.cxx:112 AliCaloCalibSignal.cxx:113 AliCaloCalibSignal.cxx:114 AliCaloCalibSignal.cxx:115 AliCaloCalibSignal.cxx:116 AliCaloCalibSignal.cxx:117 AliCaloCalibSignal.cxx:118 AliCaloCalibSignal.cxx:119 AliCaloCalibSignal.cxx:120 AliCaloCalibSignal.cxx:121 AliCaloCalibSignal.cxx:122 AliCaloCalibSignal.cxx:123 AliCaloCalibSignal.cxx:124 AliCaloCalibSignal.cxx:125 AliCaloCalibSignal.cxx:126 AliCaloCalibSignal.cxx:127 AliCaloCalibSignal.cxx:128 AliCaloCalibSignal.cxx:129 AliCaloCalibSignal.cxx:130 AliCaloCalibSignal.cxx:131 AliCaloCalibSignal.cxx:132 AliCaloCalibSignal.cxx:133 AliCaloCalibSignal.cxx:134 AliCaloCalibSignal.cxx:135 AliCaloCalibSignal.cxx:136 AliCaloCalibSignal.cxx:137 AliCaloCalibSignal.cxx:138 AliCaloCalibSignal.cxx:139 AliCaloCalibSignal.cxx:140 AliCaloCalibSignal.cxx:141 AliCaloCalibSignal.cxx:142 AliCaloCalibSignal.cxx:143 AliCaloCalibSignal.cxx:144 AliCaloCalibSignal.cxx:145 AliCaloCalibSignal.cxx:146 AliCaloCalibSignal.cxx:147 AliCaloCalibSignal.cxx:148 AliCaloCalibSignal.cxx:149 AliCaloCalibSignal.cxx:150 AliCaloCalibSignal.cxx:151 AliCaloCalibSignal.cxx:152 AliCaloCalibSignal.cxx:153 AliCaloCalibSignal.cxx:154 AliCaloCalibSignal.cxx:155 AliCaloCalibSignal.cxx:156 AliCaloCalibSignal.cxx:157 AliCaloCalibSignal.cxx:158 AliCaloCalibSignal.cxx:159 AliCaloCalibSignal.cxx:160 AliCaloCalibSignal.cxx:161 AliCaloCalibSignal.cxx:162 AliCaloCalibSignal.cxx:163 AliCaloCalibSignal.cxx:164 AliCaloCalibSignal.cxx:165 AliCaloCalibSignal.cxx:166 AliCaloCalibSignal.cxx:167 AliCaloCalibSignal.cxx:168 AliCaloCalibSignal.cxx:169 AliCaloCalibSignal.cxx:170 AliCaloCalibSignal.cxx:171 AliCaloCalibSignal.cxx:172 AliCaloCalibSignal.cxx:173 AliCaloCalibSignal.cxx:174 AliCaloCalibSignal.cxx:175 AliCaloCalibSignal.cxx:176 AliCaloCalibSignal.cxx:177 AliCaloCalibSignal.cxx:178 AliCaloCalibSignal.cxx:179 AliCaloCalibSignal.cxx:180 AliCaloCalibSignal.cxx:181 AliCaloCalibSignal.cxx:182 AliCaloCalibSignal.cxx:183 AliCaloCalibSignal.cxx:184 AliCaloCalibSignal.cxx:185 AliCaloCalibSignal.cxx:186 AliCaloCalibSignal.cxx:187 AliCaloCalibSignal.cxx:188 AliCaloCalibSignal.cxx:189 AliCaloCalibSignal.cxx:190 AliCaloCalibSignal.cxx:191 AliCaloCalibSignal.cxx:192 AliCaloCalibSignal.cxx:193 AliCaloCalibSignal.cxx:194 AliCaloCalibSignal.cxx:195 AliCaloCalibSignal.cxx:196 AliCaloCalibSignal.cxx:197 AliCaloCalibSignal.cxx:198 AliCaloCalibSignal.cxx:199 AliCaloCalibSignal.cxx:200 AliCaloCalibSignal.cxx:201 AliCaloCalibSignal.cxx:202 AliCaloCalibSignal.cxx:203 AliCaloCalibSignal.cxx:204 AliCaloCalibSignal.cxx:205 AliCaloCalibSignal.cxx:206 AliCaloCalibSignal.cxx:207 AliCaloCalibSignal.cxx:208 AliCaloCalibSignal.cxx:209 AliCaloCalibSignal.cxx:210 AliCaloCalibSignal.cxx:211 AliCaloCalibSignal.cxx:212 AliCaloCalibSignal.cxx:213 AliCaloCalibSignal.cxx:214 AliCaloCalibSignal.cxx:215 AliCaloCalibSignal.cxx:216 AliCaloCalibSignal.cxx:217 AliCaloCalibSignal.cxx:218 AliCaloCalibSignal.cxx:219 AliCaloCalibSignal.cxx:220 AliCaloCalibSignal.cxx:221 AliCaloCalibSignal.cxx:222 AliCaloCalibSignal.cxx:223 AliCaloCalibSignal.cxx:224 AliCaloCalibSignal.cxx:225 AliCaloCalibSignal.cxx:226 AliCaloCalibSignal.cxx:227 AliCaloCalibSignal.cxx:228 AliCaloCalibSignal.cxx:229 AliCaloCalibSignal.cxx:230 AliCaloCalibSignal.cxx:231 AliCaloCalibSignal.cxx:232 AliCaloCalibSignal.cxx:233 AliCaloCalibSignal.cxx:234 AliCaloCalibSignal.cxx:235 AliCaloCalibSignal.cxx:236 AliCaloCalibSignal.cxx:237 AliCaloCalibSignal.cxx:238 AliCaloCalibSignal.cxx:239 AliCaloCalibSignal.cxx:240 AliCaloCalibSignal.cxx:241 AliCaloCalibSignal.cxx:242 AliCaloCalibSignal.cxx:243 AliCaloCalibSignal.cxx:244 AliCaloCalibSignal.cxx:245 AliCaloCalibSignal.cxx:246 AliCaloCalibSignal.cxx:247 AliCaloCalibSignal.cxx:248 AliCaloCalibSignal.cxx:249 AliCaloCalibSignal.cxx:250 AliCaloCalibSignal.cxx:251 AliCaloCalibSignal.cxx:252 AliCaloCalibSignal.cxx:253 AliCaloCalibSignal.cxx:254 AliCaloCalibSignal.cxx:255 AliCaloCalibSignal.cxx:256 AliCaloCalibSignal.cxx:257 AliCaloCalibSignal.cxx:258 AliCaloCalibSignal.cxx:259 AliCaloCalibSignal.cxx:260 AliCaloCalibSignal.cxx:261 AliCaloCalibSignal.cxx:262 AliCaloCalibSignal.cxx:263 AliCaloCalibSignal.cxx:264 AliCaloCalibSignal.cxx:265 AliCaloCalibSignal.cxx:266 AliCaloCalibSignal.cxx:267 AliCaloCalibSignal.cxx:268 AliCaloCalibSignal.cxx:269 AliCaloCalibSignal.cxx:270 AliCaloCalibSignal.cxx:271 AliCaloCalibSignal.cxx:272 AliCaloCalibSignal.cxx:273 AliCaloCalibSignal.cxx:274 AliCaloCalibSignal.cxx:275 AliCaloCalibSignal.cxx:276 AliCaloCalibSignal.cxx:277 AliCaloCalibSignal.cxx:278 AliCaloCalibSignal.cxx:279 AliCaloCalibSignal.cxx:280 AliCaloCalibSignal.cxx:281 AliCaloCalibSignal.cxx:282 AliCaloCalibSignal.cxx:283 AliCaloCalibSignal.cxx:284 AliCaloCalibSignal.cxx:285 AliCaloCalibSignal.cxx:286 AliCaloCalibSignal.cxx:287 AliCaloCalibSignal.cxx:288 AliCaloCalibSignal.cxx:289 AliCaloCalibSignal.cxx:290 AliCaloCalibSignal.cxx:291 AliCaloCalibSignal.cxx:292 AliCaloCalibSignal.cxx:293 AliCaloCalibSignal.cxx:294 AliCaloCalibSignal.cxx:295 AliCaloCalibSignal.cxx:296 AliCaloCalibSignal.cxx:297 AliCaloCalibSignal.cxx:298 AliCaloCalibSignal.cxx:299 AliCaloCalibSignal.cxx:300 AliCaloCalibSignal.cxx:301 AliCaloCalibSignal.cxx:302 AliCaloCalibSignal.cxx:303 AliCaloCalibSignal.cxx:304 AliCaloCalibSignal.cxx:305 AliCaloCalibSignal.cxx:306 AliCaloCalibSignal.cxx:307 AliCaloCalibSignal.cxx:308 AliCaloCalibSignal.cxx:309 AliCaloCalibSignal.cxx:310 AliCaloCalibSignal.cxx:311 AliCaloCalibSignal.cxx:312 AliCaloCalibSignal.cxx:313 AliCaloCalibSignal.cxx:314 AliCaloCalibSignal.cxx:315 AliCaloCalibSignal.cxx:316 AliCaloCalibSignal.cxx:317 AliCaloCalibSignal.cxx:318 AliCaloCalibSignal.cxx:319 AliCaloCalibSignal.cxx:320 AliCaloCalibSignal.cxx:321 AliCaloCalibSignal.cxx:322 AliCaloCalibSignal.cxx:323 AliCaloCalibSignal.cxx:324 AliCaloCalibSignal.cxx:325 AliCaloCalibSignal.cxx:326 AliCaloCalibSignal.cxx:327 AliCaloCalibSignal.cxx:328 AliCaloCalibSignal.cxx:329 AliCaloCalibSignal.cxx:330 AliCaloCalibSignal.cxx:331 AliCaloCalibSignal.cxx:332 AliCaloCalibSignal.cxx:333 AliCaloCalibSignal.cxx:334 AliCaloCalibSignal.cxx:335 AliCaloCalibSignal.cxx:336 AliCaloCalibSignal.cxx:337 AliCaloCalibSignal.cxx:338 AliCaloCalibSignal.cxx:339 AliCaloCalibSignal.cxx:340 AliCaloCalibSignal.cxx:341 AliCaloCalibSignal.cxx:342 AliCaloCalibSignal.cxx:343 AliCaloCalibSignal.cxx:344 AliCaloCalibSignal.cxx:345 AliCaloCalibSignal.cxx:346 AliCaloCalibSignal.cxx:347 AliCaloCalibSignal.cxx:348 AliCaloCalibSignal.cxx:349 AliCaloCalibSignal.cxx:350 AliCaloCalibSignal.cxx:351 AliCaloCalibSignal.cxx:352 AliCaloCalibSignal.cxx:353 AliCaloCalibSignal.cxx:354 AliCaloCalibSignal.cxx:355 AliCaloCalibSignal.cxx:356 AliCaloCalibSignal.cxx:357 AliCaloCalibSignal.cxx:358 AliCaloCalibSignal.cxx:359 AliCaloCalibSignal.cxx:360 AliCaloCalibSignal.cxx:361 AliCaloCalibSignal.cxx:362 AliCaloCalibSignal.cxx:363 AliCaloCalibSignal.cxx:364 AliCaloCalibSignal.cxx:365 AliCaloCalibSignal.cxx:366 AliCaloCalibSignal.cxx:367 AliCaloCalibSignal.cxx:368 AliCaloCalibSignal.cxx:369 AliCaloCalibSignal.cxx:370 AliCaloCalibSignal.cxx:371 AliCaloCalibSignal.cxx:372 AliCaloCalibSignal.cxx:373 AliCaloCalibSignal.cxx:374 AliCaloCalibSignal.cxx:375 AliCaloCalibSignal.cxx:376 AliCaloCalibSignal.cxx:377 AliCaloCalibSignal.cxx:378 AliCaloCalibSignal.cxx:379 AliCaloCalibSignal.cxx:380 AliCaloCalibSignal.cxx:381 AliCaloCalibSignal.cxx:382 AliCaloCalibSignal.cxx:383 AliCaloCalibSignal.cxx:384 AliCaloCalibSignal.cxx:385 AliCaloCalibSignal.cxx:386 AliCaloCalibSignal.cxx:387 AliCaloCalibSignal.cxx:388 AliCaloCalibSignal.cxx:389 AliCaloCalibSignal.cxx:390 AliCaloCalibSignal.cxx:391 AliCaloCalibSignal.cxx:392 AliCaloCalibSignal.cxx:393 AliCaloCalibSignal.cxx:394 AliCaloCalibSignal.cxx:395 AliCaloCalibSignal.cxx:396 AliCaloCalibSignal.cxx:397 AliCaloCalibSignal.cxx:398 AliCaloCalibSignal.cxx:399 AliCaloCalibSignal.cxx:400 AliCaloCalibSignal.cxx:401 AliCaloCalibSignal.cxx:402 AliCaloCalibSignal.cxx:403 AliCaloCalibSignal.cxx:404 AliCaloCalibSignal.cxx:405 AliCaloCalibSignal.cxx:406 AliCaloCalibSignal.cxx:407 AliCaloCalibSignal.cxx:408 AliCaloCalibSignal.cxx:409 AliCaloCalibSignal.cxx:410 AliCaloCalibSignal.cxx:411 AliCaloCalibSignal.cxx:412 AliCaloCalibSignal.cxx:413 AliCaloCalibSignal.cxx:414 AliCaloCalibSignal.cxx:415 AliCaloCalibSignal.cxx:416 AliCaloCalibSignal.cxx:417 AliCaloCalibSignal.cxx:418 AliCaloCalibSignal.cxx:419 AliCaloCalibSignal.cxx:420 AliCaloCalibSignal.cxx:421 AliCaloCalibSignal.cxx:422 AliCaloCalibSignal.cxx:423 AliCaloCalibSignal.cxx:424 AliCaloCalibSignal.cxx:425 AliCaloCalibSignal.cxx:426 AliCaloCalibSignal.cxx:427 AliCaloCalibSignal.cxx:428 AliCaloCalibSignal.cxx:429 AliCaloCalibSignal.cxx:430 AliCaloCalibSignal.cxx:431 AliCaloCalibSignal.cxx:432 AliCaloCalibSignal.cxx:433 AliCaloCalibSignal.cxx:434 AliCaloCalibSignal.cxx:435 AliCaloCalibSignal.cxx:436 AliCaloCalibSignal.cxx:437 AliCaloCalibSignal.cxx:438 AliCaloCalibSignal.cxx:439 AliCaloCalibSignal.cxx:440 AliCaloCalibSignal.cxx:441 AliCaloCalibSignal.cxx:442 AliCaloCalibSignal.cxx:443 AliCaloCalibSignal.cxx:444 AliCaloCalibSignal.cxx:445 AliCaloCalibSignal.cxx:446 AliCaloCalibSignal.cxx:447 AliCaloCalibSignal.cxx:448 AliCaloCalibSignal.cxx:449 AliCaloCalibSignal.cxx:450 AliCaloCalibSignal.cxx:451 AliCaloCalibSignal.cxx:452 AliCaloCalibSignal.cxx:453 AliCaloCalibSignal.cxx:454 AliCaloCalibSignal.cxx:455 AliCaloCalibSignal.cxx:456 AliCaloCalibSignal.cxx:457 AliCaloCalibSignal.cxx:458 AliCaloCalibSignal.cxx:459 AliCaloCalibSignal.cxx:460 AliCaloCalibSignal.cxx:461 AliCaloCalibSignal.cxx:462 AliCaloCalibSignal.cxx:463 AliCaloCalibSignal.cxx:464 AliCaloCalibSignal.cxx:465 AliCaloCalibSignal.cxx:466 AliCaloCalibSignal.cxx:467 AliCaloCalibSignal.cxx:468 AliCaloCalibSignal.cxx:469 AliCaloCalibSignal.cxx:470 AliCaloCalibSignal.cxx:471 AliCaloCalibSignal.cxx:472 AliCaloCalibSignal.cxx:473 AliCaloCalibSignal.cxx:474 AliCaloCalibSignal.cxx:475 AliCaloCalibSignal.cxx:476 AliCaloCalibSignal.cxx:477 AliCaloCalibSignal.cxx:478 AliCaloCalibSignal.cxx:479 AliCaloCalibSignal.cxx:480 AliCaloCalibSignal.cxx:481 AliCaloCalibSignal.cxx:482 AliCaloCalibSignal.cxx:483 AliCaloCalibSignal.cxx:484 AliCaloCalibSignal.cxx:485 AliCaloCalibSignal.cxx:486 AliCaloCalibSignal.cxx:487 AliCaloCalibSignal.cxx:488 AliCaloCalibSignal.cxx:489 AliCaloCalibSignal.cxx:490 AliCaloCalibSignal.cxx:491 AliCaloCalibSignal.cxx:492 AliCaloCalibSignal.cxx:493 AliCaloCalibSignal.cxx:494 AliCaloCalibSignal.cxx:495 AliCaloCalibSignal.cxx:496 AliCaloCalibSignal.cxx:497 AliCaloCalibSignal.cxx:498 AliCaloCalibSignal.cxx:499 AliCaloCalibSignal.cxx:500 AliCaloCalibSignal.cxx:501 AliCaloCalibSignal.cxx:502 AliCaloCalibSignal.cxx:503 AliCaloCalibSignal.cxx:504 AliCaloCalibSignal.cxx:505 AliCaloCalibSignal.cxx:506 AliCaloCalibSignal.cxx:507 AliCaloCalibSignal.cxx:508 AliCaloCalibSignal.cxx:509 AliCaloCalibSignal.cxx:510 AliCaloCalibSignal.cxx:511 AliCaloCalibSignal.cxx:512 AliCaloCalibSignal.cxx:513 AliCaloCalibSignal.cxx:514 AliCaloCalibSignal.cxx:515 AliCaloCalibSignal.cxx:516 AliCaloCalibSignal.cxx:517 AliCaloCalibSignal.cxx:518 AliCaloCalibSignal.cxx:519 AliCaloCalibSignal.cxx:520 AliCaloCalibSignal.cxx:521 AliCaloCalibSignal.cxx:522 AliCaloCalibSignal.cxx:523 AliCaloCalibSignal.cxx:524 AliCaloCalibSignal.cxx:525 AliCaloCalibSignal.cxx:526 AliCaloCalibSignal.cxx:527 AliCaloCalibSignal.cxx:528 AliCaloCalibSignal.cxx:529 AliCaloCalibSignal.cxx:530 AliCaloCalibSignal.cxx:531 AliCaloCalibSignal.cxx:532 AliCaloCalibSignal.cxx:533 AliCaloCalibSignal.cxx:534 AliCaloCalibSignal.cxx:535 AliCaloCalibSignal.cxx:536 AliCaloCalibSignal.cxx:537 AliCaloCalibSignal.cxx:538 AliCaloCalibSignal.cxx:539 AliCaloCalibSignal.cxx:540 AliCaloCalibSignal.cxx:541 AliCaloCalibSignal.cxx:542 AliCaloCalibSignal.cxx:543 AliCaloCalibSignal.cxx:544 AliCaloCalibSignal.cxx:545 AliCaloCalibSignal.cxx:546 AliCaloCalibSignal.cxx:547 AliCaloCalibSignal.cxx:548 AliCaloCalibSignal.cxx:549 AliCaloCalibSignal.cxx:550 AliCaloCalibSignal.cxx:551 AliCaloCalibSignal.cxx:552 AliCaloCalibSignal.cxx:553 AliCaloCalibSignal.cxx:554 AliCaloCalibSignal.cxx:555 AliCaloCalibSignal.cxx:556 AliCaloCalibSignal.cxx:557 AliCaloCalibSignal.cxx:558 AliCaloCalibSignal.cxx:559 AliCaloCalibSignal.cxx:560 AliCaloCalibSignal.cxx:561 AliCaloCalibSignal.cxx:562 AliCaloCalibSignal.cxx:563 AliCaloCalibSignal.cxx:564 AliCaloCalibSignal.cxx:565 AliCaloCalibSignal.cxx:566 AliCaloCalibSignal.cxx:567 AliCaloCalibSignal.cxx:568 AliCaloCalibSignal.cxx:569 AliCaloCalibSignal.cxx:570 AliCaloCalibSignal.cxx:571 AliCaloCalibSignal.cxx:572 AliCaloCalibSignal.cxx:573 AliCaloCalibSignal.cxx:574 AliCaloCalibSignal.cxx:575 AliCaloCalibSignal.cxx:576 AliCaloCalibSignal.cxx:577 AliCaloCalibSignal.cxx:578 AliCaloCalibSignal.cxx:579 AliCaloCalibSignal.cxx:580 AliCaloCalibSignal.cxx:581 AliCaloCalibSignal.cxx:582 AliCaloCalibSignal.cxx:583 AliCaloCalibSignal.cxx:584 AliCaloCalibSignal.cxx:585 AliCaloCalibSignal.cxx:586 AliCaloCalibSignal.cxx:587 AliCaloCalibSignal.cxx:588 AliCaloCalibSignal.cxx:589 AliCaloCalibSignal.cxx:590 AliCaloCalibSignal.cxx:591 AliCaloCalibSignal.cxx:592 AliCaloCalibSignal.cxx:593 AliCaloCalibSignal.cxx:594 AliCaloCalibSignal.cxx:595 AliCaloCalibSignal.cxx:596 AliCaloCalibSignal.cxx:597 AliCaloCalibSignal.cxx:598 AliCaloCalibSignal.cxx:599 AliCaloCalibSignal.cxx:600 AliCaloCalibSignal.cxx:601 AliCaloCalibSignal.cxx:602 AliCaloCalibSignal.cxx:603 AliCaloCalibSignal.cxx:604 AliCaloCalibSignal.cxx:605 AliCaloCalibSignal.cxx:606 AliCaloCalibSignal.cxx:607 AliCaloCalibSignal.cxx:608 AliCaloCalibSignal.cxx:609 AliCaloCalibSignal.cxx:610 AliCaloCalibSignal.cxx:611 AliCaloCalibSignal.cxx:612 AliCaloCalibSignal.cxx:613 AliCaloCalibSignal.cxx:614 AliCaloCalibSignal.cxx:615 AliCaloCalibSignal.cxx:616 AliCaloCalibSignal.cxx:617 AliCaloCalibSignal.cxx:618 AliCaloCalibSignal.cxx:619 AliCaloCalibSignal.cxx:620 AliCaloCalibSignal.cxx:621 AliCaloCalibSignal.cxx:622 AliCaloCalibSignal.cxx:623 AliCaloCalibSignal.cxx:624 AliCaloCalibSignal.cxx:625 AliCaloCalibSignal.cxx:626 AliCaloCalibSignal.cxx:627 AliCaloCalibSignal.cxx:628 AliCaloCalibSignal.cxx:629 AliCaloCalibSignal.cxx:630 AliCaloCalibSignal.cxx:631 AliCaloCalibSignal.cxx:632 AliCaloCalibSignal.cxx:633 AliCaloCalibSignal.cxx:634 AliCaloCalibSignal.cxx:635 AliCaloCalibSignal.cxx:636 AliCaloCalibSignal.cxx:637 AliCaloCalibSignal.cxx:638 AliCaloCalibSignal.cxx:639 AliCaloCalibSignal.cxx:640 AliCaloCalibSignal.cxx:641 AliCaloCalibSignal.cxx:642 AliCaloCalibSignal.cxx:643 AliCaloCalibSignal.cxx:644 AliCaloCalibSignal.cxx:645 AliCaloCalibSignal.cxx:646 AliCaloCalibSignal.cxx:647 AliCaloCalibSignal.cxx:648 AliCaloCalibSignal.cxx:649 AliCaloCalibSignal.cxx:650 AliCaloCalibSignal.cxx:651 AliCaloCalibSignal.cxx:652 AliCaloCalibSignal.cxx:653 AliCaloCalibSignal.cxx:654 AliCaloCalibSignal.cxx:655 AliCaloCalibSignal.cxx:656 AliCaloCalibSignal.cxx:657 AliCaloCalibSignal.cxx:658 AliCaloCalibSignal.cxx:659 AliCaloCalibSignal.cxx:660 AliCaloCalibSignal.cxx:661 AliCaloCalibSignal.cxx:662 AliCaloCalibSignal.cxx:663 AliCaloCalibSignal.cxx:664 AliCaloCalibSignal.cxx:665 AliCaloCalibSignal.cxx:666 AliCaloCalibSignal.cxx:667 AliCaloCalibSignal.cxx:668 AliCaloCalibSignal.cxx:669 AliCaloCalibSignal.cxx:670 AliCaloCalibSignal.cxx:671 AliCaloCalibSignal.cxx:672 AliCaloCalibSignal.cxx:673 AliCaloCalibSignal.cxx:674 AliCaloCalibSignal.cxx:675 AliCaloCalibSignal.cxx:676 AliCaloCalibSignal.cxx:677 AliCaloCalibSignal.cxx:678 AliCaloCalibSignal.cxx:679 AliCaloCalibSignal.cxx:680 AliCaloCalibSignal.cxx:681 AliCaloCalibSignal.cxx:682 AliCaloCalibSignal.cxx:683 AliCaloCalibSignal.cxx:684 AliCaloCalibSignal.cxx:685 AliCaloCalibSignal.cxx:686 AliCaloCalibSignal.cxx:687 AliCaloCalibSignal.cxx:688 AliCaloCalibSignal.cxx:689 AliCaloCalibSignal.cxx:690 AliCaloCalibSignal.cxx:691 AliCaloCalibSignal.cxx:692 AliCaloCalibSignal.cxx:693 AliCaloCalibSignal.cxx:694 AliCaloCalibSignal.cxx:695 AliCaloCalibSignal.cxx:696 AliCaloCalibSignal.cxx:697 AliCaloCalibSignal.cxx:698 AliCaloCalibSignal.cxx:699 AliCaloCalibSignal.cxx:700 AliCaloCalibSignal.cxx:701 AliCaloCalibSignal.cxx:702 AliCaloCalibSignal.cxx:703 AliCaloCalibSignal.cxx:704 AliCaloCalibSignal.cxx:705 AliCaloCalibSignal.cxx:706 AliCaloCalibSignal.cxx:707 AliCaloCalibSignal.cxx:708 AliCaloCalibSignal.cxx:709 AliCaloCalibSignal.cxx:710 AliCaloCalibSignal.cxx:711 AliCaloCalibSignal.cxx:712 AliCaloCalibSignal.cxx:713 AliCaloCalibSignal.cxx:714 AliCaloCalibSignal.cxx:715 AliCaloCalibSignal.cxx:716 AliCaloCalibSignal.cxx:717 AliCaloCalibSignal.cxx:718 AliCaloCalibSignal.cxx:719 AliCaloCalibSignal.cxx:720 AliCaloCalibSignal.cxx:721 AliCaloCalibSignal.cxx:722 AliCaloCalibSignal.cxx:723 AliCaloCalibSignal.cxx:724 AliCaloCalibSignal.cxx:725 AliCaloCalibSignal.cxx:726 AliCaloCalibSignal.cxx:727 AliCaloCalibSignal.cxx:728 AliCaloCalibSignal.cxx:729 AliCaloCalibSignal.cxx:730 AliCaloCalibSignal.cxx:731 AliCaloCalibSignal.cxx:732 AliCaloCalibSignal.cxx:733 AliCaloCalibSignal.cxx:734 AliCaloCalibSignal.cxx:735 AliCaloCalibSignal.cxx:736 AliCaloCalibSignal.cxx:737 AliCaloCalibSignal.cxx:738 AliCaloCalibSignal.cxx:739 AliCaloCalibSignal.cxx:740 AliCaloCalibSignal.cxx:741 AliCaloCalibSignal.cxx:742 AliCaloCalibSignal.cxx:743 AliCaloCalibSignal.cxx:744 AliCaloCalibSignal.cxx:745 AliCaloCalibSignal.cxx:746 AliCaloCalibSignal.cxx:747 AliCaloCalibSignal.cxx:748 AliCaloCalibSignal.cxx:749 AliCaloCalibSignal.cxx:750 AliCaloCalibSignal.cxx:751 AliCaloCalibSignal.cxx:752 AliCaloCalibSignal.cxx:753 AliCaloCalibSignal.cxx:754 AliCaloCalibSignal.cxx:755 AliCaloCalibSignal.cxx:756 AliCaloCalibSignal.cxx:757 AliCaloCalibSignal.cxx:758 AliCaloCalibSignal.cxx:759 AliCaloCalibSignal.cxx:760 AliCaloCalibSignal.cxx:761 AliCaloCalibSignal.cxx:762 AliCaloCalibSignal.cxx:763 AliCaloCalibSignal.cxx:764 AliCaloCalibSignal.cxx:765 AliCaloCalibSignal.cxx:766 AliCaloCalibSignal.cxx:767 AliCaloCalibSignal.cxx:768 AliCaloCalibSignal.cxx:769 AliCaloCalibSignal.cxx:770 AliCaloCalibSignal.cxx:771 AliCaloCalibSignal.cxx:772 AliCaloCalibSignal.cxx:773 AliCaloCalibSignal.cxx:774 AliCaloCalibSignal.cxx:775 AliCaloCalibSignal.cxx:776 AliCaloCalibSignal.cxx:777 AliCaloCalibSignal.cxx:778 AliCaloCalibSignal.cxx:779 AliCaloCalibSignal.cxx:780 AliCaloCalibSignal.cxx:781 AliCaloCalibSignal.cxx:782 AliCaloCalibSignal.cxx:783 AliCaloCalibSignal.cxx:784 AliCaloCalibSignal.cxx:785 AliCaloCalibSignal.cxx:786 AliCaloCalibSignal.cxx:787 AliCaloCalibSignal.cxx:788 AliCaloCalibSignal.cxx:789 AliCaloCalibSignal.cxx:790 AliCaloCalibSignal.cxx:791 AliCaloCalibSignal.cxx:792 AliCaloCalibSignal.cxx:793 AliCaloCalibSignal.cxx:794 AliCaloCalibSignal.cxx:795 AliCaloCalibSignal.cxx:796 AliCaloCalibSignal.cxx:797 AliCaloCalibSignal.cxx:798 AliCaloCalibSignal.cxx:799 AliCaloCalibSignal.cxx:800 AliCaloCalibSignal.cxx:801 AliCaloCalibSignal.cxx:802 AliCaloCalibSignal.cxx:803 AliCaloCalibSignal.cxx:804 AliCaloCalibSignal.cxx:805 AliCaloCalibSignal.cxx:806 AliCaloCalibSignal.cxx:807 AliCaloCalibSignal.cxx:808 AliCaloCalibSignal.cxx:809 AliCaloCalibSignal.cxx:810 AliCaloCalibSignal.cxx:811 AliCaloCalibSignal.cxx:812 AliCaloCalibSignal.cxx:813 AliCaloCalibSignal.cxx:814 AliCaloCalibSignal.cxx:815 AliCaloCalibSignal.cxx:816 AliCaloCalibSignal.cxx:817 AliCaloCalibSignal.cxx:818 AliCaloCalibSignal.cxx:819 AliCaloCalibSignal.cxx:820 AliCaloCalibSignal.cxx:821 AliCaloCalibSignal.cxx:822 AliCaloCalibSignal.cxx:823 AliCaloCalibSignal.cxx:824 AliCaloCalibSignal.cxx:825 AliCaloCalibSignal.cxx:826 AliCaloCalibSignal.cxx:827 AliCaloCalibSignal.cxx:828 AliCaloCalibSignal.cxx:829 AliCaloCalibSignal.cxx:830 AliCaloCalibSignal.cxx:831 AliCaloCalibSignal.cxx:832 AliCaloCalibSignal.cxx:833 AliCaloCalibSignal.cxx:834 AliCaloCalibSignal.cxx:835 AliCaloCalibSignal.cxx:836 AliCaloCalibSignal.cxx:837 AliCaloCalibSignal.cxx:838 AliCaloCalibSignal.cxx:839 AliCaloCalibSignal.cxx:840 AliCaloCalibSignal.cxx:841 AliCaloCalibSignal.cxx:842 AliCaloCalibSignal.cxx:843 AliCaloCalibSignal.cxx:844 AliCaloCalibSignal.cxx:845 AliCaloCalibSignal.cxx:846 AliCaloCalibSignal.cxx:847 AliCaloCalibSignal.cxx:848 AliCaloCalibSignal.cxx:849 AliCaloCalibSignal.cxx:850 AliCaloCalibSignal.cxx:851 AliCaloCalibSignal.cxx:852 AliCaloCalibSignal.cxx:853 AliCaloCalibSignal.cxx:854 AliCaloCalibSignal.cxx:855 AliCaloCalibSignal.cxx:856 AliCaloCalibSignal.cxx:857 AliCaloCalibSignal.cxx:858 AliCaloCalibSignal.cxx:859 AliCaloCalibSignal.cxx:860 AliCaloCalibSignal.cxx:861 AliCaloCalibSignal.cxx:862 AliCaloCalibSignal.cxx:863 AliCaloCalibSignal.cxx:864 AliCaloCalibSignal.cxx:865 AliCaloCalibSignal.cxx:866 AliCaloCalibSignal.cxx:867 AliCaloCalibSignal.cxx:868 AliCaloCalibSignal.cxx:869 AliCaloCalibSignal.cxx:870 AliCaloCalibSignal.cxx:871 AliCaloCalibSignal.cxx:872 AliCaloCalibSignal.cxx:873 AliCaloCalibSignal.cxx:874 AliCaloCalibSignal.cxx:875 AliCaloCalibSignal.cxx:876 AliCaloCalibSignal.cxx:877 AliCaloCalibSignal.cxx:878 AliCaloCalibSignal.cxx:879 AliCaloCalibSignal.cxx:880 AliCaloCalibSignal.cxx:881 AliCaloCalibSignal.cxx:882 AliCaloCalibSignal.cxx:883 AliCaloCalibSignal.cxx:884 AliCaloCalibSignal.cxx:885 AliCaloCalibSignal.cxx:886 AliCaloCalibSignal.cxx:887 AliCaloCalibSignal.cxx:888 AliCaloCalibSignal.cxx:889 AliCaloCalibSignal.cxx:890 AliCaloCalibSignal.cxx:891 AliCaloCalibSignal.cxx:892 AliCaloCalibSignal.cxx:893 AliCaloCalibSignal.cxx:894 AliCaloCalibSignal.cxx:895 AliCaloCalibSignal.cxx:896 AliCaloCalibSignal.cxx:897 AliCaloCalibSignal.cxx:898 AliCaloCalibSignal.cxx:899 AliCaloCalibSignal.cxx:900 AliCaloCalibSignal.cxx:901 AliCaloCalibSignal.cxx:902 AliCaloCalibSignal.cxx:903 AliCaloCalibSignal.cxx:904 AliCaloCalibSignal.cxx:905 AliCaloCalibSignal.cxx:906 AliCaloCalibSignal.cxx:907 AliCaloCalibSignal.cxx:908 AliCaloCalibSignal.cxx:909 AliCaloCalibSignal.cxx:910 AliCaloCalibSignal.cxx:911 AliCaloCalibSignal.cxx:912 AliCaloCalibSignal.cxx:913 AliCaloCalibSignal.cxx:914 AliCaloCalibSignal.cxx:915