// Author : Buddhini Waidyawansa // Date : 23-01-2014 /////////////////////////////////////////////////////////////////////////////// // // // THcRasterRawHit // // // // Class representing a single raw hit for the raster // // // // Contains the X, Y raster voltage signals and sync signals // // // /////////////////////////////////////////////////////////////////////////////// #include <cstring> #include <cstdio> #include <cstdlib> #include <iostream> #include "THcRasterRawHit.h" using namespace std; void THcRasterRawHit::SetData(Int_t signal, Int_t data) { if(signal==0) { fADC_xsync = data; } else if (signal==1) { fADC_xsig = data; } else if(signal==2) { fADC_ysync = data; } else if (signal==3) { fADC_ysig = data; } } Int_t THcRasterRawHit::GetData(Int_t signal) { if(signal==1) { return(fADC_xsync); } else if (signal==2) { return(fADC_xsig); } else if(signal==3) { return(fADC_ysync); } else if (signal==4) { return(fADC_ysig); } return(-1); // Actually should throw exception } // Int_t THcRasterRawHit::Compare(const TObject* obj) const // { // // Compare to sort by the plane // // There is only one raster so no need for an additional check on the counter // const THcRasterRawHit* hit = dynamic_cast<const THcRasterRawHit*>(obj); // if(!hit) return -1; // Int_t p1 = fPlane; // Int_t p2 = hit->fPlane; // if(p1 < p2) return -1; // else if(p1 > p2) return 1; // } //_____________________________________________________________________________ THcRasterRawHit& THcRasterRawHit::operator=( const THcRasterRawHit& rhs ) { // Assignment operator. THcRawHit::operator=(rhs); if ( this != &rhs ) { fPlane = rhs.fPlane; fCounter = rhs.fCounter; fADC_xsync = rhs.fADC_xsync; fADC_xsig = rhs.fADC_xsig; fADC_ysync = rhs.fADC_ysync; fADC_ysig = rhs.fADC_ysig; } return *this; } ////////////////////////////////////////////////////////////////////////// ClassImp(THcRasterRawHit)