#ifndef ROOT_THaVDCUVPlane
#define ROOT_THaVDCUVPlane
#include "THaSubDetector.h"
#include "THaVDCPlane.h"
#include "TClonesArray.h"
#include <cassert>
class THaVDCUVTrack;
class THaVDC;
class THaEvData;
class THaVDCUVPlane : public THaSubDetector {
friend class THaVDCUVTrack;
public:
THaVDCUVPlane( const char* name="", const char* description="",
THaDetectorBase* parent = NULL );
virtual ~THaVDCUVPlane();
virtual void Clear( Option_t* opt="" );
virtual Int_t Decode( const THaEvData& evData );
virtual Int_t CoarseTrack();
virtual Int_t FineTrack();
virtual EStatus Init( const TDatime& date );
THaVDCPlane* GetUPlane() const { return fU; }
THaVDCPlane* GetVPlane() const { return fV; }
Int_t GetNUVTracks() const { return fUVTracks->GetLast()+1; }
TClonesArray* GetUVTracks() const { return fUVTracks; }
THaVDC* GetVDC() const { return (THaVDC*)GetDetector(); }
Double_t GetSpacing() const { return fSpacing;}
THaVDCUVTrack* GetUVTrack( Int_t i ) const
{ assert( i>=0 && i<GetNUVTracks() );
return (THaVDCUVTrack*)fUVTracks->UncheckedAt(i); }
protected:
THaVDCPlane* fU;
THaVDCPlane* fV;
TClonesArray* fUVTracks;
Double_t fSpacing;
Double_t fSin_u;
Double_t fCos_u;
Double_t fSin_v;
Double_t fCos_v;
Double_t fInv_sin_vu;
void FindClusters()
{ fU->FindClusters(); fV->FindClusters(); }
Int_t MatchUVClusters();
void FitTracks()
{ fU->FitTracks(); fV->FitTracks(); }
Int_t CalcUVTrackCoords();
ClassDef(THaVDCUVPlane,0)
};
#endif
Last change: Sat Nov 7 21:26:55 2009
Last generated: 2009-11-07 21:26
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.