]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TRD/AliTRDdigitsParam.cxx
Introduce the digits parameter class which is supposed to store digits information...
[u/mrichter/AliRoot.git] / TRD / AliTRDdigitsParam.cxx
CommitLineData
966f6939 1/**************************************************************************
2 * Copyright(c) 1998-1999, 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: AliTRDdigitsParam.cxx 34070 2009-08-04 15:34:53Z cblume $ */
17
18///////////////////////////////////////////////////////////////////////////////
19// //
20// Class containing parameters for digits //
21// //
22///////////////////////////////////////////////////////////////////////////////
23
24#include "AliLog.h"
25
26#include "AliTRDdigitsParam.h"
27#include "AliTRDcalibDB.h"
28
29ClassImp(AliTRDdigitsParam)
30
31//_____________________________________________________________________________
32AliTRDdigitsParam::AliTRDdigitsParam()
33 :TObject()
34 ,fCheckOCDB(kTRUE)
35 ,fNTimeBins(0)
36{
37 //
38 // Default constructor
39 //
40
41}
42
43//_____________________________________________________________________________
44AliTRDdigitsParam::~AliTRDdigitsParam()
45{
46 //
47 // Destructor
48 //
49
50}
51
52//_____________________________________________________________________________
53AliTRDdigitsParam::AliTRDdigitsParam(const AliTRDdigitsParam &p)
54 :TObject(p)
55 ,fCheckOCDB(p.fCheckOCDB)
56 ,fNTimeBins(p.fNTimeBins)
57{
58 //
59 // Copy constructor
60 //
61
62}
63
64//_____________________________________________________________________________
65AliTRDdigitsParam &AliTRDdigitsParam::operator=(const AliTRDdigitsParam &p)
66{
67 //
68 // Assignment operator
69 //
70
71 if (this != &p) {
72 ((AliTRDdigitsParam &) p).Copy(*this);
73 }
74
75 return *this;
76
77}
78
79//_____________________________________________________________________________
80void AliTRDdigitsParam::Copy(TObject &p) const
81{
82 //
83 // Copy function
84 //
85
86 AliTRDdigitsParam *target = dynamic_cast<AliTRDdigitsParam*> (&p);
87 if (!target) {
88 return;
89 }
90
91 target->fCheckOCDB = fCheckOCDB;
92 target->fNTimeBins = fNTimeBins;
93
94}
95
96//_____________________________________________________________________________
97Bool_t AliTRDdigitsParam::SetNTimeBins(Int_t ntb)
98{
99 //
100 // Sets the number of time bins
101 // Per default an automatic consistency check with the corresponding
102 // OCDB entry is performed. This check can be disabled by setting
103 // SetCheckOCDB(kFALSE)
104 //
105
106 fNTimeBins = ntb;
107
108 if (fCheckOCDB) {
109 Int_t nTimeBinsOCDB = AliTRDcalibDB::Instance()->GetNumberOfTimeBins();
110 if (fNTimeBins == nTimeBinsOCDB) {
111 return kTRUE;
112 }
113 else {
114 AliWarning(Form("Number of timebins does not match OCDB value (%d, %d)"
115 ,fNTimeBins,nTimeBinsOCDB));
116 return kFALSE;
117 }
118 }
119 else {
120 return kTRUE;
121 }
122
123}