- Three classes by MinJung Kweon AliHFEpriVtx, AliHFEsecVtx and AliHFEmcQA for primar...
[u/mrichter/AliRoot.git] / STEER / AliEventTagCuts.h
index 76a787b..f2f2fc3 100644 (file)
@@ -23,194 +23,232 @@ class AliEventTagCuts : public TObject {
   ~AliEventTagCuts();
   void Reset();
   
- //____________________________________________________//
-  void SetParticipantsRange(Int_t i1, Int_t i2);
-  void SetImpactParamRange(Float_t r1, Float_t r2);
-  void SetPrimaryVertexXRange(Float_t r1, Float_t r2);
-  void SetPrimaryVertexYRange(Float_t r1, Float_t r2);
-  void SetPrimaryVertexZRange(Float_t r1, Float_t r2);
-  void SetPrimaryVertexFlag(Int_t i);
-
-  void SetPrimaryVertexZErrorRange(Float_t r1, Float_t r2) {fPrimaryVertexZErrorMin = r1; fPrimaryVertexZErrorMax = r2; fPVzErrorFlag = kTRUE;}
-  void SetTriggerMask(ULong64_t trmask) {fTriggerMask = trmask; fTriggerMaskFlag = kTRUE;}
-  void SetTriggerCluster(UChar_t trcluster) {fTriggerCluster = trcluster;fTriggerClusterFlag = kTRUE;}
-
-  void SetZDCNeutr1Range(Float_t r1, Float_t r2);
-  void SetZDCProt1Range(Float_t r1, Float_t r2);
-  void SetZDCEMRange(Float_t r1, Float_t r2);
-  void SetZDCNeutr2Range(Float_t r1, Float_t r2);
-  void SetZDCProt2Range(Float_t r1, Float_t r2);
-  void SetT0VertexZRange(Float_t r1, Float_t r2);
-  void SetMultiplicityRange(Int_t n1, Int_t n2);
-  void SetPosMultiplicityRange(Int_t n1, Int_t n2);
-  void SetNegMultiplicityRange(Int_t n1, Int_t n2);
-  void SetNeutrMultiplicityRange(Int_t n1, Int_t n2);
-  void SetV0sRange(Int_t n1, Int_t n2);
-  void SetCascadesRange(Int_t n1, Int_t n2);
-  void SetKinksRange(Int_t n1, Int_t n2);
+  //____________________________________________________//
+  void SetPeriodNumberRange(UInt_t n1, UInt_t n2);
+  void SetOrbitNumberRange(UInt_t n1, UInt_t n2);
+  void SetBunchCrossNumberRange(UShort_t n1, UShort_t n2);
+
+  void SetEventType(UInt_t ntype);
+
+  void SetNParticipantsRange(Int_t low, Int_t high);
+  void SetImpactParamRange(Float_t low, Float_t high);
+
+  void SetPrimaryVertexXRange(Float_t low, Float_t high);
+  void SetPrimaryVertexYRange(Float_t low, Float_t high);
+  void SetPrimaryVertexZRange(Float_t low, Float_t high);
+  void SetPrimaryVertexFlag(Int_t flag);
+  void SetPrimaryVertexZErrorRange(Float_t low, Float_t high);
+
+  void SetTriggerMask(ULong64_t trmask);
+  void SetTriggerCluster(UChar_t trcluster);
+
+  void SetZDCNeutron1Range(Float_t low, Float_t high);
+  void SetZDCProton1Range(Float_t low, Float_t high);
+  void SetZDCEMRange(Float_t low, Float_t high);
+  void SetZDCNeutron2Range(Float_t low, Float_t high);
+  void SetZDCProton2Range(Float_t low, Float_t high);
+  void SetT0VertexZRange(Float_t low, Float_t high);
+
+  void SetMultiplicityRange(Int_t low, Int_t high);
+  void SetPosMultiplicityRange(Int_t low, Int_t high);
+  void SetNegMultiplicityRange(Int_t low, Int_t high);
+  void SetNeutrMultiplicityRange(Int_t low, Int_t high);
+  void SetNV0sRange(Int_t low, Int_t high);
+  void SetNCascadesRange(Int_t low, Int_t high);
+  void SetNKinksRange(Int_t low, Int_t high);
  
-  void SetNumOfPMDTracksRange(Int_t n1, Int_t n2) {fPMDTracksMin = n1; fPMDTracksMax = n2; fPMDTracksFlag = kTRUE;}
-  void SetNumOfFMDTracksRange(Int_t n1, Int_t n2) {fFMDTracksMin = n1; fFMDTracksMax = n2; fFMDTracksFlag = kTRUE;}
-  void SetNumOfPHOSClustersRange(Int_t n1, Int_t n2) {fPHOSClustersMin = n1; fPHOSClustersMax = n2; fPHOSClustersFlag = kTRUE;}
-  void SetNumOfEMCALClustersRange(Int_t n1, Int_t n2) {fEMCALClustersMin = n1; fEMCALClustersMax = n2; fEMCALClustersFlag = kTRUE;}
-  void SetNumOfJetCandidatesRange(Int_t n1, Int_t n2) {fJetCandidatesMin = n1; fJetCandidatesMax = n2; fJetCandidatesFlag = kTRUE;}
-
-  void SetMaxJetEnergy(Float_t r1);
-  void SetMaxNeutralEnergy(Float_t r1);
-  void SetHardPhotonsRange(Int_t i1, Int_t i2);
-  void SetNChargedAbove1GeVRange(Int_t i1, Int_t i2);
-  void SetNChargedAbove3GeVRange(Int_t i1, Int_t i2);
-  void SetNChargedAbove10GeVRange(Int_t i1, Int_t i2);
-  void SetNMuonsAbove1GeVRange(Int_t i1, Int_t i2);
-  void SetNMuonsAbove3GeVRange(Int_t i1, Int_t i2);
-  void SetNMuonsAbove10GeVRange(Int_t i1, Int_t i2);
-  void SetNElectronsAbove1GeVRange(Int_t i1, Int_t i2);
-  void SetNElectronsAbove3GeVRange(Int_t i1, Int_t i2);
-  void SetNElectronsAbove10GeVRange(Int_t i1, Int_t i2);
-  void SetNElectronRange(Int_t n1, Int_t n2);
-  void SetNMuonRange(Int_t n1, Int_t n2);
-  void SetNPionRange(Int_t n1, Int_t n2);
-  void SetNKaonRange(Int_t n1, Int_t n2);
-  void SetNProtonRange(Int_t n1, Int_t n2);
-  void SetNLambdaRange(Int_t n1, Int_t n2);
-  void SetNPhotonRange(Int_t n1, Int_t n2);
-  void SetNPi0Range(Int_t n1, Int_t n2);
-  void SetNNeutronRange(Int_t n1, Int_t n2);
-  void SetNKaon0Range(Int_t n1, Int_t n2); 
-  void SetTotalPRange(Float_t r1, Float_t r2);
-  void SetMeanPtRange(Float_t r1, Float_t r2);
-  void SetMaxPt(Float_t r1);
-  void SetTotalNeutralPRange(Float_t r1, Float_t r2);
-  void SetMeanNeutralPtPRange(Float_t r1, Float_t r2);
-  void SetMaxNeutralPt(Float_t r1);
-  void SetEvPlaneAngleRange(Float_t r1, Float_t r2);
-  void SetHBTRadiiRange(Float_t r1, Float_t r2);
+  void SetNPMDTracksRange(Int_t low, Int_t high);
+  void SetNFMDTracksRange(Int_t low, Int_t high);
+  void SetNPHOSClustersRange(Int_t low, Int_t high);
+  void SetNEMCALClustersRange(Int_t low, Int_t high);
+  void SetNJetCandidatesRange(Int_t low, Int_t high);
+
+  void SetTopJetEnergyMin(Float_t low);
+  void SetTopNeutralEnergyMin(Float_t low);
+  void SetNHardPhotonsRange(Int_t low, Int_t high);
+  void SetNChargedAbove1GeVRange(Int_t low, Int_t high);
+  void SetNChargedAbove3GeVRange(Int_t low, Int_t high);
+  void SetNChargedAbove10GeVRange(Int_t low, Int_t high);
+  void SetNMuonsAbove1GeVRange(Int_t low, Int_t high);
+  void SetNMuonsAbove3GeVRange(Int_t low, Int_t high);
+  void SetNMuonsAbove10GeVRange(Int_t low, Int_t high);
+  void SetNElectronsAbove1GeVRange(Int_t low, Int_t high);
+  void SetNElectronsAbove3GeVRange(Int_t low, Int_t high);
+  void SetNElectronsAbove10GeVRange(Int_t low, Int_t high);
+  void SetNElectronRange(Int_t low, Int_t high);
+  void SetNFWMuonRange(Int_t low, Int_t high);
+  void SetNMuonRange(Int_t low, Int_t high);
+  void SetNPionRange(Int_t low, Int_t high);
+  void SetNKaonRange(Int_t low, Int_t high);
+  void SetNProtonRange(Int_t low, Int_t high);
+  void SetNLambdaRange(Int_t low, Int_t high);
+  void SetNPhotonRange(Int_t low, Int_t high);
+  void SetNPi0Range(Int_t low, Int_t high);
+  void SetNNeutronRange(Int_t low, Int_t high);
+  void SetNKaon0Range(Int_t low, Int_t high); 
+  void SetTotalPRange(Float_t low, Float_t high);
+  void SetMeanPtRange(Float_t low, Float_t high);
+  void SetTopPtMin(Float_t low);
+  void SetTotalNeutralPRange(Float_t low, Float_t high);
+  void SetMeanNeutralPtPRange(Float_t low, Float_t high);
+  void SetTopNeutralPtMin(Float_t low);
+  void SetEventPlaneAngleRange(Float_t low, Float_t high);
+  void SetHBTRadiiRange(Float_t low, Float_t high);
  
+  //First physics
+  void SetNumberOfFiredChipsLayer1Range(Int_t low, Int_t high);
+  void SetNumberOfFiredChipsLayer2Range(Int_t low, Int_t high);
+  void SetNumberOfSPDTrackletsRange(Int_t low, Int_t high);
+
   Bool_t IsAccepted(AliEventTag *EvTag) const;
 
   //____________________________________________________//
  private:
-  Float_t fVxMin, fVxMax;  //Definition of the range of the Vx
-  Bool_t fVxFlag;          //Shows whether this cut is used or not
-  Float_t fVyMin, fVyMax;  //Definition of the range of the Vy
-  Bool_t fVyFlag;          //Shows whether this cut is used or not
-  Float_t fVzMin, fVzMax;  //Definition of the range of the Vz
-  Bool_t fVzFlag;          //Shows whether this cut is used or not
-  Int_t fParticipantsMin, fParticipantMax; //# participants range
-  Bool_t fParticipantsFlag;//Shows whether this cut is used or not
-  Float_t fImpactParamMin, fImpactParamMax; //Impact parameter range
-  Bool_t fImpactParamFlag; //Shows whether this cut is used or not
-  Int_t fPrimaryVertexFlag; //Primary vertex flag: 0->not found, 1->found
-  Bool_t fPVFlag;          //Shows whether this cut is used or not
-
-  Float_t fPrimaryVertexZErrorMin, fPrimaryVertexZErrorMax; //Range of the primary vertex z error
-  Bool_t fPVzErrorFlag;          //Shows whether this cut is used or not
-  ULong64_t fTriggerMask;  //trigger mask definition
-  Bool_t fTriggerMaskFlag; //Shows whether this cut is used or not
-  UChar_t fTriggerCluster;  //trigger cluster definition
-  Bool_t fTriggerClusterFlag; //Shows whether this cut is used or not
+  UInt_t fPeriodNumberMin, fPeriodNumberMax;                    //min/max value of the period number
+  Bool_t fPeriodNumberFlag;                                   // Shows whether this cut is used or not
+
+  UInt_t fOrbitNumberMin, fOrbitNumberMax;                    //min/max value of the orbit number
+  Bool_t fOrbitNumberFlag;                                   // Shows whether this cut is used or not
+
+  UShort_t fBunchCrossNumberMin, fBunchCrossNumberMax;                    //min/max value of the bunch crossing number
+  Bool_t fBunchCrossNumberFlag;                                   // Shows whether this cut is used or not
+
+  UInt_t fEventType;                                          //event type == 7 ==> PHYSICS_EVENT
+  Bool_t fEventTypeFlag;                                      // Shows whether this cut is used or not
+
+  Int_t fNParticipantsMin, fNParticipantsMax;                 // # participants range
+  Bool_t fNParticipantsFlag;                                  // Shows whether this cut is used or not
+  Float_t fImpactParamMin, fImpactParamMax;                   // Impact parameter range
+  Bool_t fImpactParamFlag;                                    // Shows whether this cut is used or not
+
+  Float_t fVxMin, fVxMax;                                     // Definition of the range of the Vx
+  Bool_t fVxFlag;                                             // Shows whether this cut is used or not
+  Float_t fVyMin, fVyMax;                                     // Definition of the range of the Vy
+  Bool_t fVyFlag;                                             // Shows whether this cut is used or not
+  Float_t fVzMin, fVzMax;                                     // Definition of the range of the Vz
+  Bool_t fVzFlag;                                             // Shows whether this cut is used or not
+  Int_t fPrimaryVertexFlag;                                   // Primary vertex flag: 0->not found, 1->found
+  Bool_t fPVFlag;                                             // Shows whether this cut is used or not
+  Float_t fPrimaryVertexZErrorMin, fPrimaryVertexZErrorMax;   // Range of the primary vertex z error
+  Bool_t fPVzErrorFlag;                                       // Shows whether this cut is used or not
+
+  ULong64_t fTriggerMask;                                     // trigger mask definition
+  Bool_t fTriggerMaskFlag;                                    // Shows whether this cut is used or not
+  UChar_t fTriggerCluster;                                    // trigger cluster definition
+  Bool_t fTriggerClusterFlag;                                 // Shows whether this cut is used or not
   
-  Float_t fZDCNeutron1EnergyMin, fZDCNeutron1EnergyMax; //ZDC min,max - neutron
-  Bool_t fZDCNeutron1EnergyFlag;//Shows whether this cut is used or not
-  Float_t fZDCProton1EnergyMin, fZDCProton1EnergyMax; //ZDC min,max - proton
-  Bool_t fZDCProton1EnergyFlag;//Shows whether this cut is used or not
-  Float_t fZDCNeutron2EnergyMin, fZDCNeutron2EnergyMax; //ZDC min,max - neutron
-  Bool_t fZDCNeutron2EnergyFlag;//Shows whether this cut is used or not
-  Float_t fZDCProton2EnergyMin, fZDCProton2EnergyMax; //ZDC min,max - proton
-  Bool_t fZDCProton2EnergyFlag;//Shows whether this cut is used or not
-  Float_t fZDCEMEnergyMin, fZDCEMEnergyMax; //ZDC min,max - em
-  Bool_t fZDCEMEnergyFlag;//Shows whether this cut is used or not
-  Float_t fT0VertexZMin, fT0VertexZMax; //T0 min, max
-  Bool_t fT0VertexZFlag;//Shows whether this cut is used or not  
-  Int_t fMultMin, fMultMax;  //Definition of the range of the multiplicity
-  Bool_t fMultFlag;//Shows whether this cut is used or not
-  Int_t fMultPosMin, fMultPosMax; //Positive tracks multiplicity range
-  Bool_t fMultPosFlag;//Shows whether this cut is used or not
-  Int_t fMultNegMin, fMultNegMax; //Negative tracks multiplicity range
-  Bool_t fMultNegFlag;//Shows whether this cut is used or not
-  Int_t fMultNeutrMin, fMultNeutrMax; //Neutral tracks multiplicity range
-  Bool_t fMultNeutrFlag;//Shows whether this cut is used or not
-  Int_t fV0sMin, fV0sMax; //Range of V0s
-  Bool_t fV0sFlag;//Shows whether this cut is used or not
-  Int_t fCascadesMin, fCascadesMax; //Range of cascades
-  Bool_t fCascadesFlag;//Shows whether this cut is used or not
-  Int_t fkinksMin, fkinksMax; //Range of kinks
-  Bool_t fkinksFlag;//Shows whether this cut is used or not
+  Float_t fZDCNeutron1EnergyMin, fZDCNeutron1EnergyMax;       // ZDC min,max - neutron
+  Bool_t fZDCNeutron1EnergyFlag;                              // Shows whether this cut is used or not
+  Float_t fZDCProton1EnergyMin, fZDCProton1EnergyMax;         // ZDC min,max - proton
+  Bool_t fZDCProton1EnergyFlag;                               // Shows whether this cut is used or not
+  Float_t fZDCNeutron2EnergyMin, fZDCNeutron2EnergyMax;       // ZDC min,max - neutron
+  Bool_t fZDCNeutron2EnergyFlag;                              // Shows whether this cut is used or not
+  Float_t fZDCProton2EnergyMin, fZDCProton2EnergyMax;         // ZDC min,max - proton
+  Bool_t fZDCProton2EnergyFlag;                               // Shows whether this cut is used or not
+  Float_t fZDCEMEnergyMin, fZDCEMEnergyMax;                   // ZDC min,max - em
+  Bool_t fZDCEMEnergyFlag;                                    // Shows whether this cut is used or not
+  Float_t fT0VertexZMin, fT0VertexZMax;                       // T0 min, max
+  Bool_t fT0VertexZFlag;                                      // Shows whether this cut is used or not  
+
+  Int_t fMultMin, fMultMax;                                   // Definition of the range of the multiplicity
+  Bool_t fMultFlag;                                           // Shows whether this cut is used or not
+  Int_t fPosMultMin, fPosMultMax;                             // Positive tracks multiplicity range
+  Bool_t fPosMultFlag;                                        // Shows whether this cut is used or not
+  Int_t fNegMultMin, fNegMultMax;                             // Negative tracks multiplicity range
+  Bool_t fNegMultFlag;                                        // Shows whether this cut is used or not
+  Int_t fNeutrMultMin, fNeutrMultMax;                         // Neutral tracks multiplicity range
+  Bool_t fNeutrMultFlag;                                      // Shows whether this cut is used or not
+  Int_t fNV0sMin, fNV0sMax;                                   // Range of # of V0s
+  Bool_t fNV0sFlag;                                           // Shows whether this cut is used or not
+  Int_t fNCascadesMin, fNCascadesMax;                         // Range of # of cascades
+  Bool_t fNCascadesFlag;                                      // Shows whether this cut is used or not
+  Int_t fNKinksMin, fNKinksMax;                               // Range of # of kinks
+  Bool_t fNKinksFlag;                                         // Shows whether this cut is used or not
   
-  Int_t fPMDTracksMin, fPMDTracksMax; //Range of PMD tracks
-  Bool_t fPMDTracksFlag;//Shows whether this cut is used or not
-  Int_t fFMDTracksMin, fFMDTracksMax; //Range of FMD tracks
-  Bool_t fFMDTracksFlag;//Shows whether this cut is used or not
-  Int_t fPHOSClustersMin, fPHOSClustersMax; //Range of PHOS clusters
-  Bool_t fPHOSClustersFlag;//Shows whether this cut is used or not
-  Int_t fEMCALClustersMin, fEMCALClustersMax; //Range of EMCAL clusters
-  Bool_t fEMCALClustersFlag;//Shows whether this cut is used or not
-  Int_t fJetCandidatesMin, fJetCandidatesMax; //Range of jet candidates
-  Bool_t fJetCandidatesFlag;//Shows whether this cut is used or not
-
-  Float_t fMaxJetEnergy; //max jet energy info
-  Bool_t fMaxJetEnergyFlag;//Shows whether this cut is used or not
+  Int_t fNPMDTracksMin, fNPMDTracksMax;                       // Range of # of PMD tracks
+  Bool_t fNPMDTracksFlag;                                     // Shows whether this cut is used or not
+  Int_t fNFMDTracksMin, fNFMDTracksMax;                       // Range of # of FMD tracks
+  Bool_t fNFMDTracksFlag;                                     // Shows whether this cut is used or not
+  Int_t fNPHOSClustersMin, fNPHOSClustersMax;                 // Range of # of PHOS clusters
+  Bool_t fNPHOSClustersFlag;                                  // Shows whether this cut is used or not
+  Int_t fNEMCALClustersMin, fNEMCALClustersMax;               // Range of # of EMCAL clusters
+  Bool_t fNEMCALClustersFlag;                                 // Shows whether this cut is used or not
+  Int_t fNJetCandidatesMin, fNJetCandidatesMax;               // Range of # of jet candidates
+  Bool_t fNJetCandidatesFlag;                                 // Shows whether this cut is used or not
+
+  Float_t fTopJetEnergyMin;                                   // top jet energy minimum value
+  Bool_t fTopJetEnergyMinFlag;                                // Shows whether this cut is used or not
+  Float_t fTopNeutralEnergyMin;                               // top neutral energy minimum value
+  Bool_t fTopNeutralEnergyMinFlag;                            // Shows whether this cut is used or not  
   
-  Int_t fNHardPhotonsCandidatesMin, fNHardPhotonsCandidatesMax; //Hard photons candidates
-  Bool_t fNHardPhotonsCandidatesFlag;//Shows whether this cut is used or not
-  Float_t fMaxNeutralEnergy; //max neutral energy info
-  Bool_t fMaxNeutralFlag;//Shows whether this cut is used or not  
-  Int_t fChargedAbove1GeVMin, fChargedAbove1GeVMax;//Definition of the range of the number of charged above 1GeV
-  Bool_t fChargedAbove1GeVFlag;//Shows whether this cut is used or not
-  Int_t fChargedAbove3GeVMin, fChargedAbove3GeVMax;//Definition of the range of the number of charged above 3GeV
-  Bool_t fChargedAbove3GeVFlag;//Shows whether this cut is used or not
-  Int_t fChargedAbove10GeVMin, fChargedAbove10GeVMax;//Definition of the range of the number of charged above 10GeV
-  Bool_t fChargedAbove10GeVFlag;//Shows whether this cut is used or not
-  Int_t fMuonsAbove1GeVMin, fMuonsAbove1GeVMax;//Definition of the range of the number of muons above 1GeV
-  Bool_t fMuonsAbove1GeVFlag;//Shows whether this cut is used or not
-  Int_t fMuonsAbove3GeVMin, fMuonsAbove3GeVMax;//Definition of the range of the number of muons above 3GeV
-  Bool_t fMuonsAbove3GeVFlag;//Shows whether this cut is used or not
-  Int_t fMuonsAbove10GeVMin, fMuonsAbove10GeVMax; //Definition of the range of the number of muons above 10GeV
-  Bool_t fMuonsAbove10GeVFlag;//Shows whether this cut is used or not
-  Int_t fElectronsAbove1GeVMin, fElectronsAbove1GeVMax;//Definition of the range of the number of electorns above 1GeV
-  Bool_t fElectronsAbove1GeVFlag;//Shows whether this cut is used or not
-  Int_t fElectronsAbove3GeVMin, fElectronsAbove3GeVMax;//Definition of the range of the number of electorns above 3GeV
-  Bool_t fElectronsAbove3GeVFlag;//Shows whether this cut is used or not
-  Int_t fElectronsAbove10GeVMin,fElectronsAbove10GeVMax;//Definition of the range of the number of electorns above 10GeV
-  Bool_t fElectronsAbove10GeVFlag;//Shows whether this cut is used or not  
-  Int_t fElectronsMin, fElectronsMax; //Number of electrons range
-  Bool_t fElectronsFlag;//Shows whether this cut is used or not
-  Int_t fMuonsMin, fMuonsMax;  //Number of muons range
-  Bool_t fMuonsFlag;//Shows whether this cut is used or not
-  Int_t fPionsMin, fPionsMax; //Number of pions range
-  Bool_t fPionsFlag;//Shows whether this cut is used or not
-  Int_t fKaonsMin, fKaonsMax; //Number of kaons range
-  Bool_t fKaonsFlag;//Shows whether this cut is used or not
-  Int_t fProtonsMin, fProtonsMax; //Number of protons range
-  Bool_t fProtonsFlag;//Shows whether this cut is used or not
-  Int_t fLambdasMin, fLambdasMax; //Number of lambdas range
-  Bool_t fLambdasFlag;//Shows whether this cut is used or not
-  Int_t fPhotonsMin, fPhotonsMax; //Number of photons range
-  Bool_t fPhotonFlag;//Shows whether this cut is used or not
-  Int_t fPi0sMin, fPi0sMax; //Number of Pi0s range
-  Bool_t fPi0sFlag;//Shows whether this cut is used or not
-  Int_t fNeutronsMin, fNeutronsMax; //Number of neutrons range
-  Bool_t fNeutronsFlag;//Shows whether this cut is used or not
-  Int_t fKaon0sMin, fKaon0sMax; //Number of K0s range
-  Bool_t fKaon0sFlag;//Shows whether this cut is used or not  
-  Float_t fTotalPMin, fTotalPMax; //Range of the sum of the momentum per event
-  Bool_t fTotalPFlag;//Shows whether this cut is used or not
-  Float_t fMeanPtMin, fMeanPtMax; //Range of mean Pt per event
-  Bool_t fMeanPtFlag;//Shows whether this cut is used or not
-  Float_t fMaxPt; //Max Pt for each event
-  Bool_t fMaxPtFlag;//Shows whether this cut is used or not
-  Float_t fTotalNeutralPMin, fTotalNeutralPMax; //Sum of the momentum per event for neutral
-  Bool_t fTotalNeutralPFlag;//Shows whether this cut is used or not
-  Float_t fMeanNeutralPtMin, fMeanNeutralPtMax; //Mean Pt per event for neutral
-  Bool_t fMeanNeutralPtFlag;//Shows whether this cut is used or not
-  Float_t fMaxNeutralPt; //Max Pt for each event for neutral
-  Bool_t fMaxNeutralPtFlag;//Shows whether this cut is used or not
-  Float_t fEventPlaneAngleMin, fEventPlaneAngleMax; //event plane info
-  Bool_t fEventPlaneAngleFlag;//Shows whether this cut is used or not
-  Float_t fHBTRadiiMin, fHBTRadiiMax; //HBT info
-  Bool_t fHBTRadiiFlag;//Shows whether this cut is used or not
-
-  ClassDef(AliEventTagCuts, 2)
+  Int_t fNHardPhotonCandidatesMin, fNHardPhotonCandidatesMax; // # of hard photons candidates
+  Bool_t fNHardPhotonCandidatesFlag;                          // Shows whether this cut is used or not
+  Int_t fNChargedAbove1GeVMin, fNChargedAbove1GeVMax;         // Definition of the range of the # of charged above 1GeV
+  Bool_t fNChargedAbove1GeVFlag;                              // Shows whether this cut is used or not
+  Int_t fNChargedAbove3GeVMin, fNChargedAbove3GeVMax;         // Definition of the range of the # of charged above 3GeV
+  Bool_t fNChargedAbove3GeVFlag;                              // Shows whether this cut is used or not
+  Int_t fNChargedAbove10GeVMin, fNChargedAbove10GeVMax;       // Definition of the range of the # of charged above 10GeV
+  Bool_t fNChargedAbove10GeVFlag;                             // Shows whether this cut is used or not
+  Int_t fNMuonsAbove1GeVMin, fNMuonsAbove1GeVMax;             // Definition of the range of the # of muons above 1GeV
+  Bool_t fNMuonsAbove1GeVFlag;                                // Shows whether this cut is used or not
+  Int_t fNMuonsAbove3GeVMin, fNMuonsAbove3GeVMax;             // Definition of the range of the # of muons above 3GeV
+  Bool_t fNMuonsAbove3GeVFlag;                                // Shows whether this cut is used or not
+  Int_t fNMuonsAbove10GeVMin, fNMuonsAbove10GeVMax;           // Definition of the range of the # of muons above 10GeV
+  Bool_t fNMuonsAbove10GeVFlag;                               // Shows whether this cut is used or not
+  Int_t fNElectronsAbove1GeVMin, fNElectronsAbove1GeVMax;     // Definition of the range of the # of electorns above 1GeV
+  Bool_t fNElectronsAbove1GeVFlag;                            // Shows whether this cut is used or not
+  Int_t fNElectronsAbove3GeVMin, fNElectronsAbove3GeVMax;     // Definition of the range of the # of electorns above 3GeV
+  Bool_t fNElectronsAbove3GeVFlag;                            // Shows whether this cut is used or not
+  Int_t fNElectronsAbove10GeVMin,fNElectronsAbove10GeVMax;    // Definition of the range of the # of electorns above 10GeV
+  Bool_t fNElectronsAbove10GeVFlag;                           // Shows whether this cut is used or not  
+  Int_t fNElectronsMin, fNElectronsMax;                       // # of electrons range
+  Bool_t fNElectronsFlag;                                     // Shows whether this cut is used or not
+  Int_t fNFWMuonsMin, fNFWMuonsMax;                           // # of forward muons range
+  Bool_t fNFWMuonsFlag;                                       // Shows whether this cut is used or not
+  Int_t fNMuonsMin, fNMuonsMax;                               // # of muons range
+  Bool_t fNMuonsFlag;                                         // Shows whether this cut is used or not
+  Int_t fNPionsMin, fNPionsMax;                               // # of pions range
+  Bool_t fNPionsFlag;                                         // Shows whether this cut is used or not
+  Int_t fNKaonsMin, fNKaonsMax;                               // # of kaons range
+  Bool_t fNKaonsFlag;                                         // Shows whether this cut is used or not
+  Int_t fNProtonsMin, fNProtonsMax;                           // # of protons range
+  Bool_t fNProtonsFlag;                                       // Shows whether this cut is used or not
+  Int_t fNLambdasMin, fNLambdasMax;                           // # of lambdas range
+  Bool_t fNLambdasFlag;                                       // Shows whether this cut is used or not
+  Int_t fNPhotonsMin, fNPhotonsMax;                           // # of photons range
+  Bool_t fNPhotonFlag;                                        // Shows whether this cut is used or not
+  Int_t fNPi0sMin, fNPi0sMax;                                 // # of Pi0s range
+  Bool_t fNPi0sFlag;                                          // Shows whether this cut is used or not
+  Int_t fNNeutronsMin, fNNeutronsMax;                         // # of neutrons range
+  Bool_t fNNeutronsFlag;                                      // Shows whether this cut is used or not
+  Int_t fNKaon0sMin, fNKaon0sMax;                             // # of K0s range
+  Bool_t fNKaon0sFlag;                                        // Shows whether this cut is used or not  
+  Float_t fTotalPMin, fTotalPMax;                             // Range of the sum of the momentum per event
+  Bool_t fTotalPFlag;                                         // Shows whether this cut is used or not
+  Float_t fMeanPtMin, fMeanPtMax;                             // Range of mean Pt per event
+  Bool_t fMeanPtFlag;                                         // Shows whether this cut is used or not
+  Float_t fTopPtMin;                                          // Max Pt for each event
+  Bool_t fTopPtMinFlag;                                       // Shows whether this cut is used or not
+  Float_t fTotalNeutralPMin, fTotalNeutralPMax;               // Sum of the momentum per event for neutral
+  Bool_t fTotalNeutralPFlag;                                  // Shows whether this cut is used or not
+  Float_t fMeanNeutralPtMin, fMeanNeutralPtMax;               // Mean Pt per event for neutral
+  Bool_t fMeanNeutralPtFlag;                                  // Shows whether this cut is used or not
+  Float_t fTopNeutralPtMin;                                   // Minimum value for highest Pt for the event for neutral
+  Bool_t fTopNeutralPtMinFlag;                                // Shows whether this cut is used or not
+  Float_t fEventPlaneAngleMin, fEventPlaneAngleMax;           // event plane info
+  Bool_t fEventPlaneAngleFlag;                                // Shows whether this cut is used or not
+  Float_t fHBTRadiiMin, fHBTRadiiMax;                         // HBT info
+  Bool_t fHBTRadiiFlag;                                       // Shows whether this cut is used or not
+
+  Int_t fNumberOfFiredChipsLayer1Min, fNumberOfFiredChipsLayer1Max; //min/max number of fired chips - layer 1
+  Bool_t fNumberOfFiredChipsLayer1Flag;                       // Shows whether this cut is used or not
+  Int_t fNumberOfFiredChipsLayer2Min, fNumberOfFiredChipsLayer2Max; //min/max number of fired chips - layer 2
+  Bool_t fNumberOfFiredChipsLayer2Flag;                       // Shows whether this cut is used or not
+  Int_t fNumberOfSPDTrackletsMin, fNumberOfSPDTrackletsMax;   //min/max number of SPD tracklets
+  Bool_t fNumberOfSPDTrackletsFlag;                          // Shows whether this cut is used or not
+
+
+  ClassDef(AliEventTagCuts, 3)
 };
 
 #endif