STEERBase/AliTOFHeader.cxx
STEERBase/AliVCaloTrigger.cxx
STEERBase/AliProdInfo.cxx
+ STEERBase/AliVTrdTrack.cxx
)
string(REPLACE ".cxx" ".h" HDRS "${SRCS}")
//_____________________________________________________________________________
AliESDTrdTrack::AliESDTrdTrack():
- TObject(),
+ AliVTrdTrack(),
fSector(-1),
fStack(-1),
fA(0),
}
AliESDTrdTrack::AliESDTrdTrack(const AliESDTrdTrack& track):
- TObject(track),
+ AliVTrdTrack(track),
fSector(track.fSector),
fStack(track.fStack),
fA(track.fA),
if (this == &track)
return *this;
- TObject::operator=(track);
+ AliVTrdTrack::operator=(track);
fSector = track.fSector;
fStack = track.fStack;
fA = track.fA;
// Global Tracking Unit, used for the TRD L1 trigger
// Author: Jochen Klein <jochen.klein@cern.ch>
-
-#include "TObject.h"
#include "TRef.h"
+#include "AliVTrdTrack.h"
#include "AliESDTrdTracklet.h"
#include "AliESDtrack.h"
-class AliESDTrdTrack : public TObject {
+class AliESDTrdTrack : public AliVTrdTrack {
public:
AliESDTrdTracklet* GetTracklet(Int_t idx) const
{ return (GetLayerMask() & (1<<idx)) ? (AliESDTrdTracklet*) ((fTrackletRefs[idx]).GetObject()) : 0x0; }
- AliESDtrack* GetTrackMatch() const { return (AliESDtrack*) fTrackMatch.GetObject(); }
+ AliVTrack* GetTrackMatch() const { return (AliVTrack*) fTrackMatch.GetObject(); }
void SetA(Int_t a) { fA = a; }
void SetB(Int_t b) { fB = b; }
void SetTrackletIndex(const Char_t idx, const Int_t layer) { fTrackletIndex[layer] = idx; }
void AddTrackletReference(AliESDTrdTracklet* trkl, Int_t layer) { fTrackletRefs[layer] = trkl; }
- void SetTrackMatchReference(AliESDtrack *trk) { fTrackMatch = trk; }
+ void SetTrackMatchReference(AliVTrack *trk) { fTrackMatch = trk; }
Bool_t IsSortable() const { return kTRUE; }
Int_t Compare(const TObject* obj) const;
void AppendBits(ULong64_t &word, Int_t nBits, Int_t val) const { word = (word << nBits) | (val & ~(~0 << nBits)); }
- static const Int_t fgkNlayers = 6; // number of TRD layers
-
Int_t fSector; // sector in which the track was found
Char_t fStack; // stack in which the track was found
// (unique because of stack-wise tracking)
Int_t fLabel; // Track label
- ClassDef(AliESDTrdTrack,6)
+ ClassDef(AliESDTrdTrack,7)
};
#endif
--- /dev/null
+#include "AliVTrdTrack.h"
+
+AliVTrdTrack::AliVTrdTrack() :
+ TObject()
+{
+ // default constructor
+
+}
+
+AliVTrdTrack::AliVTrdTrack(const AliVTrdTrack& rhs) :
+ TObject(rhs)
+{
+ // copy constructor
+
+}
+
+AliVTrdTrack& AliVTrdTrack::operator=(const AliVTrdTrack& rhs)
+{
+ // assignment operator
+
+ if (&rhs != this)
+ TObject::operator=(rhs);
+
+ return *this;
+}
+
+void AliVTrdTrack::Copy(TObject &rhs) const
+{
+ // copy
+
+ TObject::Copy(rhs);
+}
--- /dev/null
+#ifndef ALIVTRDTRACK_H
+#define ALIVTRDTRACK_H
+
+//
+// format for the TRD tracks calculated in the
+// Global Tracking Unit, used for the TRD L1 trigger
+// Author: Jochen Klein <jochen.klein@cern.ch>
+
+#include "TObject.h"
+
+class AliVTrack;
+
+class AliVTrdTrack : public TObject {
+ public:
+
+ AliVTrdTrack();
+ virtual ~AliVTrdTrack() {};
+ AliVTrdTrack(const AliVTrdTrack& track);
+ AliVTrdTrack& operator=(const AliVTrdTrack& track);
+ virtual void Copy(TObject &obj) const;
+
+ virtual Int_t GetA() const = 0;
+ virtual Int_t GetLayerMask() const = 0;
+ virtual Int_t GetPID() const = 0;
+ virtual Int_t GetPt() const = 0;
+ virtual Int_t GetStack() const = 0;
+ virtual Int_t GetSector() const = 0;
+
+ virtual Bool_t GetTrackInTime() const = 0;
+
+ virtual Int_t GetLabel() const = 0;
+
+ virtual Double_t Pt() const = 0;
+
+ virtual AliVTrack* GetTrackMatch() const = 0;
+
+ virtual void SetA(Int_t a) = 0;
+ virtual void SetLayerMask(Int_t mask) = 0;
+ virtual void SetPID(Int_t pid) = 0;
+ virtual void SetLabel(Int_t label) = 0;
+ virtual void SetSector(Int_t sector) = 0;
+ virtual void SetStack(Int_t stack) = 0;
+
+ virtual Bool_t IsSortable() const = 0;
+ virtual Int_t Compare(const TObject* obj) const = 0;
+
+ protected:
+
+ static const Int_t fgkNlayers = 6; // number of TRD layers
+
+ ClassDef(AliVTrdTrack,0)
+};
+
+#endif
#pragma link C++ class AliTOFPIDParams+;
#pragma link C++ class AliProdInfo+;
+#pragma link C++ class AliVTrdTrack+;
+
#endif