]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/AliITSOnlineSPDscanMultiple.cxx
Restoring some changes lost after the last commit (Alberto)
[u/mrichter/AliRoot.git] / ITS / AliITSOnlineSPDscanMultiple.cxx
CommitLineData
b15de2d2 1////////////////////////////////////////////////////////////
2// Author: Henrik Tydesjo //
3// Interface class to the containers of an online scan //
4// with multiple steps. //
5////////////////////////////////////////////////////////////
6
7#include <TFile.h>
8#include "AliITSOnlineSPDscanMultiple.h"
9#include "AliITSOnlineSPDscanInfoMultiple.h"
10
11ClassImp(AliITSOnlineSPDscanMultiple)
12
13AliITSOnlineSPDscanMultiple::AliITSOnlineSPDscanMultiple():AliITSOnlineSPDscan(){
14// Default constructor
15}
16AliITSOnlineSPDscanMultiple::AliITSOnlineSPDscanMultiple(Char_t *fileName) {
17 // constructor
18 sprintf(fFileName,"%s",fileName);
19 // look for a previously saved info object
20 // (if file not found create a new one and return, else read)
21 FILE* fp0 = fopen(fFileName, "r");
22 if (fp0 == NULL) {
23 fScanInfo = new AliITSOnlineSPDscanInfoMultiple();
24 fFile = new TFile(fFileName, "RECREATE");
25 fWrite=kTRUE;
26 }
27 else {
28 fclose(fp0);
29 fFile = new TFile(fFileName, "READ");
30 fWrite=kFALSE;
31 fFile->GetObject("AliITSOnlineSPDscanInfo", fScanInfo);
32 }
33 Init();
34}
35
36AliITSOnlineSPDscanMultiple::AliITSOnlineSPDscanMultiple(const AliITSOnlineSPDscanMultiple& scan) :
37 AliITSOnlineSPDscan(scan)
38{}
39
40AliITSOnlineSPDscanMultiple::~AliITSOnlineSPDscanMultiple() {}
41
42AliITSOnlineSPDscanMultiple& AliITSOnlineSPDscanMultiple::operator=(const AliITSOnlineSPDscanMultiple& scan) {
43 // Assignment operator, should not be called!!!
44 printf("This object should not be copied!");
45 if (this!=&scan) {
46 // still do nothing...
47 }
48 return *this;
49}
50
51//void AliITSOnlineSPDscanMultiple::ReadFromTObjArray(TObjArray *arr) {
52// ClearThis();
53// Int_t nrEntries = arr->GetEntriesFast();
54// if (nrEntries>0 && nrEntries%2==1) {
55// fScanInfo = (AliITSOnlineSPDscanInfoMultiple*) arr->At(0);
56// fInfoModified=kTRUE;
57// FillFromTObjArray(arr,nrEntries);
58// }
59//}
60
61UInt_t AliITSOnlineSPDscanMultiple::AddScanStep() {
62 CreateNewStep();
63 return ((AliITSOnlineSPDscanInfoMultiple*)fScanInfo)->AddScanStep();
64}
65
66void AliITSOnlineSPDscanMultiple::SetDacId(Int_t val) {
67 ((AliITSOnlineSPDscanInfoMultiple*)fScanInfo)->SetDacId(val);
68 fInfoModified=kTRUE;
69}
70void AliITSOnlineSPDscanMultiple::SetDacValue(UInt_t nsi, Int_t val) {
71 // set dac value for step nsi
72 SwitchToStep(nsi);
73 ((AliITSOnlineSPDscanInfoMultiple*)fScanInfo)->SetDacValue(nsi,val);
74 fInfoModified=kTRUE;
75}
76Int_t AliITSOnlineSPDscanMultiple::GetDacId() {
77 return ((AliITSOnlineSPDscanInfoMultiple*)fScanInfo)->GetDacId();
78}
79Int_t AliITSOnlineSPDscanMultiple::GetDacValue(UInt_t nsi) {
80 return ((AliITSOnlineSPDscanInfoMultiple*)fScanInfo)->GetDacValue(nsi);
81}