Functions

Operator_cube_relational

//! More...

Functions

template<typename T1 , typename T2 >
ucube operator== (const BaseCube< typename T1::elem_type, T1 > &X, const BaseCube< typename T1::elem_type, T2 > &Y)
template<typename T1 , typename T2 >
ucube operator!= (const BaseCube< typename T1::elem_type, T1 > &X, const BaseCube< typename T1::elem_type, T2 > &Y)
template<typename T1 , typename T2 >
ucube operator>= (const BaseCube< typename T1::elem_type, T1 > &X, const BaseCube< typename T1::elem_type, T2 > &Y)
template<typename T1 , typename T2 >
ucube operator<= (const BaseCube< typename T1::elem_type, T1 > &X, const BaseCube< typename T1::elem_type, T2 > &Y)
template<typename T1 , typename T2 >
ucube operator> (const BaseCube< typename T1::elem_type, T1 > &X, const BaseCube< typename T1::elem_type, T2 > &Y)
template<typename T1 , typename T2 >
ucube operator< (const BaseCube< typename T1::elem_type, T1 > &X, const BaseCube< typename T1::elem_type, T2 > &Y)
template<typename T1 >
ucube operator== (const BaseCube< typename T1::elem_type, T1 > &X, const typename T1::elem_type val)
template<typename T1 >
ucube operator!= (const BaseCube< typename T1::elem_type, T1 > &X, const typename T1::elem_type val)
template<typename T1 >
ucube operator>= (const BaseCube< typename T1::elem_type, T1 > &X, const typename T1::elem_type val)
template<typename T1 >
ucube operator<= (const BaseCube< typename T1::elem_type, T1 > &X, const typename T1::elem_type val)
template<typename T1 >
ucube operator> (const BaseCube< typename T1::elem_type, T1 > &X, const typename T1::elem_type val)
template<typename T1 >
ucube operator< (const BaseCube< typename T1::elem_type, T1 > &X, const typename T1::elem_type val)
template<typename T1 >
ucube operator== (const typename T1::elem_type val, const BaseCube< typename T1::elem_type, T1 > &X)
template<typename T1 >
ucube operator!= (const typename T1::elem_type val, const BaseCube< typename T1::elem_type, T1 > &X)
template<typename T1 >
ucube operator>= (const typename T1::elem_type val, const BaseCube< typename T1::elem_type, T1 > &X)
template<typename T1 >
ucube operator<= (const typename T1::elem_type val, const BaseCube< typename T1::elem_type, T1 > &X)
template<typename T1 >
ucube operator> (const typename T1::elem_type val, const BaseCube< typename T1::elem_type, T1 > &X)
template<typename T1 >
ucube operator< (const typename T1::elem_type val, const BaseCube< typename T1::elem_type, T1 > &X)

Detailed Description

//!


Function Documentation

template<typename T1 , typename T2 >
ucube operator== ( const BaseCube< typename T1::elem_type, T1 > &  X,
const BaseCube< typename T1::elem_type, T2 > &  Y 
) [inline]

Definition at line 26 of file operator_cube_relational.hpp.

References BaseCube< elem_type, derived >::get_ref(), and Cube< eT >::memptr().

Referenced by operator==().

  {
  arma_extra_debug_sigprint();
  
  typedef typename ucube::elem_type ucube_eT;
  
  const ProxyCube<T1> A(X.get_ref());
  const ProxyCube<T2> B(Y.get_ref());
  
  arma_debug_assert_same_size(A, B, "operator==");
  
  ucube out(A.n_rows, A.n_cols, A.n_slices);
  
  ucube_eT* out_mem = out.memptr();
  
  for(u32 i=0; i<A.n_elem; ++i)
    {
    if(A[i] == B[i])
      {
      out_mem[i] = ucube_eT(1);
      }
    else
      {
      out_mem[i] = ucube_eT(0);
      }
    }
  
  return out;
  }

template<typename T1 , typename T2 >
ucube operator!= ( const BaseCube< typename T1::elem_type, T1 > &  X,
const BaseCube< typename T1::elem_type, T2 > &  Y 
) [inline]

Definition at line 62 of file operator_cube_relational.hpp.

References BaseCube< elem_type, derived >::get_ref(), and Cube< eT >::memptr().

