CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
fftjetcms::CompositeFunctor< T > Class Template Reference

#include <ScaleCalculators.h>

Inheritance diagram for fftjetcms::CompositeFunctor< T >:

Public Member Functions

 CompositeFunctor (const fftjet::Functor1< double, double > *f1, const fftjet::Functor1< double, T > *f2, const bool takeOwnership=false)
 
 CompositeFunctor ()=delete
 
double operator() (const T &r) const override
 
 ~CompositeFunctor () override
 

Private Attributes

const fftjet::Functor1< double, double > * f1_
 
const fftjet::Functor1< double, T > * f2_
 
const bool ownsPointers_
 

Detailed Description

template<class T>
class fftjetcms::CompositeFunctor< T >

Definition at line 62 of file ScaleCalculators.h.

Constructor & Destructor Documentation

◆ CompositeFunctor() [1/2]

template<class T >
fftjetcms::CompositeFunctor< T >::CompositeFunctor ( const fftjet::Functor1< double, double > *  f1,
const fftjet::Functor1< double, T > *  f2,
const bool  takeOwnership = false 
)
inline

Definition at line 64 of file ScaleCalculators.h.

67  : f1_(f1), f2_(f2), ownsPointers_(takeOwnership) {}
const fftjet::Functor1< double, T > * f2_
const fftjet::Functor1< double, double > * f1_

◆ CompositeFunctor() [2/2]

template<class T >
fftjetcms::CompositeFunctor< T >::CompositeFunctor ( )
delete

◆ ~CompositeFunctor()

template<class T >
fftjetcms::CompositeFunctor< T >::~CompositeFunctor ( )
inlineoverride

Definition at line 70 of file ScaleCalculators.h.

References fftjetcms::CompositeFunctor< T >::f1_, fftjetcms::CompositeFunctor< T >::f2_, and fftjetcms::CompositeFunctor< T >::ownsPointers_.

70  {
71  if (ownsPointers_) {
72  delete f1_;
73  delete f2_;
74  }
75  }
const fftjet::Functor1< double, T > * f2_
const fftjet::Functor1< double, double > * f1_

Member Function Documentation

◆ operator()()

template<class T >
double fftjetcms::CompositeFunctor< T >::operator() ( const T r) const
inlineoverride

Definition at line 77 of file ScaleCalculators.h.

References fftjetcms::CompositeFunctor< T >::f1_, and alignCSCRings::r.

77 { return (*f1_)((*f2_)(r)); }
const fftjet::Functor1< double, double > * f1_

Member Data Documentation

◆ f1_

template<class T >
const fftjet::Functor1<double, double>* fftjetcms::CompositeFunctor< T >::f1_
private

◆ f2_

template<class T >
const fftjet::Functor1<double, T>* fftjetcms::CompositeFunctor< T >::f2_
private

◆ ownsPointers_

template<class T >
const bool fftjetcms::CompositeFunctor< T >::ownsPointers_
private