MINT2
Public Member Functions | Private Member Functions | Private Attributes | List of all members
MINT::ComplexProductForEvent< EVENT_TYPE > Class Template Reference

#include <ComplexProductForEvent.h>

Inheritance diagram for MINT::ComplexProductForEvent< EVENT_TYPE >:
MINT::IComplexForEventFitParDependent< EVENT_TYPE > MINT::FitParDependent MINT::IReturnComplexForEvent< EVENT_TYPE > MINT::IFitParDependent MINT::IFitParRegister MINT::PolymorphVector< FitParRef > MINT::IFitParDependent

Public Member Functions

 ComplexProductForEvent (IFitParRegister *daddy=0)
 
 ComplexProductForEvent (double initVal, IFitParRegister *daddy=0)
 
 ComplexProductForEvent (const std::complex< double > &z, IFitParRegister *daddy=0)
 
 ComplexProductForEvent (const ComplexProduct &other, IFitParRegister *newDaddy=0)
 
 ComplexProductForEvent (const ComplexProductForEvent< EVENT_TYPE > &other, IFitParRegister *newDaddy=0)
 
void addTerm (double val)
 
void addTerm (const std::complex< double > &z)
 
void addTerm (const counted_ptr< IComplexFitParDependent > &irc)
 
void addTerm (const counted_ptr< IReturnComplex > &irc)
 
void addTerm (const counted_ptr< IComplexForEventFitParDependent< EVENT_TYPE > > &irce)
 
void addTerm (const counted_ptr< IReturnComplexForEvent< EVENT_TYPE > > &irce)
 
void multiply (const ComplexProductForEvent &other, IFitParRegister *newDaddy=0)
 
ComplexProductForEventoperator *= (double val)
 
ComplexProductForEventoperator *= (const std::complex< double > &z)
 
ComplexProductForEventoperator *= (const counted_ptr< IReturnComplex > &irc)
 
ComplexProductForEventoperator *= (const counted_ptr< IComplexForEventFitParDependent< EVENT_TYPE > > &irce)
 
ComplexProductForEventoperator *= (const counted_ptr< IReturnComplexForEvent< EVENT_TYPE > > &irce)
 
ComplexProductForEventoperator *= (const ComplexProduct &cp)
 
ComplexProductForEventoperator *= (const ComplexProductForEvent< EVENT_TYPE > &cpe)
 
std::complex< double > ComplexVal (EVENT_TYPE &evt)
 
- Public Member Functions inherited from MINT::IReturnComplexForEvent< EVENT_TYPE >
virtual ~IReturnComplexForEvent ()
 
- Public Member Functions inherited from MINT::FitParDependent
virtual unsigned int size () const
 
virtual const FitParRefoperator[] (unsigned int i) const
 
virtual FitParRefoperator[] (unsigned int i)
 
virtual bool changedSinceLastCall () const
 
virtual void rememberFitParValues ()
 
virtual bool registerFitParDependence (const IFitParDependent &fpd)
 
bool registerFitParDependence (const FitParRef &fpr)
 
void removeAllFitParDependencies ()
 
 FitParDependent (IFitParRegister *daddy=0)
 
 FitParDependent (const FitParDependent &other, IFitParRegister *newDaddy=0)
 
void listFitParDependencies (std::ostream &os=std::cout) const
 
- Public Member Functions inherited from MINT::PolymorphVector< FitParRef >
 PolymorphVector ()
 
 PolymorphVector (unsigned int N)
 
 PolymorphVector (unsigned int N, const FitParRef &c)
 
 PolymorphVector (const PolymorphVector &other)
 
 PolymorphVector (const typename std::vector< FitParRef > &other)
 
virtual ~PolymorphVector ()
 
std::vector< FitParRef > & theVector ()
 
const std::vector< FitParRef > & theVector () const
 
FitParRefoperator[] (unsigned int i)
 
const FitParRefoperator[] (unsigned int i) const
 
FitParRefat (unsigned int i)
 
const FitParRefat (unsigned int i) const
 
std::vector< FitParRef >::iterator begin ()
 
std::vector< FitParRef >::const_iterator begin () const
 