Referenced by operator!=().

  {
  arma_extra_debug_sigprint();
  
  typedef typename ucube::elem_type ucube_eT;
  
  const ProxyCube<T1> A(X.get_ref());
  const ProxyCube<T2> B(Y.get_ref());
    
  arma_debug_assert_same_size(A, B, "operator!=");
  
  ucube out(A.n_rows, A.n_cols, A.n_slices);
  
  ucube_eT* out_mem = out.memptr();
  
  for(u32 i=0; i<A.n_elem; ++i)
    {
    if(A[i] != B[i])
      {
      out_mem[i] = ucube_eT(1);
      }
    else
      {
      out_mem[i] = ucube_eT(0);
      }
    }
  
  return out;
  }

template<typename T1 , typename T2 >
ucube operator>= ( const BaseCube< typename T1::elem_type, T1 > &  X,
const BaseCube< typename T1::elem_type, T2 > &  Y 
) [inline]

Definition at line 98 of file operator_cube_relational.hpp.

References BaseCube< elem_type, derived >::get_ref(), and Cube< eT >::memptr().

  {
  arma_extra_debug_sigprint();
  
  typedef typename ucube::elem_type ucube_eT;
  
  const ProxyCube<T1> A(X.get_ref());
  const ProxyCube<T2> B(Y.get_ref());
    
  arma_debug_assert_same_size(A, B, "operator>=");
  
  ucube out(A.n_rows, A.n_cols, A.n_slices);
  
  ucube_eT* out_mem = out.memptr();
  
  for(u32 i=0; i<A.n_elem; ++i)
    {
    if(A[i] >= B[i])
      {
      out_mem[i] = ucube_eT(1);
      }
    else
      {
      out_mem[i] = ucube_eT(0);
      }
    }
  
  return out;
  }

template<typename T1 , typename T2 >
ucube operator<= ( const BaseCube< typename T1::elem_type, T1 > &  X,
const BaseCube< typename T1::elem_type, T2 > &  Y 
) [inline]

Definition at line 134 of file operator_cube_relational.hpp.

References BaseCube< elem_type, derived >::get_ref(), and Cube< eT >::memptr().

  {
  arma_extra_debug_sigprint();
  
  typedef typename ucube::elem_type ucube_eT;
  
  const ProxyCube<T1> A(X.get_ref());
  const ProxyCube<T2> B(Y.get_ref());
    
  arma_debug_assert_same_size(A, B, "operator<=");
  
  ucube out(A.n_rows, A.n_cols, A.n_slices);
  
  ucube_eT* out_mem = out.memptr();
  
  for(u32 i=0; i<A.n_elem; ++i)
    {
    if(A[i] <= B[i])
      {
      out_mem[i] = ucube_eT(1);
      }
    else
      {
      out_mem[i] = ucube_eT(0);
      }
    }
  
  return out;
  }

template<typename T1 , typename T2 >
ucube operator> ( const BaseCube< typename T1::elem_type, T1 > &  X,
const BaseCube< typename T1::elem_type, T2 > &  Y 
) [inline]

Definition at line 170 of file operator_cube_relational.hpp.

References BaseCube< elem_type, derived >::get_ref(), and Cube< eT >::memptr().

  {
  arma_extra_debug_sigprint();
  
  typedef typename ucube::elem_type ucube_eT;
  
  const ProxyCube<T1> A(X.get_ref());
  const ProxyCube<T2> B(Y.get_ref());
    
  arma_debug_assert_same_size(A, B, "operator>");
  
  ucube out(A.n_rows, A.n_cols, A.n_slices);
  
  ucube_eT* out_mem = out.memptr();
  
  for(u32 i=0; i<A.n_elem; ++i)
    {
    if(A[i] > B[i])
      {
      out_mem[i] = ucube_eT(1);
      }
    else
      {
      out_mem[i] = ucube_eT(0);
      }
    }
  
  return out;
  }

template<typename T1 , typename T2 >
ucube operator< ( const BaseCube< typename T1::elem_type, T1 > &  X,
const BaseCube< typename T1::elem_type, T2 > &  Y 
) [inline]

Definition at line 206 of file operator_cube_relational.hpp.

References BaseCube< elem_type, derived >::get_ref(), and Cube< eT >::memptr().

  {
  arma_extra_debug_sigprint();
  
  typedef typename ucube::elem_type ucube_eT;

  const ProxyCube<T1> A(X.get_ref());
  const ProxyCube<T2> B(Y.get_ref());
    
  arma_debug_assert_same_size(A, B, "operator<");
  
  ucube out(A.n_rows, A.n_cols, A.n_slices);
  
  ucube_eT* out_mem = out.memptr();
  
  for(u32 i=0; i<A.n_elem; ++i)
    {
    if(A[i] < B[i])
      {
      out_mem[i] = ucube_eT(1);
      }
    else
      {
      out_mem[i] = ucube_eT(0);
      }
    }
  
  return out;
  }

