Skip to content
Snippets Groups Projects
  • Stephen A. Wood's avatar
    76706b74
    Updates to doxygen documentation · 76706b74
    Stephen A. Wood authored
      Add doxygen groups "Apparatuses" and "Decoders"
      Make sure every class is in a group
      Make sure most classes have a \brief description
      Improve comments for some classes including THcHallCSpectrometer
         and hodoscope classes
      Change some Doxyfile defaults.  Include sources files.
    76706b74
    History
    Updates to doxygen documentation
    Stephen A. Wood authored
      Add doxygen groups "Apparatuses" and "Decoders"
      Make sure every class is in a group
      Make sure most classes have a \brief description
      Improve comments for some classes including THcHallCSpectrometer
         and hodoscope classes
      Change some Doxyfile defaults.  Include sources files.
THcDCTrack.cxx 1.58 KiB
/** \class THcDCTrack
    \ingroup DetSupport

    \brief Class representing a track found from linking DC Space points

*/

#include "THcDCHit.h"
#include "THcDCTrack.h"
#include "THcSpacePoint.h"
THcDCTrack::THcDCTrack(Int_t nplanes) : fnSP(0), fNHits(0)
{
  fHits.clear();
  fCoords.resize(nplanes);
  fResiduals.resize(nplanes);
  fResidualsExclPlane.resize(nplanes);
  fDoubleResiduals.resize(nplanes);
}

void THcDCTrack::AddHit(THcDCHit * hit, Double_t dist, Int_t lr)
{
  /**
     Add hit to list of hits associated with the track
  */
  Hit newhit;
  newhit.dchit = hit;
  newhit.distCorr = dist;
  newhit.lr = lr;
  fHits.push_back(newhit);
  fNHits++;
}
void THcDCTrack::AddSpacePoint( THcSpacePoint* sp )
{
  /**
     Add a space point to the list of space points associated with the track.
     All hits in the SP are added to the tracks hit list.
  */

  if (fnSP <10) {
    fSp[fnSP++] = sp;
    // Copy all the hits from the space point into the track
    // Will need to also copy the corrected distance and lr information
    for(Int_t ihit=0;ihit<sp->GetNHits();ihit++) {
      AddHit(sp->GetHit(ihit),sp->GetHitDist(ihit),sp->GetHitLR(ihit));
    }
  }
}

void THcDCTrack::Clear( const Option_t* )
{
  /**
     Clear the space point and hit lists
  */
  fnSP = 0;
  fSp1_ID=-1;
  fSp2_ID=-1;
  ClearHits();
  // Need to set default values  (0 or -100)
  //fCoords.clear();
  //fResiduals.clear();
  //fDoubleResiduals.clear();
}
void THcDCTrack::ClearHits( )
{
  fNHits = 0;
  fHits.clear();
}

ClassImp(THcDCTrack)
///////////////////////////////////////////////////////////////////////////////