]>
Commit | Line | Data |
---|---|---|
17149e6b | 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 | /////////////////////////////////////////////////////////////////////////////// | |
17 | // // | |
18 | // class for TOF Online calibration: defining channel delay // | |
19 | // using an array instead of a TObjArray // | |
20 | // // | |
21 | /////////////////////////////////////////////////////////////////////////////// | |
22 | ||
23 | #include <AliTOFChannelOnlineArray.h> | |
24 | #include <AliLog.h> | |
25 | ||
26 | ClassImp(AliTOFChannelOnlineArray) | |
27 | ||
28 | //________________________________________________________________ | |
29 | AliTOFChannelOnlineArray::AliTOFChannelOnlineArray(): | |
30 | TObject(), | |
31 | fSize(0), | |
32 | fArray(0x0) | |
33 | { | |
34 | //default constructor | |
35 | } | |
36 | //________________________________________________________________ | |
e88f3330 | 37 | AliTOFChannelOnlineArray::~AliTOFChannelOnlineArray() |
38 | { | |
39 | //distructor | |
40 | delete [] fArray; | |
41 | } | |
42 | //________________________________________________________________ | |
17149e6b | 43 | AliTOFChannelOnlineArray::AliTOFChannelOnlineArray(Int_t size): |
44 | TObject(), | |
45 | fSize(size), | |
46 | fArray(new Float_t[size]) | |
47 | { | |
48 | // ctor with size | |
49 | for (Int_t ich = 0; ich<size; ich ++){ | |
50 | SetDelay(ich,0); | |
51 | } | |
52 | } | |
53 | //________________________________________________________________ | |
54 | AliTOFChannelOnlineArray::AliTOFChannelOnlineArray(const AliTOFChannelOnlineArray & source): | |
8a190ba2 | 55 | TObject(source), |
56 | fSize(source.fSize), | |
227c3238 | 57 | fArray(0x0) |
17149e6b | 58 | { |
59 | // copy constructor | |
227c3238 | 60 | fArray = new Float_t[fSize]; |
61 | for (Int_t ich = 0; ich<fSize; ich ++){ | |
62 | fArray[ich] = source.fArray[ich]; | |
63 | } | |
17149e6b | 64 | } |
65 | //________________________________________________________________ | |
66 | AliTOFChannelOnlineArray &AliTOFChannelOnlineArray::operator=(const AliTOFChannelOnlineArray & source) | |
67 | { | |
8a190ba2 | 68 | // assignment operator |
69 | ||
70 | if (this == &source) | |
71 | return *this; | |
72 | ||
73 | TObject::operator=(source); | |
74 | fSize= source.fSize; | |
4443810b | 75 | delete [] fArray; |
16e3d8ea | 76 | fArray = new Float_t[fSize]; |
77 | memcpy(fArray,source.fArray,sizeof(Float_t)*fSize); | |
78 | ||
8a190ba2 | 79 | return *this; |
17149e6b | 80 | } |
81 | //________________________________________________________________ | |
82 | void AliTOFChannelOnlineArray::SetDelay(Int_t pos, Float_t parr) | |
83 | { | |
84 | // setting status for channel at position = pos | |
4682c56e | 85 | AliDebug(2,Form("status = %f",(Float_t)parr)); |
17149e6b | 86 | if (pos>-1 && pos < fSize)fArray[pos] = parr; |
4682c56e | 87 | AliDebug(2,Form("fArray[%d] = %f",pos,(Float_t)fArray[pos])); |
17149e6b | 88 | } |
89 | //________________________________________________________________ | |
90 | Float_t AliTOFChannelOnlineArray::GetDelay(Int_t pos) const | |
91 | { | |
92 | // getting the status for channel at position = pos | |
93 | Float_t parr = 0x0; | |
94 | if (pos>-1 && pos < fSize)parr = fArray[pos]; | |
95 | return parr; | |
96 | } |