std::vector< FitParRef >::iterator end ()
 
std::vector< FitParRef >::const_iterator end () const
 
std::vector< FitParRef >::iterator find (const FitParRef &c)
 
std::vector< FitParRef >::const_iterator find (const FitParRef &c) const
 
FitParReffront ()
 
const FitParReffront () const
 
FitParRefback ()
 
const FitParRefback () const
 
unsigned int size () const
 
bool empty () const
 
void push_back (const FitParRef &c)
 
void pop_back ()
 
void erase (typename std::vector< FitParRef >::iterator pos)
 
void erase (typename std::vector< FitParRef >::iterator first, typename std::vector< FitParRef >::iterator last)
 
PolymorphVector< FitParRef > & operator= (const PolymorphVector< FitParRef > &other)
 
void clear ()
 
void resize (unsigned int N)
 
void resize (unsigned int N, const FitParRef &c)
 
 operator const typename std::vector< FitParRef > & () const
 
 operator typename std::vector< FitParRef > & ()
 
bool operator== (const MINT::PolymorphVector< FitParRef > &v2) const
 
bool operator!= (const MINT::PolymorphVector< FitParRef > &v2) const
 
bool operator< (const MINT::PolymorphVector< FitParRef > &v2) const
 
bool operator> (const MINT::PolymorphVector< FitParRef > &v2) const
 

Private Member Functions

std::complex< double > event_dependent_complexProduct (EVENT_TYPE &evt)
 

Private Attributes

ComplexProduct _eventIndependentProduct
 
std::vector< counted_ptr< IReturnComplexForEvent< EVENT_TYPE > > > _evt_dep_factors
 

Additional Inherited Members

- Protected Member Functions inherited from MINT::IReturnComplexForEvent< EVENT_TYPE >
 IReturnComplexForEvent ()
 
- Protected Attributes inherited from MINT::PolymorphVector< FitParRef >
std::vector< FitParRef_vec
 

Detailed Description

template<typename EVENT_TYPE>
class MINT::ComplexProductForEvent< EVENT_TYPE >

Definition at line 20 of file ComplexProductForEvent.h.

Constructor & Destructor Documentation

◆ ComplexProductForEvent() [1/5]

template<typename EVENT_TYPE>
MINT::ComplexProductForEvent< EVENT_TYPE >::ComplexProductForEvent ( IFitParRegister daddy = 0)
inline

Definition at line 37 of file ComplexProductForEvent.h.

38  : FitParDependent(daddy)
39  , _eventIndependentProduct(this){}
FitParDependent(IFitParRegister *daddy=0)

◆ ComplexProductForEvent() [2/5]

template<typename EVENT_TYPE>
MINT::ComplexProductForEvent< EVENT_TYPE >::ComplexProductForEvent ( double  initVal,
IFitParRegister daddy = 0 
)
inline

Definition at line 40 of file ComplexProductForEvent.h.

41  : FitParDependent(daddy)
42  , _eventIndependentProduct(initVal, this){}
FitParDependent(IFitParRegister *daddy=0)

◆ ComplexProductForEvent() [3/5]

template<typename EVENT_TYPE>
MINT::ComplexProductForEvent< EVENT_TYPE >::ComplexProductForEvent ( const std::complex< double > &  z,
IFitParRegister daddy = 0 
)
inline

Definition at line 43 of file ComplexProductForEvent.h.

44  : FitParDependent(daddy)
45  , _eventIndependentProduct(z, this){}
FitParDependent(IFitParRegister *daddy=0)

◆ ComplexProductForEvent() [4/5]

template<typename EVENT_TYPE>
MINT::ComplexProductForEvent< EVENT_TYPE >::ComplexProductForEvent ( const ComplexProduct other,
IFitParRegister newDaddy = 0 
)
inline

Definition at line 46 of file ComplexProductForEvent.h.

47  : FitParDependent(other, newDaddy)
48  , _eventIndependentProduct(other, this){}
FitParDependent(IFitParRegister *daddy=0)

◆ ComplexProductForEvent() [5/5]

