10#ifndef ROOT_Minuit2_ABProd
11#define ROOT_Minuit2_ABProd
20template<
class M1,
class M2>
29 template<
class MI1,
class MI2>
40 template<
class MI1,
class MI2>
43 const M1&
A()
const {
return fA;}
44 const M2&
B()
const {
return fB;}
53template<
class atype,
class A,
class btype,
class B,
class T>
54inline ABObj<typename AlgebraicProdType<atype, btype>::Type,
ABProd<ABObj<atype,A,T>,
ABObj<btype,B,T> >,
T>
operator*(
const ABObj<atype,A,T>&
a,
const ABObj<btype,B,T>&
b) {
56 return ABObj<typename AlgebraicProdType<atype,btype>::Type,
ABProd<ABObj<atype,A,T>,
ABObj<btype,B,T> >,
T>(
ABProd<ABObj<atype,A,T>,
ABObj<btype,B,T> >(
a,
b));
ABProd & operator=(const ABProd &)
ABProd(const ABProd< MI1, MI2 > &prod)
ABProd(const ABProd &prod)
ABProd & operator=(const ABProd< MI1, MI2 > &)
ABProd(const M1 &a, const M2 &b)
ABObj< mt, M, T > operator*(T f, const M &obj)
Namespace for new ROOT classes and functions.