Implementation of Trigger simulation (Raphael Tieulent)
[u/mrichter/AliRoot.git] / VZERO / AliVZEROLogicalSignal.h
1 #ifndef ALIVZEROLOGICALSIGNAL_H
2 #define ALIVZEROLOGICALSIGNAL_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights
4  * reserved. 
5  *
6  * See cxx source for full Copyright notice                               
7  */
8
9 #include <TObject.h>
10
11 class AliVZEROLogicalSignal  : public TObject {
12 public:
13         AliVZEROLogicalSignal();
14         AliVZEROLogicalSignal(Float_t start, Float_t stop);
15         AliVZEROLogicalSignal(UShort_t profilClock, UInt_t delay);
16         ~AliVZEROLogicalSignal();
17         AliVZEROLogicalSignal(const AliVZEROLogicalSignal &signal);
18         AliVZEROLogicalSignal& operator= (const AliVZEROLogicalSignal &signal);
19         AliVZEROLogicalSignal operator& (const AliVZEROLogicalSignal &signal) const;
20         AliVZEROLogicalSignal operator| (const AliVZEROLogicalSignal &signal) const;
21         // Print method
22         virtual void Print(Option_t* opt="") const { AliInfo(Form("\t -> Start %f Stop %f\n ",fStart,fStop));};
23         
24         Float_t GetStartTime() const {return fStart;};
25         Float_t GetStopTime() const {return fStop;};
26         Float_t GetWidth() const {return (fStop - fStart);};
27         
28         void SetStartTime(Float_t time);
29         void SetStopTime(Float_t time);
30         
31         Bool_t IsInCoincidence(Float_t time);
32         
33 private:
34         
35         Float_t fStart; // Start Time of the signal with respect to the LHC Clock
36         Float_t fStop;  // Stop Time of the signal with respect to the LHC Clock
37         
38         
39         ClassDef( AliVZEROLogicalSignal, 1 )  
40         
41 };
42
43 #endif // ALIVZEROLOGICALSIGNAL_H