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$

#include "AliMUONCalibParamNI.h"

#include "AliLog.h"

#include "Riostream.h"
#include "TMath.h"
#include "TString.h"

//-----------------------------------------------------------------------------
/// \class AliMUONCalibParamNI
///
/// Handle the case of N integer parameters per channel.
///
/// Almost the same class as AliMUONCalibParamNF, but for ints.
/// We could have played with NF to store both int and float (using casts),
/// but for the sake of simplicity (e.g. the Print method must know whether
/// it should print floats or ints), we decided to "duplicate" the class
/// and use the correct type.
///
/// \author Laurent Aphecetche
//-----------------------------------------------------------------------------

using std::cout;
using std::endl;
/// \cond CLASSIMP
ClassImp(AliMUONCalibParamNI)
/// \endcond

//_____________________________________________________________________________
AliMUONCalibParamNI::AliMUONCalibParamNI() 
: AliMUONVCalibParam(),
  fDimension(0),
  fSize(0),
  fN(0),
  fPackingFactor(0),
  fValues(0x0)
{
/// Default constructor.
    AliDebug(1,Form("this=%p default ctor",this));
}

//_____________________________________________________________________________
AliMUONCalibParamNI::AliMUONCalibParamNI(Int_t dimension, Int_t theSize,
                                         Int_t id0, Int_t id1,
                                         Int_t fillWithValue, Int_t packingFactor) 
: AliMUONVCalibParam(id0,id1),
  fDimension(dimension),
  fSize(theSize),
  fN(fSize*fDimension),
  fPackingFactor(packingFactor),
  fValues(0x0)
{
/// Normal constructor, where theSize specifies the number of channels handled
/// by this object, and fillWithValue the default value assigned to each
/// channel.

//    AliDebug(1,Form("this=%p dimension=%d theSize=%d fillWithValue=%d packingFactor=%d",
//                    this,dimension,theSize,fillWithValue,packingFactor));

  if ( fN > 0 )
  {
    fValues = new Int_t[fN];
    for ( Int_t i = 0; i < fN; ++i )
    {
      fValues[i] = fillWithValue;
    }
  }
}


//_____________________________________________________________________________
AliMUONCalibParamNI::AliMUONCalibParamNI(const AliMUONCalibParamNI& other) 
: AliMUONVCalibParam(),
fDimension(0),
fSize(0),
fN(0),
fPackingFactor(0),
fValues(0x0)
{
/// Copy constructor.

  AliDebug(1,Form("this=%p copy ctor",this));
  other.CopyTo(*this);
}

//_____________________________________________________________________________
AliMUONCalibParamNI&
AliMUONCalibParamNI::operator=(const AliMUONCalibParamNI& other) 
{
/// Assignment operator

  other.CopyTo(*this);
  return *this;
}

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

  AliDebug(1,Form("this=%p",this));
  delete[] fValues;
}

//_____________________________________________________________________________
void
AliMUONCalibParamNI::CopyTo(AliMUONCalibParamNI& destination) const
{
/// Copy *this to destination

  const TObject& o = static_cast<const TObject&>(*this);
  o.Copy(destination);
  
  delete[] destination.fValues;
  destination.fN = fN;
  destination.fSize = fSize;
  destination.fDimension = fDimension;
  destination.fPackingFactor = fPackingFactor;
  
  if ( fN > 0 )
  {
    destination.fValues = new Int_t[fN];
    for ( Int_t i = 0; i < fN; ++i )
    {
      destination.fValues[i] = fValues[i];
    }
  }
}

//_____________________________________________________________________________
Int_t
AliMUONCalibParamNI::Index(Int_t i, Int_t j) const
{
/// Compute the 1D index of the internal storage from the pair (i,j)
/// Returns -1 if the (i,j) pair is invalid

  if ( i >= 0 && i < Size() && j >= 0 && j < Dimension() )
  {
    return IndexFast(i,j);
  }
  return -1;
}

