LSSTApplications  10.0-2-g4f67435,11.0.rc2+1,11.0.rc2+12,11.0.rc2+3,11.0.rc2+4,11.0.rc2+5,11.0.rc2+6,11.0.rc2+7,11.0.rc2+8
LSSTDataManagementBasePackage
Public Types | Public Member Functions | Public Attributes | Private Types | List of all members
ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N > Class Template Reference

#include <UnaryOp.h>

Inheritance diagram for ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N >:
ndarray::ExpressionBase< UnaryOpExpression< Operand, UnaryFunction, N > >

Public Types

typedef ExpressionTraits< Self >
::Element 
Element
 
typedef ExpressionTraits< Self >
::ND 
ND
 
typedef ExpressionTraits< Self >
::Iterator 
Iterator
 
typedef ExpressionTraits< Self >
::Value 
Value
 
typedef ExpressionTraits< Self >
::Reference 
Reference
 
typedef Vector< int, N > Index
 
- Public Types inherited from ndarray::ExpressionBase< UnaryOpExpression< Operand, UnaryFunction, N > >
typedef ExpressionTraits
< UnaryOpExpression< Operand,
UnaryFunction, N > >::Element 
Element
 Data type of expression elements. More...
 
typedef ExpressionTraits
< UnaryOpExpression< Operand,
UnaryFunction, N > >::ND 
ND
 Number of dimensions (boost::mpl::int_). More...
 
typedef ExpressionTraits
< UnaryOpExpression< Operand,
UnaryFunction, N > >::Iterator 
Iterator
 Nested expression or element iterator. More...
 
typedef ExpressionTraits
< UnaryOpExpression< Operand,
UnaryFunction, N >
>::Reference 
Reference
 Nested expression or element reference. More...
 
typedef ExpressionTraits
< UnaryOpExpression< Operand,
UnaryFunction, N > >::Value 
Value
 Nested expression or element value type. More...
 
typedef Vector< int, ND::value > Index
 Vector type for N-dimensional indices. More...
 
typedef UnaryOpExpression
< Operand, UnaryFunction, N > 
Self
 CRTP derived type. More...
 
typedef Value value_type
 
typedef Iterator iterator
 
typedef Iterator const_iterator
 
typedef Reference reference
 
typedef Reference const_reference
 
typedef Iterator pointer
 
typedef int difference_type
 
typedef int size_type
 

Public Member Functions

 UnaryOpExpression (Operand const &operand, UnaryFunction const &functor)
 
Reference operator[] (int n) const
 
Iterator begin () const
 
Iterator end () const
 
template<int P>
int getSize () const
 
Index getShape () const
 
- Public Member Functions inherited from ndarray::ExpressionBase< UnaryOpExpression< Operand, UnaryFunction, N > >
Reference operator[] (int n) const
 Return a single nested expression or element. More...
 
Reference front () const
 Return the first nested expression or element. More...
 
Reference back () const
 Return the last nested expression or element. More...
 
Iterator begin () const
 Return an Iterator to the beginning of the expression. More...
 
Iterator end () const
 Return an Iterator to one past the end of the expression. More...
 
int getSize () const
 Return the size of a specific dimension. More...
 
Index getShape () const
 Return a Vector of the sizes of all dimensions. More...
 
int getNumElements () const
 Return the total number of elements in the expression. More...
 
size_type size () const
 Return the size of the first dimension. More...
 
bool empty () const
 Return true if the first dimension has no elements. More...
 

Public Attributes

Operand _operand
 
UnaryFunction _functor
 

Private Types

typedef UnaryOpExpression
< Operand, UnaryFunction, N > 
Self
 

Additional Inherited Members

- Protected Member Functions inherited from ndarray::ExpressionBase< UnaryOpExpression< Operand, UnaryFunction, N > >
SelfgetSelf ()
 
Self const & getSelf () const
 

Detailed Description

template<typename Operand, typename UnaryFunction, int N>
class ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N >

Definition at line 86 of file UnaryOp.h.

Member Typedef Documentation

template<typename Operand , typename UnaryFunction , int N>
typedef ExpressionTraits<Self>::Element ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N >::Element

Definition at line 89 of file UnaryOp.h.

template<typename Operand , typename UnaryFunction , int N>
typedef Vector<int,N> ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N >::Index

Definition at line 94 of file UnaryOp.h.

template<typename Operand , typename UnaryFunction , int N>
typedef ExpressionTraits<Self>::Iterator ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N >::Iterator

Definition at line 91 of file UnaryOp.h.

template<typename Operand , typename UnaryFunction , int N>
typedef ExpressionTraits<Self>::ND ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N >::ND

Definition at line 90 of file UnaryOp.h.

template<typename Operand , typename UnaryFunction , int N>
typedef ExpressionTraits<Self>::Reference ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N >::Reference

Definition at line 93 of file UnaryOp.h.

template<typename Operand , typename UnaryFunction , int N>
typedef UnaryOpExpression<Operand,UnaryFunction,N> ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N >::Self
private

Definition at line 87 of file UnaryOp.h.

template<typename Operand , typename UnaryFunction , int N>
typedef ExpressionTraits<Self>::Value ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N >::Value

Definition at line 92 of file UnaryOp.h.

Constructor & Destructor Documentation

template<typename Operand , typename UnaryFunction , int N>
ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N >::UnaryOpExpression ( Operand const &  operand,
UnaryFunction const &  functor 
)
inline

Definition at line 96 of file UnaryOp.h.

96  :
97  _operand(operand), _functor(functor) {}

Member Function Documentation

template<typename Operand , typename UnaryFunction , int N>
Iterator ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N >::begin ( void  ) const
inline

Definition at line 103 of file UnaryOp.h.

103  {
104  return Iterator(_operand.begin(),_functor);
105  }
ExpressionTraits< Self >::Iterator Iterator
Definition: UnaryOp.h:91
template<typename Operand , typename UnaryFunction , int N>
Iterator ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N >::end ( void  ) const
inline

Definition at line 107 of file UnaryOp.h.

107  {
108  return Iterator(_operand.end(),_functor);
109  }
ExpressionTraits< Self >::Iterator Iterator
Definition: UnaryOp.h:91
template<typename Operand , typename UnaryFunction , int N>
Index ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N >::getShape ( ) const
inline

Definition at line 115 of file UnaryOp.h.

115  {
116  return _operand.getShape();
117  }
template<typename Operand , typename UnaryFunction , int N>
template<int P>
int ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N >::getSize ( ) const
inline

Definition at line 111 of file UnaryOp.h.

111  {
112  return _operand.template getSize<P>();
113  }
template<typename Operand , typename UnaryFunction , int N>
Reference ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N >::operator[] ( int  n) const
inline

Definition at line 99 of file UnaryOp.h.

99  {
100  return Reference(_operand[n],_functor);
101  }
ExpressionTraits< Self >::Reference Reference
Definition: UnaryOp.h:93

Member Data Documentation

template<typename Operand , typename UnaryFunction , int N>
UnaryFunction ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N >::_functor

Definition at line 120 of file UnaryOp.h.

template<typename Operand , typename UnaryFunction , int N>
Operand ndarray::detail::UnaryOpExpression< Operand, UnaryFunction, N >::_operand

Definition at line 119 of file UnaryOp.h.


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