template<typename T1 >
ucube operator== ( const BaseCube< typename T1::elem_type, T1 > &  X,
const typename T1::elem_type  val 
) [inline]

Definition at line 242 of file operator_cube_relational.hpp.

References BaseCube< elem_type, derived >::get_ref().

  {
  arma_extra_debug_sigprint();
  
  typedef typename ucube::elem_type ucube_eT;
  
  const ProxyCube<T1> A(X.get_ref());
  
  ucube out(A.n_rows, A.n_cols, A.n_slices);
  
  ucube_eT* out_mem = out.memptr();
  
  for(u32 i=0; i<A.n_elem; ++i)
    {
    if(A[i] == val)
      {
      out_mem[i] = ucube_eT(1);
      }
    else
      {
      out_mem[i] = ucube_eT(0);
      }
    }
  
  return out;
  }

template<typename T1 >
ucube operator!= ( const BaseCube< typename T1::elem_type, T1 > &  X,
const typename T1::elem_type  val 
) [inline]

Definition at line 275 of file operator_cube_relational.hpp.

References BaseCube< elem_type, derived >::get_ref().

  {
  arma_extra_debug_sigprint();
  
  typedef typename ucube::elem_type ucube_eT;
  
  const ProxyCube<T1> A(X.get_ref());
    
  ucube out(A.n_rows, A.n_cols, A.n_slices);
  
  ucube_eT* out_mem = out.memptr();
  
  for(u32 i=0; i<A.n_elem; ++i)
    {
    if(A[i] != val)
      {
      out_mem[i] = ucube_eT(1);
      }
    else
      {
      out_mem[i] = ucube_eT(0);
      }
    }
  
  return out;
  }

template<typename T1 >
ucube operator>= ( const BaseCube< typename T1::elem_type, T1 > &  X,
const typename T1::elem_type  val 
) [inline]

Definition at line 308 of file operator_cube_relational.hpp.

References BaseCube< elem_type, derived >::get_ref().

  {
  arma_extra_debug_sigprint();
  
  typedef typename ucube::elem_type ucube_eT;
  
  const ProxyCube<T1> A(X.get_ref());
    
  ucube out(A.n_rows, A.n_cols, A.n_slices);
  
  ucube_eT* out_mem = out.memptr();
  
  for(u32 i=0; i<A.n_elem; ++i)
    {
    if(A[i] >= val)
      {
      out_mem[i] = ucube_eT(1);
      }
    else
      {
      out_mem[i] = ucube_eT(0);
      }
    }
  
  return out;
  }

template<typename T1 >
ucube operator<= ( const BaseCube< typename T1::elem_type, T1 > &  X,
const typename T1::elem_type  val 
) [inline]

Definition at line 341 of file operator_cube_relational.hpp.

References BaseCube< elem_type, derived >::get_ref().

  {
  arma_extra_debug_sigprint();
  
  typedef typename ucube::elem_type ucube_eT;
  
  const ProxyCube<T1> A(X.get_ref());
    
  ucube out(A.n_rows, A.n_cols, A.n_slices);
  
  ucube_eT* out_mem = out.memptr();
  
  for(u32 i=0; i<A.n_elem; ++i)
    {
    if(A[i] <= val)
      {
      out_mem[i] = ucube_eT(1);
      }
    else
      {
      out_mem[i] = ucube_eT(0);
      }
    }
  
  return out;
  }

template<typename T1 >
ucube operator> ( const BaseCube< typename T1::elem_type, T1 > &  X,
const typename T1::elem_type  val 
) [inline]

Definition at line 374 of file operator_cube_relational.hpp.

References BaseCube< elem_type, derived >::get_ref().

  {
  arma_extra_debug_sigprint();
  
  typedef typename ucube::elem_type ucube_eT;
  
  const ProxyCube<T1> A(X.get_ref());
    
  ucube out(A.n_rows, A.n_cols, A.n_slices);
  
  ucube_eT* out_mem = out.memptr();
  
  for(u32 i=0; i<A.n_elem; ++i)
    {
    if(A[i] > val)
      {
      out_mem[i] = ucube_eT(1);
      }
    else
      {
      out_mem[i] = ucube_eT(0);
      }
    }
  
  return out;
  }

template<typename T1 >
ucube operator< ( const BaseCube< typename T1::elem_type, T1 > &  X,
const typename T1::elem_type  val 
) [inline]

Definition at line 407 of file operator_cube_relational.hpp.