//_____________________________________________________________________________
Int_t
AliMUONCalibParamNI::IndexFast(Int_t i, Int_t j) const
{
  /// Compute the 1D index of the internal storage from the pair (i,j)
  
  return i + Size()*j;
}

//_____________________________________________________________________________
void
AliMUONCalibParamNI::Print(Option_t* opt) const
{
/// Output this object to stdout.
/// If opt=="full" then all channels are printed, 
/// if opt=="mean#", only the mean and sigma value are printed for j-th dimension
/// otherwise only the general characteristics are printed.

  TString sopt(opt);
  sopt.ToUpper();
  cout << "AliMUONCalibParamNI - Size=" << Size()
    << " Dimension=" << Dimension()
    << " Id=(" << ID0() << "," << ID1() << ")";
  
  if ( IsPacked() ) 
  {
    cout << " Packing Factor=" << fPackingFactor;
  }
  cout << endl;
  
  if ( sopt.Contains("FULL") )
  {
    for ( Int_t i = 0; i < Size(); ++i )
    {
      cout << Form("CH %3d",i);
      for ( Int_t j = 0; j < Dimension(); ++j )
      {
        Int_t v = ValueAsInt(i,j);
        if ( IsPacked() )
        {
          Int_t m,c;
          UnpackValue(v,m,c);
          cout << Form(" (%d,%d) (0x%x,0x%x)",m,c,m,c);
        }
        else
        {
          cout << Form(" %d (0x%x)",v,v);
        }
      }
      cout << endl;
    }
  }  
  if ( sopt.Contains("MEAN") )
  {
    Int_t j(0);
    sscanf(sopt.Data(),"MEAN%d",&j);
    
    Float_t mean(0);
    Float_t v2(0);
    
    Int_t n = Size();
    
    for ( Int_t i = 0; i < Size(); ++i )
    {
      Float_t v = ValueAsFloat(i,j);
      mean += v;
      v2 += v*v;
    }
    mean /= n;
    float sigma = 0;
    if ( n > 1 ) sigma = TMath::Sqrt( (v2-n*mean*mean)/(n-1) );
    cout << Form(" Mean(j=%d)=%e Sigma(j=%d)=%e",j,mean,j,sigma) << endl;
  }
  
}

//_____________________________________________________________________________
void
AliMUONCalibParamNI::SetValueAsInt(Int_t i, Int_t j, Int_t value)
{
/// Set one value as a float, after checking that the indices are correct.

  Int_t ix = Index(i,j);
  
  if ( ix < 0 )
  {
    AliError(Form("Invalid (i,j)=(%d,%d) max allowed is (%d,%d)",
                  i,j,Size()-1,Dimension()-1));
  }
  else
  {
    fValues[ix]=value;
  }
}

//_____________________________________________________________________________
void
AliMUONCalibParamNI::SetValueAsIntFast(Int_t i, Int_t j, Int_t value)
{
  /// Set one value as a float, w/o checking that the indices are correct.
  
  fValues[IndexFast(i,j)] = value;
}

//_____________________________________________________________________________
void
AliMUONCalibParamNI::SetValueAsFloat(Int_t i, Int_t j, Float_t value)
{
  /// Set one value as an int.

  AliWarning("Float will be rounded to be stored...");
  SetValueAsInt(i,j,TMath::Nint(value));
}

//_____________________________________________________________________________
void
AliMUONCalibParamNI::SetValueAsFloatFast(Int_t i, Int_t j, Float_t value)
{
  /// Set one value as an int.
  
  AliWarning("Float will be rounded to be stored...");
  SetValueAsIntFast(i,j,TMath::Nint(value));
}


//_____________________________________________________________________________
Int_t
AliMUONCalibParamNI::ValueAsInt(Int_t i, Int_t j) const
{
/// Return the value as an int (which it is), after checking indices.

  Int_t ix = Index(i,j);
  
  if ( ix < 0 )
  {
    AliError(Form("Invalid (i,j)=(%d,%d) max allowed is (%d,%d)",
                  i,j,Size()-1,Dimension()-1));
    return 0;
  }
  else
  {
    return fValues[ix];
  }
}

