Bug fix - Jira ticket ALIROOT-5665
[u/mrichter/AliRoot.git] / ITS / AliITSCorrMap2DSDD.cxx
CommitLineData
a65a7e70 1/**************************************************************************
2 * Copyright(c) 2007-2009, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
6 * *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
15
16/* $Id$ */
17
18///////////////////////////////////////////////////////////////////
19// //
20// Implementation of the base class for SDD map 2D corrections //
21// Origin: F.Prino, Torino, prino@to.infn.it //
22// //
23///////////////////////////////////////////////////////////////////
24
25#include "TH1F.h"
26#include "TH2F.h"
27#include "AliITSCorrMapSDD.h"
28#include "AliITSCorrMap2DSDD.h"
29#include "AliLog.h"
30#include "AliITSsegmentationSDD.h"
31
32ClassImp(AliITSCorrMap2DSDD)
33//______________________________________________________________________
34AliITSCorrMap2DSDD::AliITSCorrMap2DSDD():
35AliITSCorrMapSDD()
36{
37 // default constructor
38 ResetMap();
39}
40//______________________________________________________________________
41AliITSCorrMap2DSDD::AliITSCorrMap2DSDD(Char_t *mapname):
42AliITSCorrMapSDD(mapname)
43{
44 // standard constructor
45 ResetMap();
46}
47//______________________________________________________________________
48AliITSCorrMap2DSDD::AliITSCorrMap2DSDD(Char_t *mapname, Int_t nbinsan, Int_t nbinsdr):
49AliITSCorrMapSDD(mapname)
50{
51 // standard constructor
52 ResetMap();
53 SetNBinsAnode(nbinsan);
54 SetNBinsDrift(nbinsdr);
55}
56//______________________________________________________________________
57void AliITSCorrMap2DSDD::ResetMap(){
58 // Sets contents to zero
59 for(Int_t iAn=0;iAn<kMaxNAnodePts; iAn++){
60 for(Int_t iDr=0;iDr<kMaxNDriftPts; iDr++){
61 fCorrMap[iAn][iDr]=0;
62 }
63 }
64}
65
66//______________________________________________________________________
67void AliITSCorrMap2DSDD::Set2DMap(TH2F* hmap){
68 // Fill map staring from 2D histo
69 // with anodes on x axis and drift dist. on y axis
70 if(hmap->GetNbinsX()!=fNAnodePts || hmap->GetNbinsY()!=fNDriftPts){
71 AliError(Form("N. of histo bins (%dX%d) not matching N. of map cells (%dX%d)\n",hmap->GetNbinsX(),hmap->GetNbinsY(),fNAnodePts,fNDriftPts));
72 return;
73 }
74 for(Int_t iAn=0;iAn<fNAnodePts; iAn++){
75 for(Int_t iDr=0;iDr<fNDriftPts; iDr++){
76 SetCellContent(iAn,iDr,hmap->GetBinContent(iAn+1,iDr+1));
77 }
78 }
79}