template<typename EVENT_TYPE>
MINT::ComplexProductForEvent< EVENT_TYPE >::ComplexProductForEvent ( const ComplexProductForEvent< EVENT_TYPE > &  other,
IFitParRegister newDaddy = 0 
)
inline

Definition at line 49 of file ComplexProductForEvent.h.

51  : FitParDependent(other, newDaddy)
52  , _eventIndependentProduct(other._eventIndependentProduct, this)
53  , _evt_dep_factors(other._evt_dep_factors)
54  {}
FitParDependent(IFitParRegister *daddy=0)
std::vector< counted_ptr< IReturnComplexForEvent< EVENT_TYPE > > > _evt_dep_factors

Member Function Documentation

◆ addTerm() [1/6]

template<typename EVENT_TYPE>
void MINT::ComplexProductForEvent< EVENT_TYPE >::addTerm ( double  val)
inline

Definition at line 56 of file ComplexProductForEvent.h.

56 {_eventIndependentProduct.addTerm(val);} // by value
void addTerm(double val)

◆ addTerm() [2/6]

template<typename EVENT_TYPE>
void MINT::ComplexProductForEvent< EVENT_TYPE >::addTerm ( const std::complex< double > &  z)
inline

Definition at line 57 of file ComplexProductForEvent.h.

57 {_eventIndependentProduct.addTerm(z);} // by value
void addTerm(double val)

◆ addTerm() [3/6]

template<typename EVENT_TYPE>
void MINT::ComplexProductForEvent< EVENT_TYPE >::addTerm ( const counted_ptr< IComplexFitParDependent > &  irc)
inline

Definition at line 58 of file ComplexProductForEvent.h.

58  {
59  _eventIndependentProduct.addTerm(irc);} // by reference
void addTerm(double val)

◆ addTerm() [4/6]

template<typename EVENT_TYPE>
void MINT::ComplexProductForEvent< EVENT_TYPE >::addTerm ( const counted_ptr< IReturnComplex > &  irc)
inline

Definition at line 60 of file ComplexProductForEvent.h.

60  {
61  _eventIndependentProduct.addTerm(irc);} // by reference
void addTerm(double val)

◆ addTerm() [5/6]

template<typename EVENT_TYPE>
void MINT::ComplexProductForEvent< EVENT_TYPE >::addTerm ( const counted_ptr< IComplexForEventFitParDependent< EVENT_TYPE > > &  irce)
inline

Definition at line 62 of file ComplexProductForEvent.h.

62  {
64  _evt_dep_factors.push_back(irce);} // by reference
std::vector< counted_ptr< IReturnComplexForEvent< EVENT_TYPE > > > _evt_dep_factors
virtual bool registerFitParDependence(const IFitParDependent &fpd)

◆ addTerm() [6/6]

template<typename EVENT_TYPE>
void MINT::ComplexProductForEvent< EVENT_TYPE >::addTerm ( const counted_ptr< IReturnComplexForEvent< EVENT_TYPE > > &  irce)
inline

Definition at line 65 of file ComplexProductForEvent.h.

65  {
66  _evt_dep_factors.push_back(irce);} // by reference
std::vector< counted_ptr< IReturnComplexForEvent< EVENT_TYPE > > > _evt_dep_factors

◆ ComplexVal()

template<typename EVENT_TYPE>
std::complex<double> MINT::ComplexProductForEvent< EVENT_TYPE >::ComplexVal ( EVENT_TYPE &  evt)
inlinevirtual

Implements MINT::IReturnComplexForEvent< EVENT_TYPE >.

Definition at line 84 of file ComplexProductForEvent.h.

84  {
87  }
std::complex< double > ComplexVal()
std::complex< double > event_dependent_complexProduct(EVENT_TYPE &evt)

◆ event_dependent_complexProduct()

template<typename EVENT_TYPE>
std::complex<double> MINT::ComplexProductForEvent< EVENT_TYPE >::event_dependent_complexProduct ( EVENT_TYPE &  evt)
inlineprivate

Definition at line 28 of file ComplexProductForEvent.h.

