Classes | Functions
vnl_vector_fixed.h File Reference

Fixed length stack-stored vector. More...

#include <cstring>
#include <iosfwd>
#include <cassert>
#include "vnl_vector.h"
#include "vnl_vector_ref.h"
#include <vnl/vnl_c_vector.h>
#include <vnl/vnl_matrix.h>
#include <vnl/vnl_config.h>
#include <vnl/vnl_error.h>
#include "vnl/vnl_export.h"

Go to the source code of this file.

Classes

class  vnl_vector_fixed< T, n >
 Fixed length stack-stored, space-efficient vector. More...
 
class  vnl_matrix_fixed< T, num_rows, num_cols >
 Fixed size, stack-stored, space-efficient matrix. More...
 
class  vnl_vector_fixed< T, n >
 Fixed length stack-stored, space-efficient vector. More...
 

Functions

template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator+ (const vnl_vector_fixed< T, n > &v, T s)
 
template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator+ (const T &s, const vnl_vector_fixed< T, n > &v)
 
template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator- (const vnl_vector_fixed< T, n > &v, T s)
 
template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator- (const T &s, const vnl_vector_fixed< T, n > &v)
 
template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator * (const vnl_vector_fixed< T, n > &v, T s)
 
template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator * (const T &s, const vnl_vector_fixed< T, n > &v)
 
template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator/ (const vnl_vector_fixed< T, n > &v, T s)
 
