// Default constructor\r
}\r
//_____________________________________________________________________________\r
-AliVZEROLogicalSignal::AliVZEROLogicalSignal(Float_t start, Float_t stop) : TObject(), fStart(start), fStop(stop)\r
-{\r
- // Constructor using start and stop time\r
- if(fStart>fStop) AliError("Logical Signal has a Start time AFTER the Stop time");\r
- if(fStart==fStop) AliWarning("Logical Signal has a zero width");\r
-}\r
-//_____________________________________________________________________________\r
AliVZEROLogicalSignal::AliVZEROLogicalSignal(UShort_t profilClock, UInt_t delay) : TObject(), fStart(0.), fStop(0.)\r
{\r
// Constructor using the profilClock and delay parameters comming from the FEE\r
Bool_t down=kFALSE;\r
\r
for(int i=0 ; i<5 ; i++) {\r
- word = (profilClock >> i) & 0x1;\r
+ Int_t shift = (i<4) ? (3-i) : 4;\r
+ word = (profilClock >> shift) & 0x1;\r
if(word&&!up) {\r
- fStart = 5. * i;\r
+ fStart = 5. * (i + 1);\r
up = kTRUE;\r
}\r
if(!word&&up&&!down) {\r
- fStop = 5. * i;\r
+ fStop = 5. * (i + 1);\r
down = kTRUE;\r
} \r
}\r
- if(!down) fStop = 25.;\r
+ if(!down) fStop = 30.;\r
\r
- fStart += delay*10.e-3; // Add 10 ps par register unit\r
- fStop += delay*10.e-3; \r
+ fStart += delay*1e-2; // Add 10 ps par register unit\r
+ fStop += delay*1e-2; \r
}\r
//_____________________________________________________________________________\r
AliVZEROLogicalSignal::AliVZEROLogicalSignal(const AliVZEROLogicalSignal &signal) : \r
(const AliVZEROLogicalSignal& signal)\r
{\r
// Operator =\r
+ if(&signal == this) return *this;\r
fStart = signal.fStart;\r
fStop = signal.fStop;\r
return *this;\r