]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TRD/AliTRDUshortInfo.cxx
Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / TRD / AliTRDUshortInfo.cxx
CommitLineData
e526983e 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: AliTRDUshortInfo.cxx 27946 2008-08-13 15:26:24Z cblume $ */
17
18///////////////////////////////////////////////////////////////////////////////
19// //
20// Calibration base class for a single ROC //
21// Contains one UShort_t value per pad //
22// However, values are set and get as float, there are stored internally as //
23// (UShort_t) value * 10000 //
24// //
25///////////////////////////////////////////////////////////////////////////////
26
e526983e 27#include "AliTRDUshortInfo.h"
e526983e 28
29ClassImp(AliTRDUshortInfo)
30
31//_____________________________________________________________________________
32AliTRDUshortInfo::AliTRDUshortInfo()
33 :TObject()
34 ,fSize(0)
35 ,fData(0)
36{
37 //
38 // Default constructor
39 //
40
41}
a2865918 42
e526983e 43//_____________________________________________________________________________
44AliTRDUshortInfo::AliTRDUshortInfo(Int_t n)
45 :TObject()
46 ,fSize(n)
47 ,fData(0)
48{
49 //
50 // Constructor that initializes a given size
51 //
52
53 fData = new UShort_t[fSize];
54 for(Int_t k = 0; k < fSize; k++){
55 fData[k] = 0;
56 }
a2865918 57
e526983e 58}
a2865918 59
e526983e 60//_____________________________________________________________________________
61AliTRDUshortInfo::AliTRDUshortInfo(const AliTRDUshortInfo &c)
62 :TObject(c)
63 ,fSize(c.fSize)
64 ,fData(0)
65{
66 //
67 // AliTRDUshortInfo copy constructor
68 //
69
70 Int_t iBin = 0;
71
72 fData = new UShort_t[fSize];
73 for (iBin = 0; iBin < fSize; iBin++) {
74 fData[iBin] = ((AliTRDUshortInfo &) c).fData[iBin];
75 }
76
77}
a2865918 78
e526983e 79//_____________________________________________________________________________
80AliTRDUshortInfo::~AliTRDUshortInfo()
81{
82 //
83 // AliTRDUshortInfo destructor
84 //
85
86 if (fData) {
87 delete [] fData;
88 fData = 0;
89 }
90
91}
a2865918 92
e526983e 93//_____________________________________________________________________________
94AliTRDUshortInfo &AliTRDUshortInfo::operator=(const AliTRDUshortInfo &c)
95{
96 //
97 // Assignment operator
98 //
99
a2865918 100 if (this == &c) {
101 return *this;
102 }
103
104 fSize = c.fSize;
105
106 if (fData) {
107 delete [] fData;
108 }
109 fData = new UShort_t[fSize];
110 for (Int_t iBin = 0; iBin < fSize; iBin++) {
111 fData[iBin] = c.fData[iBin];
112 }
113
e526983e 114 return *this;
115
116}
a2865918 117
e526983e 118//_____________________________________________________________________________
119void AliTRDUshortInfo::Copy(TObject &c) const
120{
121 //
122 // Copy function
123 //
124
125 Int_t iBin = 0;
126
127 ((AliTRDUshortInfo &) c).fSize = fSize;
128
129 if (((AliTRDUshortInfo &) c).fData) delete [] ((AliTRDUshortInfo &) c).fData;
130 ((AliTRDUshortInfo &) c).fData = new UShort_t[fSize];
131 for (iBin = 0; iBin < fSize; iBin++) {
132 ((AliTRDUshortInfo &) c).fData[iBin] = fData[iBin];
133 }
134
135 TObject::Copy(c);
136
137}
a2865918 138
e526983e 139//_____________________________________________________________________________
140void AliTRDUshortInfo::SetSize(Int_t n)
141{
142 //
143 // Set the size
144 //
145
146 if(fData) delete [] fData;
147 fData = new UShort_t[n];
148
149 fSize = n;
150
151}