template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator+ (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
 
template<class T , unsigned int n>
vnl_vector< T > operator+ (const vnl_vector_fixed< T, n > &a, const vnl_vector< T > &b)
 
template<class T , unsigned int n>
vnl_vector< T > operator+ (const vnl_vector< T > &a, const vnl_vector_fixed< T, n > &b)
 
template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator- (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
 
template<class T , unsigned int n>
vnl_vector< T > operator- (const vnl_vector_fixed< T, n > &a, const vnl_vector< T > &b)
 
template<class T , unsigned int n>
vnl_vector< T > operator- (const vnl_vector< T > &a, const vnl_vector_fixed< T, n > &b)
 
template<class T , unsigned int n>
vnl_vector_fixed< T, n > element_product (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
 
template<class T , unsigned int n>
vnl_vector< T > element_product (const vnl_vector_fixed< T, n > &a, const vnl_vector< T > &b)
 
template<class T , unsigned int n>
vnl_vector< T > element_product (const vnl_vector< T > &a, const vnl_vector_fixed< T, n > &b)
 
template<class T , unsigned int n>
vnl_vector_fixed< T, n > element_quotient (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
 
template<class T , unsigned int n>
vnl_vector< T > element_quotient (const vnl_vector_fixed< T, n > &a, const vnl_vector< T > &b)
 
template<class T , unsigned int n>
vnl_vector< T > element_quotient (const vnl_vector< T > &a, const vnl_vector_fixed< T, n > &b)
 
template<class T , unsigned n>
dot_product (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
 
template<class T , unsigned n>
dot_product (const vnl_vector_fixed< T, n > &a, const vnl_vector< T > &b)
 
template<class T , unsigned n>
dot_product (const vnl_vector< T > &a, const vnl_vector_fixed< T, n > &b)
 
template<class T , unsigned int n>
vnl_matrix< T > outer_product (const vnl_vector< T > &a, const vnl_vector_fixed< T, n > &b)
 
template<class T , unsigned int n>
vnl_matrix< T > outer_product (const vnl_vector_fixed< T, n > &a, const vnl_vector< T > &b)
 
template<class T , unsigned n>
angle (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
 
template<class T , unsigned n>
angle (const vnl_vector_fixed< T, n > &a, const vnl_vector< T > &b)
 
template<class T , unsigned n>
angle (const vnl_vector< T > &a, const vnl_vector_fixed< T, n > &b)
 
template<class T , unsigned n>
vnl_vector_ssd (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
 
template<class T , unsigned n>
vnl_vector_ssd (const vnl_vector_fixed< T, n > &a, const vnl_vector< T > &b)
 
template<class T , unsigned n>
vnl_vector_ssd (const vnl_vector< T > &a, const vnl_vector_fixed< T, n > &b)
 
template<class T , unsigned int n>
bool operator== (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
 
template<class T , unsigned int n>
bool operator== (vnl_vector_fixed< T, n > const &a, vnl_vector< T > const &b)
 
template<class T , unsigned int n>
bool operator== (vnl_vector< T > const &a, vnl_vector_fixed< T, n > const &b)
 
template<class T , unsigned int n>
bool operator!= (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
 
template<class T , unsigned int n>
bool operator!= (vnl_vector_fixed< T, n > const &a, vnl_vector< T > const &b)
 
template<class T , unsigned int n>
bool operator!= (vnl_vector< T > const &a, vnl_vector_fixed< T, n > const &b)
 
template<class T , unsigned int n>
std::ostream & operator<< (std::ostream &ostr, const vnl_vector_fixed< T, n > &v)
 
template<class T , unsigned int n>
std::istream & operator>> (std::istream &ostr, vnl_vector_fixed< T, n > &v)
 

Detailed Description

Fixed length stack-stored vector.

The operators are inlined because (1) they are small and (2) we then have less explicit instantiation trouble.

Author
Andrew W. Fitzgibbon, Oxford RRG
Date
04 Aug 96
  Modifications
   LSB Manchester 16/3/01 Binary I/O added
   Feb.2002 - Peter Vanroose - brief doxygen comment placed on single line
   Oct.2002 - Amitha Perera - decoupled vnl_vector and vnl_vector_fixed for
              space efficiency, removed necessity for vnl_vector_fixed_ref
   Jun.2003 - Paul Smyth - added as_fixed_ref() to convert to fixed-size ref
              removed duplicate cross_3d
   Jun.2003 - Peter Vanroose - added cross_2d
   Oct.2003 - Peter Vanroose - removed deprecated x(), y(), z(), t()
   Mar.2009 - Peter Vanroose - added arg_min() and arg_max()
   Oct.2010 - Peter Vanroose - mutators and setters now return *this

Definition in file vnl_vector_fixed.h.

Function Documentation

◆ angle() [1/3]

template<class T , unsigned n>
T angle ( const vnl_vector_fixed< T, n > &  a,
const vnl_vector_fixed< T, n > &  b 
)
inline

Definition at line 779 of file vnl_vector_fixed.h.

◆ angle() [2/3]

template<class T , unsigned n>
T angle ( const vnl_vector_fixed< T, n > &  a,
const vnl_vector< T > &  b 
)
inline

Definition at line 788 of file vnl_vector_fixed.h.

◆ angle() [3/3]

template<class T , unsigned n>
T angle ( const vnl_vector< T > &  a,
const vnl_vector_fixed< T, n > &  b 
)
inline

Definition at line 797 of file vnl_vector_fixed.h.

◆ dot_product() [1/3]

template<class T , unsigned n>
T dot_product ( const vnl_vector_fixed< T, n > &  a,
const vnl_vector_fixed< T, n > &  b 
)
inline

Definition at line 735 of file vnl_vector_fixed.h.

◆ dot_product() [2/3]

template<class T , unsigned n>
T dot_product ( const vnl_vector_fixed< T, n > &  a,
const vnl_vector< T > &  b 
)
inline

Definition at line 744 of file vnl_vector_fixed.h.

◆ dot_product() [3/3]

template<class T , unsigned n>
T dot_product ( const vnl_vector< T > &  a,
const vnl_vector_fixed< T, n > &  b 
)
inline

Definition at line 753 of file vnl_vector_fixed.h.

◆ element_product() [1/3]

template<class T , unsigned int n>
vnl_vector_fixed< T, n > element_product ( const vnl_vector_fixed< T, n > &  a,
const vnl_vector_fixed< T, n > &  b 
)
inline

Definition at line 667 of file vnl_vector_fixed.h.

◆ element_product() [2/3]

template<class T , unsigned int n>
vnl_vector< T > element_product ( const vnl_vector_fixed< T, n > &  a,
const vnl_vector< T > &  b 
)
inline

Definition at line 678 of file vnl_vector_fixed.h.

◆ element_product() [3/3]

template<class T , unsigned int n>
vnl_vector< T > element_product ( const vnl_vector< T > &  a,
const vnl_vector_fixed< T, n > &  b 
)
inline

Definition at line 690 of file vnl_vector_fixed.h.

◆ element_quotient() [1/3]

template<class T , unsigned int n>
vnl_vector_fixed< T, n > element_quotient ( const vnl_vector_fixed< T, n > &  a,
const vnl_vector_fixed< T, n > &  b 
)
inline

Definition at line 701 of file vnl_vector_fixed.h.

◆ element_quotient() [2/3]

template<class T , unsigned int n>
vnl_vector< T > element_quotient ( const vnl_vector_fixed< T, n > &  a,
const vnl_vector< T > &  b 
)
inline

Definition at line 712 of file vnl_vector_fixed.h.

◆ element_quotient() [3/3]

template<class T , unsigned int n>
vnl_vector< T > element_quotient ( const vnl_vector< T > &  a,
const vnl_vector_fixed< T, n > &  b 
)
inline

Definition at line 724 of file vnl_vector_fixed.h.

◆ operator *() [1/2]

template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator * ( const vnl_vector_fixed< T, n > &  v,
s 
)
inline

Definition at line 573 of file vnl_vector_fixed.h.

◆ operator *() [2/2]

template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator * ( const T &  s,
const vnl_vector_fixed< T, n > &  v 
)
inline

Definition at line 583 of file vnl_vector_fixed.h.

◆ operator!=() [1/3]

template<class T , unsigned int n>
bool operator!= ( const vnl_vector_fixed< T, n > &  a,
const vnl_vector_fixed< T, n > &  b 
)
inline

Definition at line 859 of file vnl_vector_fixed.h.

◆ operator!=() [2/3]

template<class T , unsigned int n>
bool operator!= ( vnl_vector_fixed< T, n > const &  a,
vnl_vector< T > const &  b 
)
inline

Definition at line 868 of file vnl_vector_fixed.h.

◆ operator!=() [3/3]

template<class T , unsigned int n>
bool operator!= ( vnl_vector< T > const &  a,
vnl_vector_fixed< T, n > const &  b 
)
inline

Definition at line 877 of file vnl_vector_fixed.h.

◆ operator+() [1/5]

template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator+ ( const vnl_vector_fixed< T, n > &  v,
s 
)
inline

Definition at line 531 of file vnl_vector_fixed.h.

◆ operator+() [2/5]

template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator+ ( const T &  s,
const vnl_vector_fixed< T, n > &  v 
)
inline

Definition at line 541 of file vnl_vector_fixed.h.

◆ operator+() [3/5]

template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator+ ( const vnl_vector_fixed< T, n > &  a,
const vnl_vector_fixed< T, n > &  b 
)
inline

Definition at line 611 of file vnl_vector_fixed.h.

◆ operator+() [4/5]

template<class T , unsigned int n>
vnl_vector< T > operator+ ( const vnl_vector_fixed< T, n > &  a,
const vnl_vector< T > &  b 
)
inline

Definition at line 622 of file vnl_vector_fixed.h.

◆ operator+() [5/5]

template<class T , unsigned int n>
vnl_vector< T > operator+ ( const vnl_vector< T > &  a,
const vnl_vector_fixed< T, n > &  b 
)
inline

Definition at line 631 of file vnl_vector_fixed.h.

◆ operator-() [1/5]

template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator- ( const vnl_vector_fixed< T, n > &  v,
s 
)
inline

Definition at line 552 of file vnl_vector_fixed.h.

◆ operator-() [2/5]

template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator- ( const T &  s,
const vnl_vector_fixed< T, n > &  v 
)
inline

Definition at line 562 of file vnl_vector_fixed.h.

◆ operator-() [3/5]

template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator- ( const vnl_vector_fixed< T, n > &  a,
const vnl_vector_fixed< T, n > &  b 
)
inline

Definition at line 639 of file vnl_vector_fixed.h.

◆ operator-() [4/5]

template<class T , unsigned int n>
vnl_vector< T > operator- ( const vnl_vector_fixed< T, n > &  a,
const vnl_vector< T > &  b 
)
inline

Definition at line 650 of file vnl_vector_fixed.h.

◆ operator-() [5/5]

template<class T , unsigned int n>
vnl_vector< T > operator- ( const vnl_vector< T > &  a,
const vnl_vector_fixed< T, n > &  b 
)
inline

Definition at line 659 of file vnl_vector_fixed.h.

◆ operator/()

template<class T , unsigned int n>
vnl_vector_fixed< T, n > operator/ ( const vnl_vector_fixed< T, n > &  v,
s 
)
inline

Definition at line 594 of file vnl_vector_fixed.h.

◆ operator<<()

template<class T , unsigned int n>
std::ostream & operator<< ( std::ostream &  ostr,
const vnl_vector_fixed< T, n > &  v 
)
inline

Definition at line 890 of file vnl_vector_fixed.h.

◆ operator==() [1/3]

template<class T , unsigned int n>
bool operator== ( const vnl_vector_fixed< T, n > &  a,
const vnl_vector_fixed< T, n > &  b 
)
inline

Definition at line 833 of file vnl_vector_fixed.h.

◆ operator==() [2/3]

template<class T , unsigned int n>
bool operator== ( vnl_vector_fixed< T, n > const &  a,
vnl_vector< T > const &  b 
)
inline

Definition at line 842 of file vnl_vector_fixed.h.

◆ operator==() [3/3]

template<class T , unsigned int n>
bool operator== ( vnl_vector< T > const &  a,
vnl_vector_fixed< T, n > const &  b 
)
inline

Definition at line 851 of file vnl_vector_fixed.h.

◆ operator>>()

template<class T , unsigned int n>
std::istream & operator>> ( std::istream &  ostr,
vnl_vector_fixed< T, n > &  v 
)
inline

Definition at line 900 of file vnl_vector_fixed.h.

◆ outer_product() [1/2]

template<class T , unsigned int n>
vnl_matrix< T > outer_product ( const vnl_vector< T > &  a,
const vnl_vector_fixed< T, n > &  b 
)
inline

Definition at line 762 of file vnl_vector_fixed.h.

◆ outer_product() [2/2]

template<class T , unsigned int n>
vnl_matrix< T > outer_product ( const vnl_vector_fixed< T, n > &  a,
const vnl_vector< T > &  b 
)
inline

Definition at line 771 of file vnl_vector_fixed.h.

◆ vnl_vector_ssd() [1/3]

template<class T , unsigned n>
T vnl_vector_ssd ( const vnl_vector_fixed< T, n > &  a,
const vnl_vector_fixed< T, n > &  b 
)
inline

Definition at line 806 of file vnl_vector_fixed.h.

◆ vnl_vector_ssd() [2/3]

template<class T , unsigned n>
T vnl_vector_ssd ( const vnl_vector_fixed< T, n > &  a,
const vnl_vector< T > &  b 
)
inline

Definition at line 815 of file vnl_vector_fixed.h.

◆ vnl_vector_ssd() [3/3]

template<class T , unsigned n>
T vnl_vector_ssd ( const vnl_vector< T > &  a,
const vnl_vector_fixed< T, n > &  b 
)
inline

Definition at line 824 of file vnl_vector_fixed.h.