#ifndef HKICKPIONIMASS_H
#define HKICKPIONIMASS_H

#include "hreconstructor.h"
#include "TLorentzVector.h"
#include "TObject.h"
#include "TClonesArray.h"
#include "TNtuple.h"
#include "TCutG.h"
#include "hcategory.h"
#include "hiterator.h"
#include "hspecgeompar.h"
#include "hkicktrack.h"
#include "hrtmetatrack.h"

class HKickIMassParticle : public TObject {
  public:
    HKickIMassParticle(void) {}
    ~HKickIMassParticle(void) {}
    TLorentzVector &P(void) { return fMomentum; }
    void setSystem(Int_t i) { fSystem = i; }
    Int_t getSystem(void) { return fSystem; }
  protected:
    TLorentzVector fMomentum;
    Int_t fSystem;
  public:
    ClassDef(HKickIMassParticle,1) 
};

class HKickPionIMass : public HReconstructor {
public:
  enum EMode {kLowRes,kHiRes};
  HKickPionIMass(const Text_t name[],const Text_t title[]);
  ~HKickPionIMass(void);
  void setMode(EMode m) { fMode = m; }
  Int_t execute(void);
  Bool_t init(void);
  Bool_t reinit(void);
  Bool_t finalize(void);
protected:
  Bool_t isProton(HKickTrack *track);
  Bool_t isPion(HKickTrack *track);
  Bool_t isProton(HRtMetaTrack *track);
  Bool_t isPion(HRtMetaTrack *track);
  Bool_t isProton(Float_t pz, Float_t beta, Int_t sys);
  Bool_t isPion(Float_t pz, Float_t beta, Int_t sys);
  void readKickTracks(void);
  void readMetaTracks(void);
  void convert(HKickTrack *t, HKickIMassParticle *p);
  void convert(HRtMetaTrack *t, HKickIMassParticle *p);
  void clearArrays(void);
  void fillPair(Int_t type, HKickIMassParticle *p1, HKickIMassParticle *p2);
  
  HCategory *fInput; //!
  HIterator *fInputIter; //!
  TNtuple *fOutput; //!
  HSpecGeomPar *fGeomPar; //!
  TClonesArray *fPiMinus; //!
  TClonesArray *fPiPlus; //!
  TClonesArray *fProton; //!
  TCutG *fCutPiPlusSho; //!
  TCutG *fCutPiMinusSho; //!
  TCutG *fCutProtonSho; //!
  TCutG *fCutPiPlusTof; //!
  TCutG *fCutPiMinusTof; //!
  TCutG *fCutProtonTof; //!
  EMode fMode;
public:
  ClassDef(HKickPionIMass,1)
};

#endif

Last change: Sat May 22 12:58:30 2010
Last generated: 2010-05-22 12:58

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.