28  {
29  std::complex<double> prod(1,0);
30  for(unsigned i = 0; i < _evt_dep_factors.size(); i++){
31  prod *= (_evt_dep_factors[i])->ComplexVal(evt);
32  }
33  return prod;
34  }
std::vector< counted_ptr< IReturnComplexForEvent< EVENT_TYPE > > > _evt_dep_factors
std::complex< double > ComplexVal(EVENT_TYPE &evt)

◆ multiply()

template<typename EVENT_TYPE>
void MINT::ComplexProductForEvent< EVENT_TYPE >::multiply ( const ComplexProductForEvent< EVENT_TYPE > &  other,
IFitParRegister newDaddy = 0 
)
inline

Definition at line 68 of file ComplexProductForEvent.h.

68  {
69  registerFitParDependence(other, newDaddy);
71  for(unsigned int i=0; i< other._evt_dep_factors.size(); i++){
72  addTerm(other._evt_dep_factors[i]);
73  }
74  }
void multiply(const ComplexProduct &multiplyWith)
virtual bool registerFitParDependence(const IFitParDependent &fpd)

◆ operator *=() [1/7]

template<typename EVENT_TYPE>
ComplexProductForEvent& MINT::ComplexProductForEvent< EVENT_TYPE >::operator *= ( double  val)
inline

Definition at line 76 of file ComplexProductForEvent.h.

76 {addTerm(val);}

◆ operator *=() [2/7]

template<typename EVENT_TYPE>
ComplexProductForEvent& MINT::ComplexProductForEvent< EVENT_TYPE >::operator *= ( const std::complex< double > &  z)
inline

Definition at line 77 of file ComplexProductForEvent.h.

77 {addTerm(z);}

◆ operator *=() [3/7]

template<typename EVENT_TYPE>
ComplexProductForEvent& MINT::ComplexProductForEvent< EVENT_TYPE >::operator *= ( const counted_ptr< IReturnComplex > &  irc)
inline

Definition at line 78 of file ComplexProductForEvent.h.

78 {addTerm(irc);}

◆ operator *=() [4/7]

template<typename EVENT_TYPE>
ComplexProductForEvent& MINT::ComplexProductForEvent< EVENT_TYPE >::operator *= ( const counted_ptr< IComplexForEventFitParDependent< EVENT_TYPE > > &  irce)
inline

Definition at line 79 of file ComplexProductForEvent.h.

79 {addTerm(irce);}

◆ operator *=() [5/7]

template<typename EVENT_TYPE>
ComplexProductForEvent& MINT::ComplexProductForEvent< EVENT_TYPE >::operator *= ( const counted_ptr< IReturnComplexForEvent< EVENT_TYPE > > &  irce)
inline

Definition at line 80 of file ComplexProductForEvent.h.

80 {addTerm(irce);}

◆ operator *=() [6/7]

template<typename EVENT_TYPE>
ComplexProductForEvent& MINT::ComplexProductForEvent< EVENT_TYPE >::operator *= ( const ComplexProduct cp)
inline

Definition at line 81 of file ComplexProductForEvent.h.

void multiply(const ComplexProduct &multiplyWith)

◆ operator *=() [7/7]

template<typename EVENT_TYPE>
ComplexProductForEvent& MINT::ComplexProductForEvent< EVENT_TYPE >::operator *= ( const ComplexProductForEvent< EVENT_TYPE > &  cpe)
inline

Definition at line 82 of file ComplexProductForEvent.h.

82 {multiply(cpe);}
void multiply(const ComplexProductForEvent &other, IFitParRegister *newDaddy=0)

Member Data Documentation

◆ _eventIndependentProduct

template<typename EVENT_TYPE>
ComplexProduct MINT::ComplexProductForEvent< EVENT_TYPE >::_eventIndependentProduct
private

Definition at line 24 of file ComplexProductForEvent.h.

◆ _evt_dep_factors

template<typename EVENT_TYPE>
std::vector< counted_ptr<IReturnComplexForEvent<EVENT_TYPE> > > MINT::ComplexProductForEvent< EVENT_TYPE >::_evt_dep_factors
private

Definition at line 26 of file ComplexProductForEvent.h.


The documentation for this class was generated from the following file: