#include <TClonesArray.h>
#include "AliESDfriendTrack.h"
+#include "AliVfriendEvent.h"
class AliESDVZEROfriend;
class AliESDTZEROfriend;
//_____________________________________________________________________________
-class AliESDfriend : public TObject {
+class AliESDfriend : public TObject, public AliVfriendEvent {
public:
AliESDfriend();
AliESDfriend(const AliESDfriend &);
void SetTZEROfriend(AliESDTZEROfriend * obj);
AliESDTZEROfriend *GetTZEROfriend(){ return fESDTZEROfriend; }
- void Ls(){
+ void Ls() const {
return fTracks.ls();
}
+ void Reset();
// bit manipulation for filtering
void SetSkipBit(Bool_t skip){SetBit(23,skip);}
- Bool_t TestSkipBit() {return TestBit(23);}
+ Bool_t TestSkipBit() const { return TestBit(23); }
+
+ //TPC cluster occupancy
+ Int_t GetNclustersTPC(UInt_t sector) const {return (sector<72)?fNclustersTPC[sector]:0;}
+ Int_t GetNclustersTPCused(UInt_t sector) const {return (sector<72)?fNclustersTPCused[sector]:0;}
+ void SetNclustersTPC(UInt_t sector, Int_t occupancy) {if (sector<72) fNclustersTPC[sector]=occupancy;}
+ void SetNclustersTPCused(UInt_t sector, Int_t occupancy) {if (sector<72) fNclustersTPCused[sector]=occupancy;}
protected:
TClonesArray fTracks; // ESD friend tracks
AliESDVZEROfriend *fESDVZEROfriend; // VZERO object containing complete raw data
AliESDTZEROfriend *fESDTZEROfriend; // TZERO calibration object
+
+ Int_t fNclustersTPC[72]; //cluster occupancy per sector per sector
+ Int_t fNclustersTPCused[72]; //number of clusters used in tracking per sector
- ClassDef(AliESDfriend,3) // ESD friend
+ ClassDef(AliESDfriend,4) // ESD friend
};
#endif