Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:25:21

0001 // Basic choices which must be made in order to use the FFTJet package
0002 
0003 #ifndef RecoJets_FFTJetAlgorithms_fftjetTypedefs_h
0004 #define RecoJets_FFTJetAlgorithms_fftjetTypedefs_h
0005 
0006 // The header file for the FFTW library
0007 #include "fftw3.h"
0008 
0009 // Classes which build 4-momenta out of energy and direction
0010 #include "RecoJets/FFTJetAlgorithms/interface/VBuilders.h"
0011 
0012 // Header file for the concrete FFT engine used
0013 #include "fftjet/FFTWDoubleEngine.hh"
0014 
0015 // Header file for the functor interface
0016 #include "fftjet/SimpleFunctors.hh"
0017 
0018 namespace fftjetcms {
0019   // The following three typedefs reflect the choice of the
0020   // double precision FFTW library for performing DFFTs
0021   typedef double Real;
0022   typedef fftw_complex Complex;
0023   typedef fftjet::FFTWDoubleEngine MyFFTEngine;
0024 
0025   // The next typedef reflects the choice of the 4-vector class
0026   typedef math::XYZTLorentzVector VectorLike;
0027 
0028   // The following typedef tells how the 4-vectors will be
0029   // constructed from the grid points in the eta-phi space
0030   typedef PtEtaP4Builder VBuilder;
0031 
0032   // The following typedef tells which type (or class) is used
0033   // to provide pileup/background information
0034   typedef double BgData;
0035 
0036   // The following typedef defines the interface for the functor
0037   // which calculates the pileup/noise membership function
0038   typedef fftjet::Functor2<double, double, BgData> AbsBgFunctor;
0039 }  // namespace fftjetcms
0040 
0041 #endif  // RecoJets_FFTJetAlgorithms_fftjetTypedefs_h