//_____________________________________________________________________________
Int_t
AliMUONCalibParamNI::ValueAsIntFast(Int_t i, Int_t j) const
{
  /// Return the value as an int (which it is), w/o checking indices.
  
  return fValues[IndexFast(i,j)];
}

//_____________________________________________________________________________
Float_t
AliMUONCalibParamNI::ValueAsFloat(Int_t i, Int_t j) const
{
  /// Return the value as a float
  return static_cast<Float_t>(ValueAsInt(i,j));
}

//_____________________________________________________________________________
Float_t
AliMUONCalibParamNI::ValueAsFloatFast(Int_t i, Int_t j) const
{
  /// Return the value as a float
  return static_cast<Float_t>(ValueAsIntFast(i,j));
}

//_____________________________________________________________________________
Bool_t 
AliMUONCalibParamNI::UnpackValue(Int_t value, Int_t& a, Int_t& b) const
{
  /// Unpack single value into a couple (a,b), using packingFactor
  /// Returns false if IsPacked()==false
  
  if ( !IsPacked() ) return kFALSE;
  a = value / fPackingFactor;
  b = value % fPackingFactor;
  return kTRUE;
}

//_____________________________________________________________________________
Bool_t 
AliMUONCalibParamNI::PackValues(Int_t a, Int_t b, Int_t& packedValue) const
{
  /// Pack a couple (a,b) into a single value, using packingFactor
  /// Returns false if IsPacked()==false

  if ( !IsPacked() ) return kFALSE;
  packedValue = a*fPackingFactor + b;
  return kTRUE;
}

