ROOT logo
#ifndef HEMCTRB3UNPACKER_H
#define HEMCTRB3UNPACKER_H

#include "hlocation.h"
#include "htrb3tdcunpacker.h"

#include <vector>
class HEmcTrb3Lookup;

class HEmcTrb3Unpacker: public HTrb3TdcUnpacker {
protected:
   HLocation fLoc;           // location of raw cell object
   HEmcTrb3Lookup* fLookup;  // TRB3 lookup table
   Bool_t fTimeRef;          // use reference time ?
   Double_t fTimeShift;      //shift all times by a constant (to positive). Pendant to trb2 unpacker timeShift JAM
   static Bool_t fHasPrintedTDC;
public:
   HEmcTrb3Unpacker(vector<UInt_t>& ids);
   virtual ~HEmcTrb3Unpacker(void) {}

   Bool_t init(void);
   Bool_t reinit(void);
   Int_t execute(void);

   void disableTimeRef(void) {
     fTimeRef = kFALSE ;
   }
   void shiftTimes(Double_t ts) {fTimeShift = ts;};


   Int_t addRawHit(Double_t t_leading, Double_t t_trailing, Bool_t isfastchannel);

   ClassDef(HEmcTrb3Unpacker, 0) // TRB unpacker for the EMC detector
};

#endif /* !HEMCTRB3UNPACKER_H */







 hemctrb3unpacker.h:1
 hemctrb3unpacker.h:2
 hemctrb3unpacker.h:3
 hemctrb3unpacker.h:4
 hemctrb3unpacker.h:5
 hemctrb3unpacker.h:6
 hemctrb3unpacker.h:7
 hemctrb3unpacker.h:8
 hemctrb3unpacker.h:9
 hemctrb3unpacker.h:10
 hemctrb3unpacker.h:11
 hemctrb3unpacker.h:12
 hemctrb3unpacker.h:13
 hemctrb3unpacker.h:14
 hemctrb3unpacker.h:15
 hemctrb3unpacker.h:16
 hemctrb3unpacker.h:17
 hemctrb3unpacker.h:18
 hemctrb3unpacker.h:19
 hemctrb3unpacker.h:20
 hemctrb3unpacker.h:21
 hemctrb3unpacker.h:22
 hemctrb3unpacker.h:23
 hemctrb3unpacker.h:24
 hemctrb3unpacker.h:25
 hemctrb3unpacker.h:26
 hemctrb3unpacker.h:27
 hemctrb3unpacker.h:28
 hemctrb3unpacker.h:29
 hemctrb3unpacker.h:30
 hemctrb3unpacker.h:31
 hemctrb3unpacker.h:32
 hemctrb3unpacker.h:33
 hemctrb3unpacker.h:34
 hemctrb3unpacker.h:35
 hemctrb3unpacker.h:36
 hemctrb3unpacker.h:37
 hemctrb3unpacker.h:38
 hemctrb3unpacker.h:39
 hemctrb3unpacker.h:40
 hemctrb3unpacker.h:41
 hemctrb3unpacker.h:42
 hemctrb3unpacker.h:43