CMS 3D CMS Logo

Public Types | Public Member Functions | Private Member Functions | Private Attributes

AbsFFTJetScaleCalculator< Jet, Adjustable > Class Template Reference

#include <AbsFFTJetScaleCalculator.h>

List of all members.

Public Types

typedef Adjustable adjustable_type
typedef Jet jet_type

Public Member Functions

 AbsFFTJetScaleCalculator (CPP11_shared_ptr< npstat::AbsMultivariateFunctor > f)
double scale (const Jet &jet, const Adjustable &current) const
virtual ~AbsFFTJetScaleCalculator ()

Private Member Functions

 AbsFFTJetScaleCalculator ()
virtual void map (const Jet &jet, const Adjustable &current, double *buf, unsigned dim) const =0

Private Attributes

std::vector< double > buffer_
CPP11_shared_ptr
< npstat::AbsMultivariateFunctor
functor

Detailed Description

template<class Jet, class Adjustable>
class AbsFFTJetScaleCalculator< Jet, Adjustable >

Definition at line 9 of file AbsFFTJetScaleCalculator.h.


Member Typedef Documentation

template<class Jet, class Adjustable>
typedef Adjustable AbsFFTJetScaleCalculator< Jet, Adjustable >::adjustable_type

Definition at line 13 of file AbsFFTJetScaleCalculator.h.

template<class Jet, class Adjustable>
typedef Jet AbsFFTJetScaleCalculator< Jet, Adjustable >::jet_type

Definition at line 12 of file AbsFFTJetScaleCalculator.h.


Constructor & Destructor Documentation

template<class Jet, class Adjustable>
AbsFFTJetScaleCalculator< Jet, Adjustable >::AbsFFTJetScaleCalculator ( CPP11_shared_ptr< npstat::AbsMultivariateFunctor f) [inline, explicit]

Definition at line 15 of file AbsFFTJetScaleCalculator.h.

        : functor(f), buffer_(f->minDim()) {}
template<class Jet, class Adjustable>
virtual AbsFFTJetScaleCalculator< Jet, Adjustable >::~AbsFFTJetScaleCalculator ( ) [inline, virtual]

Definition at line 19 of file AbsFFTJetScaleCalculator.h.

{}
template<class Jet, class Adjustable>
AbsFFTJetScaleCalculator< Jet, Adjustable >::AbsFFTJetScaleCalculator ( ) [private]

Member Function Documentation

template<class Jet, class Adjustable>
virtual void AbsFFTJetScaleCalculator< Jet, Adjustable >::map ( const Jet &  jet,
const Adjustable &  current,
double *  buf,
unsigned  dim 
) const [private, pure virtual]
template<class Jet, class Adjustable>
double AbsFFTJetScaleCalculator< Jet, Adjustable >::scale ( const Jet &  jet,
const Adjustable &  current 
) const [inline]

Definition at line 21 of file AbsFFTJetScaleCalculator.h.

    {
        const unsigned dim = buffer_.size();
        double* buf = dim ? &buffer_[0] : static_cast<double*>(0);
        this->map(jet, current, buf, dim);
        return (*functor)(buf, dim);
    }

Member Data Documentation

template<class Jet, class Adjustable>
std::vector<double> AbsFFTJetScaleCalculator< Jet, Adjustable >::buffer_ [mutable, private]
template<class Jet, class Adjustable>
CPP11_shared_ptr<npstat::AbsMultivariateFunctor> AbsFFTJetScaleCalculator< Jet, Adjustable >::functor [private]