2 #ifndef OPENGM_OPERATION_MULTIPLIER_HXX
3 #define OPENGM_OPERATION_MULTIPLIER_HXX
17 {
return static_cast<T
>(1); }
22 { out =
static_cast<T
>(1); }
27 {
return static_cast<T
>(1); }
32 { out =
static_cast<T
>(1); }
35 template<
class T1,
class T2>
36 static void op(
const T1& in, T2& out)
40 template<
class T1,
class T2,
class T3>
41 static void op(
const T1& in1,
const T2& in2, T3& out)
45 template<
class T1,
class T2>
46 static void iop(
const T1& in, T2& out)
50 template<
class T1,
class T2,
class T3>
51 static void iop(
const T1& in1,
const T2& in2, T3& out)
59 template<
class T1,
class T2>
60 static void hop(
const T1& in1, T2& out)
62 opengm::operateUnary(out,opengm::PowFunctor<T1>(in1) );
70 template<
class T1,
class T2,
class T3>
71 static void hop(
const T1& in1,
const T2& in2, T3& out)
73 opengm::operateUnary(in1,out,opengm::PowFunctor<T2>(in2) );
79 template<
class T1,
class T2>
80 static void ihop(
const T1& in1, T2& out)
82 opengm::operateUnary(out,opengm::PowFunctor<T1>(1.0/in1) );
87 template<
class T1,
class T2,
class T3>
88 static void ihop(
const T1& in1,
const T2& in2, T3& out)
91 opengm::operateUnary(in1,out,opengm::PowFunctor<T2>(1.0/in2) );
97 #endif // #ifndef OPENGM_OPERATION_MULTIPLIER_HXX
Multiplication as a binary operation.
static T ineutral()
inverse neutral element (with return)
static void hop(const T1 &in1, const T2 &in2, T3 &out)
hyper-operation (not in-place)
static void hop(const T1 &in1, T2 &out)
hyper-operation (not in-place)
static void ineutral(T &out)
inverse neutral element (call by reference)
static void neutral(T &out)
neutral element (call by reference)
static void ihop(const T1 &in1, T2 &out)
inverse hyper-operation (in-place)
static void iop(const T1 &in1, const T2 &in2, T3 &out)
inverse operation (not in-place)
static void ihop(const T1 &in1, const T2 &in2, T3 &out)
inverse hyper-operation (not in-place)
static void op(const T1 &in, T2 &out)
operation (in-place)
static T neutral()
neutral element (with return)
static void iop(const T1 &in, T2 &out)
inverse operation (in-place)
static bool hasbop()
bool operation flag
static void op(const T1 &in1, const T2 &in2, T3 &out)
operation (not in-place)