Skip to content
Snippets Groups Projects
THcRawDCHit.cxx 2.27 KiB
Newer Older
  • Learn to ignore specific revisions
  • /** \class  THcRawDCHit
        \ingroup DetSupport
    
    
     Class representing for drift chamber wire (or other device with
       a single multihit TDC channel per detector element
    
    THcRawDCHit::THcRawDCHit(Int_t plane, Int_t counter) :
      THcRawHit(plane, counter), fTdcHit()
    {}
    
    THcRawDCHit& THcRawDCHit::operator=(const THcRawDCHit& right) {
      THcRawHit::operator=(right);
    
      if (this != &right) {
        fTdcHit = right.fTdcHit;
    
    
    THcRawDCHit::~THcRawDCHit() {}
    
    
    void THcRawDCHit::Clear(Option_t* opt) {
      THcRawHit::Clear(opt);
    
      fTdcHit.Clear();
    }
    
    
    void THcRawDCHit::SetData(Int_t signal, Int_t data) {
      if (signal == 0) {
        fTdcHit.SetTime(data);
      }
      else {
        throw std::out_of_range(
          "`THcRawDCHit::SetData`: only signal `0` available!"
        );
    
    
    void THcRawDCHit::SetReference(Int_t signal, Int_t reference) {
      if (signal == 0) {
        fTdcHit.SetRefTime(reference);
      }
      else {
        throw std::out_of_range(
          "`THcRawDCHit::SetReference`: only signal `0` available!"
        );
    
    
    Int_t THcRawDCHit::GetData(Int_t signal) {
      if (signal == 0) {
        return fTdcHit.GetTime();
      }
      else {
        throw std::out_of_range(
          "`THcRawDCHit::GetData`: only signal `0` available!"
        );
    
    
    Int_t THcRawDCHit::GetRawData(Int_t signal) {
      if (signal == 0) {
        return fTdcHit.GetTimeRaw();
      }
      else {
        throw std::out_of_range(
          "`THcRawDCHit::GetRawData`: only signal `0` available!"
        );
      }
    
    Int_t THcRawDCHit::GetReference(Int_t signal) {
    
      if (signal == 0) {
        return fTdcHit.GetRefTime();
      }
      else {
        throw std::out_of_range(
          "`THcRawDCHit::GetReference`: only signal `0` available!"
        );
    
    THcRawHit::ESignalType THcRawDCHit::GetSignalType(Int_t signal) {
      if (signal == 0) {
        return kTDC;
      }
    
        throw std::out_of_range(
          "`THcRawDCHit::GetReference`: only signal `0` available!"
        );
    
    
    
    Int_t THcRawDCHit::GetNSignals() {
      return fNTdcSignals;
    }
    
    
    Bool_t THcRawDCHit::HasReference(Int_t signal) {
      if (signal == 0) {
        return fTdcHit.HasRefTime();
    
      else {
        throw std::out_of_range(
          "`THcRawDCHit::HasReference`: only signal `0` available!"
        );
      }
    }
    
    
    THcRawTdcHit& THcRawDCHit::GetRawTdcHit() {
      return fTdcHit;