PamCut: CaloCuts/CaloNucleiZCut/CaloNucleiZCut.h Source File

- Main Page
- Classes
- Files

- File List
- File Members

# CaloCuts/CaloNucleiZCut/CaloNucleiZCut.h

Go to the documentation of this file.

    00001 /*
    00002  * CaloNucleiZCut.h
    00003  *
    00004  *  Created on: 30-apr-2009
    00005  *      Author: Nicola Mori
    00006  */
    00007
    00010 #ifndef NO_CALONUCLEI
    00011
    00012 #ifndef CALONUCLEIZCUT_H_
    00013 #define CALONUCLEIZCUT_H_
    00014
    00015 #include "../../PamCutBase/PamCutBase.h"
    00016 #include <CaloNuclei.h>
    00017
    00018 #include <TH2F.h>
    00019
    00021 enum CaloNucleiZ_Return {
    00022   CALONUCLEIZ_OUTOFBOUNDS,
    00023   CALONUCLEIZ_ILLEGALZ
    00025 };
    00026
    00028 enum CaloNucleiZ_method {
    00029   CALONUCLEIZ_SIEGEN,
    00030   CALONUCLEIZ_DEDXBETA,
    00031   CALONUCLEIZ_DEDXDEFL,
    00033 };
    00034
    00041 class CaloNucleiZCut: public PamCut {
    00042
    00043 public:
    00056   CaloNucleiZCut(const char *cutName, unsigned int Z, float lowerLimit, float upperLimit, unsigned int method =
    00057       CALONUCLEIZ_SIEGEN) :
    00058     PamCut(cutName), _Z(Z), _lowerLimit(lowerLimit), _upperLimit(upperLimit), _caloNuclei(NULL), _method(method) {
    00059
    00060   }
    00062   ~CaloNucleiZCut() {
    00063     delete _caloNuclei;
    00064
    00065   }
    00066
    00087   int Check(PamLevel2 *event);
    00088
    00089 private:
    00090
    00091   unsigned int _Z;
    00092   static const float _sigmaZ[];
    00093
    00094   float _lowerLimit;
    00095   float _upperLimit;
    00096   CaloNuclei *_caloNuclei;
    00097
    00098   unsigned int _method;
    00099 };
    00100 #endif /* CALONUCLEIZCUT_H_ */
    00101
    00102 #endif /* NO_CALONUCLEI */