File indexing completed on 2025-08-05 08:16:09
0001 #ifndef FUN4ALLRAW_TPCRAWTHIT_H
0002 #define FUN4ALLRAW_TPCRAWTHIT_H
0003
0004 #include <phool/PHObject.h>
0005
0006 #include <limits>
0007
0008 class TpcRawHit : public PHObject
0009 {
0010 public:
0011 TpcRawHit() = default;
0012 virtual ~TpcRawHit() = default;
0013
0014 virtual uint64_t get_bco() const { return std::numeric_limits<uint64_t>::max(); }
0015 virtual void set_bco(const uint64_t) { return; }
0016
0017 virtual uint64_t get_gtm_bco() const { return std::numeric_limits<uint64_t>::max(); }
0018 virtual void set_gtm_bco(const uint64_t) { return; }
0019
0020 virtual int32_t get_packetid() const { return std::numeric_limits<int32_t>::max(); }
0021 virtual void set_packetid(const int32_t) { return; }
0022
0023 virtual uint16_t get_fee() const { return std::numeric_limits<uint16_t>::max(); }
0024 virtual void set_fee(const uint16_t) { return; }
0025
0026 virtual uint16_t get_channel() const { return std::numeric_limits<uint16_t>::max(); }
0027 virtual void set_channel(const uint16_t) { return; }
0028
0029 virtual uint16_t get_sampaaddress() const { return std::numeric_limits<uint16_t>::max(); }
0030 virtual void set_sampaaddress(const uint16_t) { return; }
0031
0032 virtual uint16_t get_sampachannel() const { return std::numeric_limits<uint16_t>::max(); }
0033 virtual void set_sampachannel(const uint16_t) { return; }
0034
0035 virtual uint16_t get_samples() const { return std::numeric_limits<uint16_t>::max(); }
0036 virtual void set_samples(const uint16_t) { return; }
0037
0038 virtual uint16_t get_adc(const uint16_t ) const { return std::numeric_limits<uint16_t>::max(); }
0039 virtual void set_adc(const uint16_t , const uint16_t) { return; }
0040
0041 virtual uint16_t get_type() const { return std::numeric_limits<uint16_t>::max(); }
0042 virtual void set_type(const uint16_t) { return; }
0043
0044 virtual uint16_t get_userword() const { return std::numeric_limits<uint16_t>::max(); }
0045 virtual void set_userword(const uint16_t) { return; }
0046
0047 virtual uint16_t get_checksum() const { return std::numeric_limits<uint16_t>::max(); }
0048 virtual void set_checksum(const uint16_t ) { return; }
0049
0050 virtual uint16_t get_parity() const { return std::numeric_limits<uint16_t>::max(); }
0051 virtual void set_parity(const uint16_t ) { return; }
0052
0053
0054 virtual bool get_checksumerror() const { return false; }
0055 virtual void set_checksumerror(const bool ) { return; }
0056
0057
0058 virtual bool get_parityerror() const { return false; }
0059 virtual void set_parityerror(const bool ) { return; }
0060
0061 class AdcIterator
0062 {
0063 public:
0064 AdcIterator() = default;
0065 virtual ~AdcIterator() = default;
0066 virtual void First() = 0;
0067 virtual void Next() = 0;
0068 virtual bool IsDone() const = 0;
0069 virtual uint16_t CurrentTimeBin() const = 0;
0070 virtual uint16_t CurrentAdc() const = 0;
0071 };
0072 virtual AdcIterator* CreateAdcIterator() const = 0;
0073
0074 private:
0075 ClassDefOverride(TpcRawHit, 0)
0076 };
0077
0078 #endif