CbmSttTrackFitter.h 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. // -------------------------------------------------------------------------
  2. // ----- CbmSttTrackFitter header file -----
  3. // ----- Created 18/02/05 by V. Friese -----
  4. // -------------------------------------------------------------------------
  5. /** CbmSttTrackFitter
  6. *@author V.Friese <v.friese@gsi.de>
  7. **
  8. ** Abstract base class for concrete STT track fitting algorithm.
  9. ** Each derived class must implement the method DoFit. This has
  10. ** to operate on an object of type CbmSttTrack and fill the
  11. ** parameters fPidHypo, fParamFirst, fParamLast, fFlag and fChi2.
  12. **/
  13. #ifndef CBMSTTTRACKFITTER
  14. #define CBMSTTTRACKFITTER 1
  15. #include "TObject.h"
  16. #include "FairTrackParam.h"
  17. class CbmSttTrack;
  18. class TClonesArray;
  19. class CbmSttTrackFitter : public TObject
  20. {
  21. public:
  22. virtual void AddHitCollection(TClonesArray* mHitArray) { };
  23. /** Default constructor **/
  24. CbmSttTrackFitter() { };
  25. /** Destructor **/
  26. virtual ~CbmSttTrackFitter() { };
  27. /** Virtual method Init. If needed, to be implemented in the
  28. ** concrete class. Else no action.
  29. **/
  30. virtual void Init() { };
  31. /** Abstract method DoFit. To be implemented in the concrete class.
  32. ** Task: Make a fit to the hits attached to the track by the track
  33. ** finder. Fill the track parameter member variables.
  34. **
  35. *@param pTrack Pointer to CbmSttTrack
  36. *@param pidHypo PID hypothesis for the fit. Default is pion.
  37. **/
  38. virtual Int_t DoFit(CbmSttTrack* pTrack, Int_t pidHypo = 211) = 0;
  39. /** Abstract method Extrapolate. Gives track parameters at a given r
  40. ** position.
  41. **
  42. *@param track Pointer to SttTrack
  43. *@param r r position
  44. *@param param (return value) SttTrackParam at r
  45. **/
  46. virtual void Extrapolate( CbmSttTrack* track, Double_t r,
  47. FairTrackParam *param ) = 0;
  48. ClassDef(CbmSttTrackFitter,1);
  49. };
  50. #endif