//_____________________________________________________________________________
Bool_t 
AliMUONCalibParamNI::IsPacked() const
{
  /// Whether the values we store are packed or not.
  /// If false, Pack and Unpack methods will always return false and do nothing
  return (fPackingFactor != 0);
}

 AliMUONCalibParamNI.cxx:1
 AliMUONCalibParamNI.cxx:2
 AliMUONCalibParamNI.cxx:3
 AliMUONCalibParamNI.cxx:4
 AliMUONCalibParamNI.cxx:5
 AliMUONCalibParamNI.cxx:6
 AliMUONCalibParamNI.cxx:7
 AliMUONCalibParamNI.cxx:8
 AliMUONCalibParamNI.cxx:9
 AliMUONCalibParamNI.cxx:10
 AliMUONCalibParamNI.cxx:11
 AliMUONCalibParamNI.cxx:12
 AliMUONCalibParamNI.cxx:13
 AliMUONCalibParamNI.cxx:14
 AliMUONCalibParamNI.cxx:15
 AliMUONCalibParamNI.cxx:16
 AliMUONCalibParamNI.cxx:17
 AliMUONCalibParamNI.cxx:18
 AliMUONCalibParamNI.cxx:19
 AliMUONCalibParamNI.cxx:20
 AliMUONCalibParamNI.cxx:21
 AliMUONCalibParamNI.cxx:22
 AliMUONCalibParamNI.cxx:23
 AliMUONCalibParamNI.cxx:24
 AliMUONCalibParamNI.cxx:25
 AliMUONCalibParamNI.cxx:26
 AliMUONCalibParamNI.cxx:27
 AliMUONCalibParamNI.cxx:28
 AliMUONCalibParamNI.cxx:29
 AliMUONCalibParamNI.cxx:30
 AliMUONCalibParamNI.cxx:31
 AliMUONCalibParamNI.cxx:32
 AliMUONCalibParamNI.cxx:33
 AliMUONCalibParamNI.cxx:34
 AliMUONCalibParamNI.cxx:35
 AliMUONCalibParamNI.cxx:36
 AliMUONCalibParamNI.cxx:37
 AliMUONCalibParamNI.cxx:38
 AliMUONCalibParamNI.cxx:39
 AliMUONCalibParamNI.cxx:40
 AliMUONCalibParamNI.cxx:41
 AliMUONCalibParamNI.cxx:42
 AliMUONCalibParamNI.cxx:43
 AliMUONCalibParamNI.cxx:44
 AliMUONCalibParamNI.cxx:45
 AliMUONCalibParamNI.cxx:46
 AliMUONCalibParamNI.cxx:47
 AliMUONCalibParamNI.cxx:48
 AliMUONCalibParamNI.cxx:49
 AliMUONCalibParamNI.cxx:50
 AliMUONCalibParamNI.cxx:51
 AliMUONCalibParamNI.cxx:52
 AliMUONCalibParamNI.cxx:53
 AliMUONCalibParamNI.cxx:54
 AliMUONCalibParamNI.cxx:55
 AliMUONCalibParamNI.cxx:56
 AliMUONCalibParamNI.cxx:57
 AliMUONCalibParamNI.cxx:58
 AliMUONCalibParamNI.cxx:59
 AliMUONCalibParamNI.cxx:60
 AliMUONCalibParamNI.cxx:61
 AliMUONCalibParamNI.cxx:62
 AliMUONCalibParamNI.cxx:63
 AliMUONCalibParamNI.cxx:64
 AliMUONCalibParamNI.cxx:65
 AliMUONCalibParamNI.cxx:66
 AliMUONCalibParamNI.cxx:67
 AliMUONCalibParamNI.cxx:68
 AliMUONCalibParamNI.cxx:69
 AliMUONCalibParamNI.cxx:70
 AliMUONCalibParamNI.cxx:71
 AliMUONCalibParamNI.cxx:72
 AliMUONCalibParamNI.cxx:73
 AliMUONCalibParamNI.cxx:74
 AliMUONCalibParamNI.cxx:75
 AliMUONCalibParamNI.cxx:76
 AliMUONCalibParamNI.cxx:77
 AliMUONCalibParamNI.cxx:78
 AliMUONCalibParamNI.cxx:79
 AliMUONCalibParamNI.cxx:80
 AliMUONCalibParamNI.cxx:81
 AliMUONCalibParamNI.cxx:82
 AliMUONCalibParamNI.cxx:83
 AliMUONCalibParamNI.cxx:84
 AliMUONCalibParamNI.cxx:85
 AliMUONCalibParamNI.cxx:86
 AliMUONCalibParamNI.cxx:87
 AliMUONCalibParamNI.cxx:88
 AliMUONCalibParamNI.cxx:89
 AliMUONCalibParamNI.cxx:90
 AliMUONCalibParamNI.cxx:91
 AliMUONCalibParamNI.cxx:92
 AliMUONCalibParamNI.cxx:93
 AliMUONCalibParamNI.cxx:94
 AliMUONCalibParamNI.cxx:95
 AliMUONCalibParamNI.cxx:96
 AliMUONCalibParamNI.cxx:97
 AliMUONCalibParamNI.cxx:98
 AliMUONCalibParamNI.cxx:99
 AliMUONCalibParamNI.cxx:100
 AliMUONCalibParamNI.cxx:101
 AliMUONCalibParamNI.cxx:102
 AliMUONCalibParamNI.cxx:103
 AliMUONCalibParamNI.cxx:104
 AliMUONCalibParamNI.cxx:105
 AliMUONCalibParamNI.cxx:106
 AliMUONCalibParamNI.cxx:107
 AliMUONCalibParamNI.cxx:108
 AliMUONCalibParamNI.cxx:109
 AliMUONCalibParamNI.cxx:110
 AliMUONCalibParamNI.cxx:111
 AliMUONCalibParamNI.cxx:112
 AliMUONCalibParamNI.cxx:113
 AliMUONCalibParamNI.cxx:114
 AliMUONCalibParamNI.cxx:115
 AliMUONCalibParamNI.cxx:116
 AliMUONCalibParamNI.cxx:117
 AliMUONCalibParamNI.cxx:118
 AliMUONCalibParamNI.cxx:119
 AliMUONCalibParamNI.cxx:120
 AliMUONCalibParamNI.cxx:121
 AliMUONCalibParamNI.cxx:122
 AliMUONCalibParamNI.cxx:123
 AliMUONCalibParamNI.cxx:124
 AliMUONCalibParamNI.cxx:125
 AliMUONCalibParamNI.cxx:126
 AliMUONCalibParamNI.cxx:127
 AliMUONCalibParamNI.cxx:128
 AliMUONCalibParamNI.cxx:129
 AliMUONCalibParamNI.cxx:130
 AliMUONCalibParamNI.cxx:131
 AliMUONCalibParamNI.cxx:132
 AliMUONCalibParamNI.cxx:133
 AliMUONCalibParamNI.cxx:134
 AliMUONCalibParamNI.cxx:135
 AliMUONCalibParamNI.cxx:136
 AliMUONCalibParamNI.cxx:137
 AliMUONCalibParamNI.cxx:138
 AliMUONCalibParamNI.cxx:139
 AliMUONCalibParamNI.cxx:140
 AliMUONCalibParamNI.cxx:141
 AliMUONCalibParamNI.cxx:142
 AliMUONCalibParamNI.cxx:143
 AliMUONCalibParamNI.cxx:144
 AliMUONCalibParamNI.cxx:145
 AliMUONCalibParamNI.cxx:146
 AliMUONCalibParamNI.cxx:147
 AliMUONCalibParamNI.cxx:148
 AliMUONCalibParamNI.cxx:149
 AliMUONCalibParamNI.cxx:150
 AliMUONCalibParamNI.cxx:151
 AliMUONCalibParamNI.cxx:152
 AliMUONCalibParamNI.cxx:153
 AliMUONCalibParamNI.cxx:154
 AliMUONCalibParamNI.cxx:155
 AliMUONCalibParamNI.cxx:156
 AliMUONCalibParamNI.cxx:157
 AliMUONCalibParamNI.cxx:158
 AliMUONCalibParamNI.cxx:159
 AliMUONCalibParamNI.cxx:160
 AliMUONCalibParamNI.cxx:161
 AliMUONCalibParamNI.cxx:162
 AliMUONCalibParamNI.cxx:163
 AliMUONCalibParamNI.cxx:164
 AliMUONCalibParamNI.cxx:165
 AliMUONCalibParamNI.cxx:166
 AliMUONCalibParamNI.cxx:167
 AliMUONCalibParamNI.cxx:168
 AliMUONCalibParamNI.cxx:169
 AliMUONCalibParamNI.cxx:170
 AliMUONCalibParamNI.cxx:171
 AliMUONCalibParamNI.cxx:172
 AliMUONCalibParamNI.cxx:173
 AliMUONCalibParamNI.cxx:174
 AliMUONCalibParamNI.cxx:175
 AliMUONCalibParamNI.cxx:176
 AliMUONCalibParamNI.cxx:177
 AliMUONCalibParamNI.cxx:178
 AliMUONCalibParamNI.cxx:179
 AliMUONCalibParamNI.cxx:180
 AliMUONCalibParamNI.cxx:181
 AliMUONCalibParamNI.cxx:182
 AliMUONCalibParamNI.cxx:183
 AliMUONCalibParamNI.cxx:184
 AliMUONCalibParamNI.cxx:185
 AliMUONCalibParamNI.cxx:186
 AliMUONCalibParamNI.cxx:187
 AliMUONCalibParamNI.cxx:188
 AliMUONCalibParamNI.cxx:189
 AliMUONCalibParamNI.cxx:190
 AliMUONCalibParamNI.cxx:191
 AliMUONCalibParamNI.cxx:192
 AliMUONCalibParamNI.cxx:193
 AliMUONCalibParamNI.cxx:194
 AliMUONCalibParamNI.cxx:195
 AliMUONCalibParamNI.cxx:196
 AliMUONCalibParamNI.cxx:197
 AliMUONCalibParamNI.cxx:198
 AliMUONCalibParamNI.cxx:199
 AliMUONCalibParamNI.cxx:200
 AliMUONCalibParamNI.cxx:201
 AliMUONCalibParamNI.cxx:202
 AliMUONCalibParamNI.cxx:203
 AliMUONCalibParamNI.cxx:204
 AliMUONCalibParamNI.cxx:205
 AliMUONCalibParamNI.cxx:206
 AliMUONCalibParamNI.cxx:207
 AliMUONCalibParamNI.cxx:208
 AliMUONCalibParamNI.cxx:209
 AliMUONCalibParamNI.cxx:210
 AliMUONCalibParamNI.cxx:211
 AliMUONCalibParamNI.cxx:212
 AliMUONCalibParamNI.cxx:213
 AliMUONCalibParamNI.cxx:214
 AliMUONCalibParamNI.cxx:215
 AliMUONCalibParamNI.cxx:216
 AliMUONCalibParamNI.cxx:217
 AliMUONCalibParamNI.cxx:218
 AliMUONCalibParamNI.cxx:219
 AliMUONCalibParamNI.cxx:220
 AliMUONCalibParamNI.cxx:221
 AliMUONCalibParamNI.cxx:222
 AliMUONCalibParamNI.cxx:223
 AliMUONCalibParamNI.cxx:224
 AliMUONCalibParamNI.cxx:225
 AliMUONCalibParamNI.cxx:226
 AliMUONCalibParamNI.cxx:227
 AliMUONCalibParamNI.cxx:228
 AliMUONCalibParamNI.cxx:229
 AliMUONCalibParamNI.cxx:230
 AliMUONCalibParamNI.cxx:231
 AliMUONCalibParamNI.cxx:232
 AliMUONCalibParamNI.cxx:233
 AliMUONCalibParamNI.cxx:234
 AliMUONCalibParamNI.cxx:235
 AliMUONCalibParamNI.cxx:236
 AliMUONCalibParamNI.cxx:237
 AliMUONCalibParamNI.cxx:238
 AliMUONCalibParamNI.cxx:239
 AliMUONCalibParamNI.cxx:240
 AliMUONCalibParamNI.cxx:241
 AliMUONCalibParamNI.cxx:242
 AliMUONCalibParamNI.cxx:243
 AliMUONCalibParamNI.cxx:244
 AliMUONCalibParamNI.cxx:245
 AliMUONCalibParamNI.cxx:246
 AliMUONCalibParamNI.cxx:247
 AliMUONCalibParamNI.cxx:248
 AliMUONCalibParamNI.cxx:249
 AliMUONCalibParamNI.cxx:250
 AliMUONCalibParamNI.cxx:251
 AliMUONCalibParamNI.cxx:252
 AliMUONCalibParamNI.cxx:253
 AliMUONCalibParamNI.cxx:254
 AliMUONCalibParamNI.cxx:255
 AliMUONCalibParamNI.cxx:256
 AliMUONCalibParamNI.cxx:257
 AliMUONCalibParamNI.cxx:258
 AliMUONCalibParamNI.cxx:259
 AliMUONCalibParamNI.cxx:260
 AliMUONCalibParamNI.cxx:261
 AliMUONCalibParamNI.cxx:262
 AliMUONCalibParamNI.cxx:263
 AliMUONCalibParamNI.cxx:264
 AliMUONCalibParamNI.cxx:265
 AliMUONCalibParamNI.cxx:266
 AliMUONCalibParamNI.cxx:267
 AliMUONCalibParamNI.cxx:268
 AliMUONCalibParamNI.cxx:269
 AliMUONCalibParamNI.cxx:270
 AliMUONCalibParamNI.cxx:271
 AliMUONCalibParamNI.cxx:272
 AliMUONCalibParamNI.cxx:273
 AliMUONCalibParamNI.cxx:274
 AliMUONCalibParamNI.cxx:275
 AliMUONCalibParamNI.cxx:276
 AliMUONCalibParamNI.cxx:277
 AliMUONCalibParamNI.cxx:278
 AliMUONCalibParamNI.cxx:279
 AliMUONCalibParamNI.cxx:280
 AliMUONCalibParamNI.cxx:281
 AliMUONCalibParamNI.cxx:282
 AliMUONCalibParamNI.cxx:283
 AliMUONCalibParamNI.cxx:284
 AliMUONCalibParamNI.cxx:285
 AliMUONCalibParamNI.cxx:286
 AliMUONCalibParamNI.cxx:287
 AliMUONCalibParamNI.cxx:288
 AliMUONCalibParamNI.cxx:289
 AliMUONCalibParamNI.cxx:290
 AliMUONCalibParamNI.cxx:291
 AliMUONCalibParamNI.cxx:292
 AliMUONCalibParamNI.cxx:293
 AliMUONCalibParamNI.cxx:294
 AliMUONCalibParamNI.cxx:295
 AliMUONCalibParamNI.cxx:296
 AliMUONCalibParamNI.cxx:297
 AliMUONCalibParamNI.cxx:298
 AliMUONCalibParamNI.cxx:299
 AliMUONCalibParamNI.cxx:300
 AliMUONCalibParamNI.cxx:301
 AliMUONCalibParamNI.cxx:302
 AliMUONCalibParamNI.cxx:303
 AliMUONCalibParamNI.cxx:304
 AliMUONCalibParamNI.cxx:305
 AliMUONCalibParamNI.cxx:306
 AliMUONCalibParamNI.cxx:307
 AliMUONCalibParamNI.cxx:308
 AliMUONCalibParamNI.cxx:309
 AliMUONCalibParamNI.cxx:310
 AliMUONCalibParamNI.cxx:311
 AliMUONCalibParamNI.cxx:312
 AliMUONCalibParamNI.cxx:313
 AliMUONCalibParamNI.cxx:314
 AliMUONCalibParamNI.cxx:315
 AliMUONCalibParamNI.cxx:316
 AliMUONCalibParamNI.cxx:317
 AliMUONCalibParamNI.cxx:318
 AliMUONCalibParamNI.cxx:319
 AliMUONCalibParamNI.cxx:320
 AliMUONCalibParamNI.cxx:321
 AliMUONCalibParamNI.cxx:322
 AliMUONCalibParamNI.cxx:323
 AliMUONCalibParamNI.cxx:324
 AliMUONCalibParamNI.cxx:325
 AliMUONCalibParamNI.cxx:326
 AliMUONCalibParamNI.cxx:327
 AliMUONCalibParamNI.cxx:328
 AliMUONCalibParamNI.cxx:329
 AliMUONCalibParamNI.cxx:330
 AliMUONCalibParamNI.cxx:331
 AliMUONCalibParamNI.cxx:332
 AliMUONCalibParamNI.cxx:333
 AliMUONCalibParamNI.cxx:334
 AliMUONCalibParamNI.cxx:335
 AliMUONCalibParamNI.cxx:336
 AliMUONCalibParamNI.cxx:337
 AliMUONCalibParamNI.cxx:338
 AliMUONCalibParamNI.cxx:339
 AliMUONCalibParamNI.cxx:340
 AliMUONCalibParamNI.cxx:341
 AliMUONCalibParamNI.cxx:342
 AliMUONCalibParamNI.cxx:343
 AliMUONCalibParamNI.cxx:344
 AliMUONCalibParamNI.cxx:345
 AliMUONCalibParamNI.cxx:346
 AliMUONCalibParamNI.cxx:347
 AliMUONCalibParamNI.cxx:348
 AliMUONCalibParamNI.cxx:349
 AliMUONCalibParamNI.cxx:350
 AliMUONCalibParamNI.cxx:351
 AliMUONCalibParamNI.cxx:352
 AliMUONCalibParamNI.cxx:353
 AliMUONCalibParamNI.cxx:354
 AliMUONCalibParamNI.cxx:355
 AliMUONCalibParamNI.cxx:356
 AliMUONCalibParamNI.cxx:357
 AliMUONCalibParamNI.cxx:358
 AliMUONCalibParamNI.cxx:359
 AliMUONCalibParamNI.cxx:360
 AliMUONCalibParamNI.cxx:361
 AliMUONCalibParamNI.cxx:362
 AliMUONCalibParamNI.cxx:363
 AliMUONCalibParamNI.cxx:364