GRUTinizer
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
TMode3Hit.h
Go to the documentation of this file.
1 #ifndef TMODE3HIT_H
2 #define TMODE3HIT_H
3 
4 #include "TDetector.h"
5 #include "TDetectorHit.h"
6 //#include "TGretinaHit.h"
7 
8 #define MAXTRACE 1024
9 
10 class TMode3Hit : public TDetectorHit {
11  public:
12  TMode3Hit();
13  ~TMode3Hit();
14 
15  virtual void Copy(TObject& obj) const;
16  //virtual void Compare(TObject &obj) const;
17  virtual void Print(Option_t *opt = "") const;
18  virtual void Clear(Option_t *opt = "");
19  virtual void ClearWave(Option_t *opt = "");
20 
21  //virtual void InsertHit(const TDetectorHit& hit) { return; }
22  //virtual TDetectorHit& GetHit(const int &i=0) { return hit; }
23  //virtual int Size() { return 1; }
24 
25  void BuildFrom(TSmartBuffer buf);
26 
27  Int_t GetChannel() const { return (board_id & 0x000f); }
28  Int_t GetVME() const { return (board_id & 0x0030)>>4; }
29  Int_t GetCrystal() const { return (board_id & 0x00c0)>>6; }
30  Int_t GetHole() const { return (board_id & 0x1f00)>>8; }
31  Int_t GetSegmentId() const { return GetVME()*10 + GetChannel(); }
32  Int_t GetCrystalId() const { return GetHole()*4 + GetCrystal(); }
33  Int_t GetWaveSize() const { return wavesize; }
34  Short_t* GetWave() const { return wave; }
35 
36  Long_t GetLed() const { return led; }
37  Long_t GetCfd() const { return cfd; }
38 
39 
40  static void SetExtractWaves(bool flag=true) { fExtractWaves = flag; }
41  static bool ExtractWaves() { return fExtractWaves; }
42 
43  virtual Int_t Charge() const { return charge; }
44  //Int_t Address() { return hit.Address(); }
45 
46  private:
47  //virtual int BuildHits();
48 
49  static bool fExtractWaves;
50  //mutable bool fOwnWave; //!
51 
52  //TDetectorHit hit;
53 
54  Int_t board_id;
55  Int_t charge;
56  Int_t wavesize; // In 16-bit elements
57  Long_t led;
58  Long_t cfd;
59  Short_t wavebuffer[MAXTRACE];
60  Short_t *wave; //[wavesize]
61 
62 
64 };
65 
66 
67 
68 
69 
70 #endif