Public Types | Public Member Functions | Protected Attributes | List of all members
Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type > Class Template Reference

Generic expression where a coefficient-wise ternary operator is applied to two expressions. More...

#include <CwiseTernaryOp.h>

Inheritance diagram for Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >:
Inheritance graph
[legend]

Public Types

typedef internal::remove_reference< Arg1Nested >::type _Arg1Nested
 
typedef internal::remove_reference< Arg2Nested >::type _Arg2Nested
 
typedef internal::remove_reference< Arg3Nested >::type _Arg3Nested
 
typedef internal::remove_all< Arg1Type >::type Arg1
 
typedef internal::ref_selector< Arg1Type >::type Arg1Nested
 
typedef internal::remove_all< Arg2Type >::type Arg2
 
typedef internal::ref_selector< Arg2Type >::type Arg2Nested
 
typedef internal::remove_all< Arg3Type >::type Arg3
 
typedef internal::ref_selector< Arg3Type >::type Arg3Nested
 
typedef CwiseTernaryOpImpl< TernaryOp, Arg1Type, Arg2Type, Arg3Type, typename internal::traits< Arg1Type >::StorageKind >::Base Base
 
- Public Types inherited from Eigen::CwiseTernaryOpImpl< TernaryOp, Arg1Type, Arg2Type, Arg3Type, internal::traits< Arg1Type >::StorageKind >
typedef internal::generic_xpr_base< CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type > >::type Base
 

Public Member Functions

EIGEN_DEVICE_FUNC const _Arg1Nestedarg1 () const
 
EIGEN_DEVICE_FUNC const _Arg2Nestedarg2 () const
 
EIGEN_DEVICE_FUNC const _Arg3Nestedarg3 () const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Index cols () const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE CwiseTernaryOp (const Arg1 &a1, const Arg2 &a2, const Arg3 &a3, const TernaryOp &func=TernaryOp())
 
EIGEN_DEVICE_FUNC const TernaryOp & functor () const
 
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Index rows () const
 

Protected Attributes

Arg1Nested m_arg1
 
Arg2Nested m_arg2
 
Arg3Nested m_arg3
 
const TernaryOp m_functor
 

Detailed Description

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
class Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >

Generic expression where a coefficient-wise ternary operator is applied to two expressions.

Template Parameters
TernaryOptemplate functor implementing the operator
Arg1Typethe type of the first argument
Arg2Typethe type of the second argument
Arg3Typethe type of the third argument

This class represents an expression where a coefficient-wise ternary operator is applied to three expressions. It is the return type of ternary operators, by which we mean only those ternary operators where all three arguments are Eigen expressions. For example, the return type of betainc(matrix1, matrix2, matrix3) is a CwiseTernaryOp.

Most of the time, this is the only way that it is used, so you typically don't have to name CwiseTernaryOp types explicitly.

See also
MatrixBase::ternaryExpr(const MatrixBase<Argument2> &, const MatrixBase<Argument3> &, const CustomTernaryOp &) const, class CwiseBinaryOp, class CwiseUnaryOp, class CwiseNullaryOp

Definition at line 84 of file CwiseTernaryOp.h.

Member Typedef Documentation

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
typedef internal::remove_reference<Arg1Nested>::type Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::_Arg1Nested

Definition at line 102 of file CwiseTernaryOp.h.

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
typedef internal::remove_reference<Arg2Nested>::type Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::_Arg2Nested

Definition at line 103 of file CwiseTernaryOp.h.

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
typedef internal::remove_reference<Arg3Nested>::type Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::_Arg3Nested

Definition at line 104 of file CwiseTernaryOp.h.

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
typedef internal::remove_all<Arg1Type>::type Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::Arg1

Definition at line 90 of file CwiseTernaryOp.h.

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
typedef internal::ref_selector<Arg1Type>::type Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::Arg1Nested

Definition at line 99 of file CwiseTernaryOp.h.

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
typedef internal::remove_all<Arg2Type>::type Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::Arg2

Definition at line 91 of file CwiseTernaryOp.h.

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
typedef internal::ref_selector<Arg2Type>::type Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::Arg2Nested

Definition at line 100 of file CwiseTernaryOp.h.

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
typedef internal::remove_all<Arg3Type>::type Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::Arg3

Definition at line 92 of file CwiseTernaryOp.h.

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
typedef internal::ref_selector<Arg3Type>::type Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::Arg3Nested

Definition at line 101 of file CwiseTernaryOp.h.

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
typedef CwiseTernaryOpImpl< TernaryOp, Arg1Type, Arg2Type, Arg3Type, typename internal::traits<Arg1Type>::StorageKind>::Base Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::Base

Definition at line 96 of file CwiseTernaryOp.h.

Constructor & Destructor Documentation

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::CwiseTernaryOp ( const Arg1 a1,
const Arg2 a2,
const Arg3 a3,
const TernaryOp &  func = TernaryOp() 
)
inline

Definition at line 107 of file CwiseTernaryOp.h.

Member Function Documentation

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
EIGEN_DEVICE_FUNC const _Arg1Nested& Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::arg1 ( ) const
inline
Returns
the first argument nested expression

Definition at line 166 of file CwiseTernaryOp.h.

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
EIGEN_DEVICE_FUNC const _Arg2Nested& Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::arg2 ( ) const
inline
Returns
the first argument nested expression

Definition at line 169 of file CwiseTernaryOp.h.

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
EIGEN_DEVICE_FUNC const _Arg3Nested& Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::arg3 ( ) const
inline
Returns
the third argument nested expression

Definition at line 172 of file CwiseTernaryOp.h.

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Index Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::cols ( ) const
inline

Definition at line 147 of file CwiseTernaryOp.h.

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
EIGEN_DEVICE_FUNC const TernaryOp& Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::functor ( ) const
inline
Returns
the functor representing the ternary operation

Definition at line 175 of file CwiseTernaryOp.h.

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Index Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::rows ( ) const
inline

Definition at line 130 of file CwiseTernaryOp.h.

Member Data Documentation

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
Arg1Nested Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::m_arg1
protected

Definition at line 178 of file CwiseTernaryOp.h.

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
Arg2Nested Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::m_arg2
protected

Definition at line 179 of file CwiseTernaryOp.h.

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
Arg3Nested Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::m_arg3
protected

Definition at line 180 of file CwiseTernaryOp.h.

template<typename TernaryOp, typename Arg1Type, typename Arg2Type, typename Arg3Type>
const TernaryOp Eigen::CwiseTernaryOp< TernaryOp, Arg1Type, Arg2Type, Arg3Type >::m_functor
protected

Definition at line 181 of file CwiseTernaryOp.h.


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


hebiros
Author(s): Xavier Artache , Matthew Tesch
autogenerated on Thu Sep 3 2020 04:10:00