References BaseCube< elem_type, derived >::get_ref().

  {
  arma_extra_debug_sigprint();
  
  typedef typename ucube::elem_type ucube_eT;
  
  const ProxyCube<T1> A(X.get_ref());
    
  ucube out(A.n_rows, A.n_cols, A.n_slices);
  
  ucube_eT* out_mem = out.memptr();
  
  for(u32 i=0; i<A.n_elem; ++i)
    {
    if(A[i] < val)
      {
      out_mem[i] = ucube_eT(1);
      }
    else
      {
      out_mem[i] = ucube_eT(0);
      }
    }
  
  return out;
  }

template<typename T1 >
ucube operator== ( const typename T1::elem_type  val,
const BaseCube< typename T1::elem_type, T1 > &  X 
) [inline]

Definition at line 440 of file operator_cube_relational.hpp.

References operator==().

  {
  return operator==(X,val);
  }

template<typename T1 >
ucube operator!= ( const typename T1::elem_type  val,
const BaseCube< typename T1::elem_type, T1 > &  X 
) [inline]

Definition at line 451 of file operator_cube_relational.hpp.

References operator!=().

  {
  return operator!=(X,val);
  }

template<typename T1 >
ucube operator>= ( const typename T1::elem_type  val,
const BaseCube< typename T1::elem_type, T1 > &  X 
) [inline]

Definition at line 462 of file operator_cube_relational.hpp.

References BaseCube< elem_type, derived >::get_ref().

  {
  arma_extra_debug_sigprint();
  
  typedef typename ucube::elem_type ucube_eT;
  
  const ProxyCube<T1> A(X.get_ref());
    
  ucube out(A.n_rows, A.n_cols, A.n_slices);
  
  ucube_eT* out_mem = out.memptr();
  
  for(u32 i=0; i<A.n_elem; ++i)
    {
    if(val >= A[i])
      {
      out_mem[i] = ucube_eT(1);
      }
    else
      {
      out_mem[i] = ucube_eT(0);
      }
    }
  
  return out;
  }

template<typename T1 >
ucube operator<= ( const typename T1::elem_type  val,
const BaseCube< typename T1::elem_type, T1 > &  X 
) [inline]

Definition at line 495 of file operator_cube_relational.hpp.

References BaseCube< elem_type, derived >::get_ref().

  {
  arma_extra_debug_sigprint();
  
  typedef typename ucube::elem_type ucube_eT;
  
  const ProxyCube<T1> A(X.get_ref());
    
  ucube out(A.n_rows, A.n_cols, A.n_slices);
  
  ucube_eT* out_mem = out.memptr();
  
  for(u32 i=0; i<A.n_elem; ++i)
    {
    if(val <= A[i])
      {
      out_mem[i] = ucube_eT(1);
      }
    else
      {
      out_mem[i] = ucube_eT(0);
      }
    }
  
  return out;
  }

template<typename T1 >
ucube operator> ( const typename T1::elem_type  val,
const BaseCube< typename T1::elem_type, T1 > &  X 
) [inline]

Definition at line 528 of file operator_cube_relational.hpp.

References BaseCube< elem_type, derived >::get_ref().

  {
  arma_extra_debug_sigprint();
  
  typedef typename ucube::elem_type ucube_eT;
  
  const ProxyCube<T1> A(X.get_ref());
    
  ucube out(A.n_rows, A.n_cols, A.n_slices);
  
  ucube_eT* out_mem = out.memptr();
  
  for(u32 i=0; i<A.n_elem; ++i)
    {
    if(val > A[i])
      {
      out_mem[i] = ucube_eT(1);
      }
    else
      {
      out_mem[i] = ucube_eT(0);
      }
    }
  
  return out;
  }

template<typename T1 >
ucube operator< ( const typename T1::elem_type  val,
const BaseCube< typename T1::elem_type, T1 > &  X 
) [inline]

Definition at line 561 of file operator_cube_relational.hpp.

References BaseCube< elem_type, derived >::get_ref().

  {
  arma_extra_debug_sigprint();
  
  typedef typename ucube::elem_type ucube_eT;
  
  const ProxyCube<T1> A(X.get_ref());
  
  ucube out(A.n_rows, A.n_cols, A.n_slices);
  
  ucube_eT* out_mem = out.memptr();
  
  for(u32 i=0; i<A.n_elem; ++i)
    {
    if(val < A[i])
      {
      out_mem[i] = ucube_eT(1);
      }
    else
      {
      out_mem[i] = ucube_eT(0);
      }
    }
  
  return out;
  }