vnl_vector_fixed< T, n > Class Template Reference

#include <vnl_vector_fixed.h>

List of all members.


Detailed Description

template<class T, unsigned int n>
class vnl_vector_fixed< T, n >

Fixed length stack-stored, space-efficient vector.

vnl_vector_fixed is a fixed-length, stack storage vector. It has the same storage size as a C-style array. It is not related via inheritance to vnl_vector. However, it can be converted cheaply to a vnl_vector_ref.

In most cases, a vnl_vector_fixed can be used where a vnl_vector is expected. There are some situations, however, when the automatic conversion cannot be applied. In those cases, you need to call the as_ref() method to perform an explicit conversion. This occurs most often when the called function is templated, since the user-defined conversion operators are then suppressed.

    template<class T>
    void do_something( const vnl_vector<T>& v );
    ...
    vnl_vector_fixed<double,4> my_vec;

    do_something( my_vec );
      // Error: no do_something( vnl_vector_fixed<double,4> ) found

    do_something( my_vec.as_ref() );  // works

Since the conversion operator creates a temporary vnl_vector_ref object, the conversion cannot be used directly to a function that expects a non-const vnl_vector reference. Use vnl_vector_ref::non_const method for this (and only this).

    void mutator( vnl_vector<double>& v );
    ...
    vnl_vector_fixed<double,4> my_vec;
    mutator( my_vec.as_ref().non_const() );
If the mutator only accesses the data, all should be fine. If the mutator attempts to resize the vector, you are doomed.

vnl_vector_fixed defines most of the operators defined by vnl_vector, and does so efficiently. If you try to mix vnl_vector_fixed and vnl_vector, however, you will probably get a vnl_vector result, with the corresponding malloc cost.

Definition at line 82 of file vnl_vector_fixed.h.


Public Types

enum  { SIZE = n }
typedef vnl_vector_fixed<
T, n > 
self
typedef unsigned int size_type
typedef T element_type
 Type defs for iterators.
typedef T * iterator
 Type defs for iterators.
typedef T const * const_iterator
 Const iterator type.
typedef vnl_c_vector< T
>::abs_t 
abs_t

Public Member Functions

 vnl_vector_fixed ()
 Construct an uninitialized n-vector.
 vnl_vector_fixed (const vnl_vector_fixed< T, n > &rhs)
 Copy constructor.
 vnl_vector_fixed (const vnl_vector< T > &rhs)
 Construct a fixed-n-vector copy of rhs.
 vnl_vector_fixed (const T &v)
 Constructs n-vector with all elements initialised to v.
 vnl_vector_fixed (const T *datablck)
 Construct an fixed-n-vector initialized from datablck.
 vnl_vector_fixed (const T &x0, const T &x1)
 Convenience constructor for 2-D vectors.
 vnl_vector_fixed (const T &x0, const T &x1, const T &x2)
 Convenience constructor for 3-D vectors.
 vnl_vector_fixed (const T &x0, const T &x1, const T &x2, const T &x3)
 Convenience constructor for 4-D vectors.
vnl_vector_fixed< T, n > & operator= (const vnl_vector_fixed< T, n > &rhs)
 Copy operator.
vnl_vector_fixed< T, n > & operator= (const vnl_vector< T > &rhs)
 Copy data from a dynamic vector.
unsigned size () const
 Length of the vector.
void put (unsigned int i, T const &v)
 Put value at given position in vector.
get (unsigned int i) const
 Get value at element i.
void fill (T const &v)
 Set all values to v.
void copy_in (T const *ptr)
 Sets elements to ptr[i].
void copy_out (T *ptr) const
 Copy elements to ptr[i].
void set (T const *ptr)
 Sets elements to ptr[i].
T & operator() (unsigned int i)
 Return reference to the element at specified index.
T const & operator() (unsigned int i) const
 Return reference to the element at specified index.
T & operator[] (unsigned int i)
 Return the i-th element.
const T & operator[] (unsigned int i) const
 Return the i-th element.
T const * data_block () const
 Access the contiguous block storing the elements in the vector.
T * data_block ()
 Access the contiguous block storing the elements in the vector.
vnl_vector_ref< T > as_ref ()
 Explicit conversion to a vnl_vector_ref.
const vnl_vector_ref< T > as_ref () const
 Explicit conversion to a vnl_vector_ref.
 operator const vnl_vector_ref () const
 Cheap conversion to vnl_vector_ref.
iterator begin ()
 Iterator pointing to start of data.
iterator end ()
 Iterator pointing to element beyond end of data.
const_iterator begin () const
 Iterator pointing to start of data.
const_iterator end () const
 Iterator pointing to element beyond end of data.
vnl_vector_fixed< T, n > apply (T(*f)(T))
 Apply f to each element.
vnl_vector_fixed< T, n > apply (T(*f)(const T &))
 Apply f to each element.
vnl_vector_fixed< T, n > & operator+= (T s)
vnl_vector_fixed< T, n > & operator-= (T s)
vnl_vector_fixed< T, n > & operator *= (T s)
vnl_vector_fixed< T, n > & operator/= (T s)
vnl_vector_fixed< T, n > & operator+= (const vnl_vector_fixed< T, n > &v)
vnl_vector_fixed< T, n > & operator-= (const vnl_vector_fixed< T, n > &v)
vnl_vector_fixed< T, n > & operator+= (const vnl_vector< T > &v)
vnl_vector_fixed< T, n > & operator-= (const vnl_vector< T > &v)
vnl_vector_fixed< T, n > operator- () const
vnl_vector< T > extract (unsigned int len, unsigned int start=0) const
 Returns a subvector specified by the start index and length. O(n).
vnl_vector< T > as_vector () const
 Convert to a vnl_vector.
vnl_vector_fixedupdate (vnl_vector< T > const &, unsigned int start=0)
 Replaces elements with index beginning at start, by values of v. O(n).
abs_t squared_magnitude () const
 Return sum of squares of elements.
abs_t magnitude () const
 Return magnitude (length) of vector.
abs_t one_norm () const
 Return sum of absolute values of the elements.
abs_t two_norm () const
 Return sqrt of sum of squares of values of elements.
abs_t inf_norm () const
 Return largest absolute element value.
vnl_vector_fixed< T, n > & normalize ()
 Normalise by dividing through by the magnitude.
abs_t rms () const
 Root Mean Squares of values.
min_value () const
 Smallest value.
max_value () const
 Largest value.
mean () const
 Mean of values in vector.
sum () const
 Sum of values in a vector.
void flip ()
 Reverse the order of the elements.
void assert_size (unsigned sz) const
 Check that size()==sz if not, abort();.
void assert_finite () const
 Check that this is finite if not, abort();.
bool is_finite () const
 Return true if its finite.
bool is_zero () const
 Return true iff all the entries are zero.
bool empty () const
 Return true iff the size is zero.
bool operator_eq (vnl_vector_fixed< T, n > const &v) const
 Return true if *this == v.
bool operator_eq (vnl_vector< T > const &v) const
 Return true if *this == v.
bool read_ascii (vcl_istream &s)
 Read from text stream.
void print (vcl_ostream &s) const
 Display the vector.

Static Public Member Functions

static void add (const T *a, const T *b, T *r)
static void add (const T *a, T b, T *r)
static void sub (const T *a, const T *b, T *r)
static void sub (const T *a, T b, T *r)
static void sub (T a, const T *b, T *r)
static void mul (const T *a, const T *b, T *r)
static void mul (const T *a, T b, T *r)
static void div (const T *a, const T *b, T *r)
static void div (const T *a, T b, T *r)

Protected Attributes

data_ [n]

Private Member Functions

void assert_finite_internal () const
 See assert_finite().

Related Functions

(Note that these are not member functions.)

vnl_cross_2d (const vnl_vector_fixed< T, 2 > &v1, const vnl_vector_fixed< T, 2 > &v2)
 Compute the 2-D cross product.
vnl_cross_2d (vnl_vector_fixed< T, 2 > const &v1, vnl_vector< T > const &v2)
 Compute the 2-D cross product.
vnl_cross_2d (vnl_vector< T > const &v1, vnl_vector_fixed< T, 2 > const &v2)
 Compute the 2-D cross product.
vnl_vector_fixed< T, 3 > vnl_cross_3d (const vnl_vector_fixed< T, 3 > &v1, const vnl_vector_fixed< T, 3 > &v2)
 Compute the 3-D cross product.
vnl_vector_fixed< T, n > vnl_cross_3d (const vnl_vector_fixed< T, n > &a, const vnl_vector< T > &b)
 Compute the 3-D cross product.
vnl_vector_fixed< T, n > vnl_cross_3d (const vnl_vector< T > &a, const vnl_vector_fixed< T, n > &b)
 Compute the 3-D cross product.
vnl_double_3 operator+ (const vnl_double_3 &a, const vnl_double_3 &b)
 The binary addition operator.
vnl_matrix_fixed< T, m, n > outer_product (vnl_vector_fixed< T, m > const &a, vnl_vector_fixed< T, n > const &b)
bool operator< (vnl_vector_fixed< T, n > const &lhs, vnl_vector_fixed< T, n > const &rhs)
 Define a complete ordering on vnl_vector_fixed.
vnl_vector_fixed< T, n > operator+ (const vnl_vector_fixed< T, n > &v, T s)
vnl_vector_fixed< T, n > operator+ (const T &s, const vnl_vector_fixed< T, n > &v)
vnl_vector_fixed< T, n > operator- (const vnl_vector_fixed< T, n > &v, T s)
vnl_vector_fixed< T, n > operator- (const T &s, const vnl_vector_fixed< T, n > &v)
vnl_vector_fixed< T, n > operator * (const vnl_vector_fixed< T, n > &v, T s)
vnl_vector_fixed< T, n > operator * (const T &s, const vnl_vector_fixed< T, n > &v)
vnl_vector_fixed< T, n > operator/ (const vnl_vector_fixed< T, n > &v, T s)
vnl_vector_fixed< T, n > operator+ (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
vnl_vector< T > operator+ (const vnl_vector_fixed< T, n > &a, const vnl_vector< T > &b)
vnl_vector< T > operator+ (const vnl_vector< T > &a, const vnl_vector_fixed< T, n > &b)
vnl_vector_fixed< T, n > operator- (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
vnl_vector< T > operator- (const vnl_vector_fixed< T, n > &a, const vnl_vector< T > &b)
vnl_vector< T > operator- (const vnl_vector< T > &a, const vnl_vector_fixed< T, n > &b)
vnl_vector_fixed< T, n > element_product (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
vnl_vector< T > element_product (const vnl_vector_fixed< T, n > &a, const vnl_vector< T > &b)
vnl_vector< T > element_product (const vnl_vector< T > &a, const vnl_vector_fixed< T, n > &b)
vnl_vector_fixed< T, n > element_quotient (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
vnl_vector< T > element_quotient (const vnl_vector_fixed< T, n > &a, const vnl_vector< T > &b)
vnl_vector< T > element_quotient (const vnl_vector< T > &a, const vnl_vector_fixed< T, n > &b)
dot_product (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
dot_product (const vnl_vector_fixed< T, n > &a, const vnl_vector< T > &b)
dot_product (const vnl_vector< T > &a, const vnl_vector_fixed< T, n > &b)
vnl_matrix< T > outer_product (const vnl_vector< T > &a, const vnl_vector_fixed< T, n > &b)
vnl_matrix< T > outer_product (const vnl_vector_fixed< T, n > &a, const vnl_vector< T > &b)
angle (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
angle (const vnl_vector_fixed< T, n > &a, const vnl_vector< T > &b)
angle (const vnl_vector< T > &a, const vnl_vector_fixed< T, n > &b)
vnl_vector_ssd (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
vnl_vector_ssd (const vnl_vector_fixed< T, n > &a, const vnl_vector< T > &b)
vnl_vector_ssd (const vnl_vector< T > &a, const vnl_vector_fixed< T, n > &b)
bool operator== (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
bool operator== (vnl_vector_fixed< T, n > const &a, vnl_vector< T > const &b)
bool operator== (vnl_vector< T > const &a, vnl_vector_fixed< T, n > const &b)
bool operator!= (const vnl_vector_fixed< T, n > &a, const vnl_vector_fixed< T, n > &b)
bool operator!= (vnl_vector_fixed< T, n > const &a, vnl_vector< T > const &b)
bool operator!= (vnl_vector< T > const &a, vnl_vector_fixed< T, n > const &b)
vcl_ostream & operator<< (vcl_ostream &ostr, const vnl_vector_fixed< T, n > &v)
vcl_istream & operator>> (vcl_istream &ostr, vnl_vector_fixed< T, n > &v)
vnl_vector_fixed< T, n > operator+ (const vnl_vector_fixed_ref_const< T, n > &v, T s)
 
vnl_vector_fixed< T, n > operator+ (T s, const vnl_vector_fixed_ref_const< T, n > &v)
 
vnl_vector_fixed< T, n > operator- (const vnl_vector_fixed_ref_const< T, n > &v, T s)
 
vnl_vector_fixed< T, n > operator- (T s, const vnl_vector_fixed_ref_const< T, n > &v)
 
vnl_vector_fixed< T, n > operator * (const vnl_vector_fixed_ref_const< T, n > &v, T s)
 
vnl_vector_fixed< T, n > operator * (T s, const vnl_vector_fixed_ref_const< T, n > &v)
 
vnl_vector_fixed< T, n > operator/ (const vnl_vector_fixed_ref_const< T, n > &v, T s)
 
vnl_vector_fixed< T, n > operator+ (const vnl_vector_fixed_ref_const< T, n > &a, const vnl_vector_fixed_ref_const< T, n > &b)
 
vnl_vector_fixed< T, n > operator- (const vnl_vector_fixed_ref_const< T, n > &a, const vnl_vector_fixed_ref_const< T, n > &b)
 
vcl_ostream & operator<< (vcl_ostream &o, const vnl_vector_fixed_ref_const< T, n > &v)
 
vcl_istream & operator>> (vcl_istream &i, const vnl_vector_fixed_ref< T, n > &v)
 

Member Typedef Documentation

template<class T, unsigned int n>
typedef vnl_vector_fixed<T,n> vnl_vector_fixed< T, n >::self

Definition at line 85 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
typedef unsigned int vnl_vector_fixed< T, n >::size_type

Definition at line 86 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
typedef T vnl_vector_fixed< T, n >::element_type

Type defs for iterators.

Definition at line 270 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
typedef T* vnl_vector_fixed< T, n >::iterator

Type defs for iterators.

Definition at line 272 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
typedef T const* vnl_vector_fixed< T, n >::const_iterator

Const iterator type.

Definition at line 280 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
typedef vnl_c_vector<T>::abs_t vnl_vector_fixed< T, n >::abs_t

Definition at line 345 of file vnl_vector_fixed.h.


Member Enumeration Documentation

template<class T, unsigned int n>
anonymous enum

Enumerator:
SIZE 

Definition at line 88 of file vnl_vector_fixed.h.


Constructor & Destructor Documentation

template<class T, unsigned int n>
vnl_vector_fixed< T, n >::vnl_vector_fixed (  )  [inline]

Construct an uninitialized n-vector.

Definition at line 99 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed< T, n >::vnl_vector_fixed ( const vnl_vector_fixed< T, n > &  rhs  )  [inline]

Copy constructor.

The dimensions must match.

Definition at line 103 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed< T, n >::vnl_vector_fixed ( const vnl_vector< T > &  rhs  )  [inline]

Construct a fixed-n-vector copy of rhs.

The dimensions must match.

Definition at line 110 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed< T, n >::vnl_vector_fixed ( const T &  v  )  [inline, explicit]

Constructs n-vector with all elements initialised to v.

Definition at line 117 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed< T, n >::vnl_vector_fixed ( const T *  datablck  )  [inline, explicit]

Construct an fixed-n-vector initialized from datablck.

The data *must* have enough data. No checks performed.

Definition at line 121 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed< T, n >::vnl_vector_fixed ( const T &  x0,
const T &  x1 
) [inline]

Convenience constructor for 2-D vectors.

While this constructor is sometimes useful, consider using vnl_double_2 or vnl_float_2 instead.

Definition at line 129 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed< T, n >::vnl_vector_fixed ( const T &  x0,
const T &  x1,
const T &  x2 
) [inline]

Convenience constructor for 3-D vectors.

While this constructor is sometimes useful, consider using vnl_double_3 or vnl_float_3 instead.

Definition at line 138 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed< T, n >::vnl_vector_fixed ( const T &  x0,
const T &  x1,
const T &  x2,
const T &  x3 
) [inline]

Convenience constructor for 4-D vectors.

Definition at line 145 of file vnl_vector_fixed.h.


Member Function Documentation

template<class T, unsigned int n>
vnl_vector_fixed<T,n>& vnl_vector_fixed< T, n >::operator= ( const vnl_vector_fixed< T, n > &  rhs  )  [inline]

Copy operator.

Definition at line 152 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed<T,n>& vnl_vector_fixed< T, n >::operator= ( const vnl_vector< T > &  rhs  )  [inline]

Copy data from a dynamic vector.

The dimensions must match.

Definition at line 159 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
unsigned vnl_vector_fixed< T, n >::size (  )  const [inline]

Length of the vector.

This is always n.

Definition at line 167 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
void vnl_vector_fixed< T, n >::put ( unsigned int  i,
T const &  v 
) [inline]

Put value at given position in vector.

Definition at line 170 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
T vnl_vector_fixed< T, n >::get ( unsigned int  i  )  const [inline]

Get value at element i.

Definition at line 173 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
void vnl_vector_fixed< T, n >::fill ( T const &  v  )  [inline]

Set all values to v.

Definition at line 176 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
void vnl_vector_fixed< T, n >::copy_in ( T const *  ptr  )  [inline]

Sets elements to ptr[i].

Note: ptr[i] must be valid for i=0..size()-1

Definition at line 184 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
void vnl_vector_fixed< T, n >::copy_out ( T *  ptr  )  const [inline]

Copy elements to ptr[i].

Note: ptr[i] must be valid for i=0..size()-1

Definition at line 192 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
void vnl_vector_fixed< T, n >::set ( T const *  ptr  )  [inline]

Sets elements to ptr[i].

Note: ptr[i] must be valid for i=0..size()-1

Definition at line 200 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
T& vnl_vector_fixed< T, n >::operator() ( unsigned int  i  )  [inline]

Return reference to the element at specified index.

There are assert style boundary checks - define NDEBUG to turn them off.

Definition at line 205 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
T const& vnl_vector_fixed< T, n >::operator() ( unsigned int  i  )  const [inline]

Return reference to the element at specified index.

There are assert style boundary checks - define NDEBUG to turn them off.

Definition at line 215 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
T& vnl_vector_fixed< T, n >::operator[] ( unsigned int  i  )  [inline]

Return the i-th element.

Definition at line 224 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
const T& vnl_vector_fixed< T, n >::operator[] ( unsigned int  i  )  const [inline]

Return the i-th element.

Definition at line 227 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
T const* vnl_vector_fixed< T, n >::data_block (  )  const [inline]

Access the contiguous block storing the elements in the vector.

O(1). data_block()[0] is the first element of the vector

Definition at line 232 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
T* vnl_vector_fixed< T, n >::data_block (  )  [inline]

Access the contiguous block storing the elements in the vector.

O(1). data_block()[0] is the first element of the vector

Definition at line 237 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_ref<T> vnl_vector_fixed< T, n >::as_ref (  )  [inline]

Explicit conversion to a vnl_vector_ref.

This is a cheap conversion for those functions that have an interface for vnl_vector but not for vnl_vector_fixed. There is also a conversion operator that should work most of the time.

See also:
vnl_vector_ref::non_const

Definition at line 252 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
const vnl_vector_ref<T> vnl_vector_fixed< T, n >::as_ref (  )  const [inline]

Explicit conversion to a vnl_vector_ref.

This is a cheap conversion for those functions that have an interface for vnl_vector but not for vnl_vector_fixed. There is also a conversion operator that should work most of the time.

See also:
vnl_vector_ref::non_const

Definition at line 259 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed< T, n >::operator const vnl_vector_ref (  )  const [inline]

Cheap conversion to vnl_vector_ref.

Sometimes, such as with templated functions, the compiler cannot use this user-defined conversion. For those cases, use the explicit as_ref() method instead.

Definition at line 265 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
iterator vnl_vector_fixed< T, n >::begin (  )  [inline]

Iterator pointing to start of data.

Definition at line 274 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
iterator vnl_vector_fixed< T, n >::end (  )  [inline]

Iterator pointing to element beyond end of data.

Definition at line 277 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
const_iterator vnl_vector_fixed< T, n >::begin (  )  const [inline]

Iterator pointing to start of data.

Definition at line 282 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
const_iterator vnl_vector_fixed< T, n >::end (  )  const [inline]

Iterator pointing to element beyond end of data.

Definition at line 284 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed< T, n > vnl_vector_fixed< T, n >::apply ( T(*)(T)  f  ) 

Apply f to each element.

Returns a new vector with the result.

Definition at line 17 of file vnl_vector_fixed.txx.

template<class T, unsigned int n>
vnl_vector_fixed< T, n > vnl_vector_fixed< T, n >::apply ( T(*)(const T &)  f  ) 

Apply f to each element.

Returns a new vector with the result.

Definition at line 27 of file vnl_vector_fixed.txx.

template<class T, unsigned int n>
vnl_vector_fixed<T,n>& vnl_vector_fixed< T, n >::operator+= ( s  )  [inline]

Definition at line 296 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed<T,n>& vnl_vector_fixed< T, n >::operator-= ( s  )  [inline]

Definition at line 299 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed<T,n>& vnl_vector_fixed< T, n >::operator *= ( s  )  [inline]

Definition at line 302 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed<T,n>& vnl_vector_fixed< T, n >::operator/= ( s  )  [inline]

Definition at line 305 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed<T,n>& vnl_vector_fixed< T, n >::operator+= ( const vnl_vector_fixed< T, n > &  v  )  [inline]

Definition at line 308 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed<T,n>& vnl_vector_fixed< T, n >::operator-= ( const vnl_vector_fixed< T, n > &  v  )  [inline]

Definition at line 311 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed<T,n>& vnl_vector_fixed< T, n >::operator+= ( const vnl_vector< T > &  v  )  [inline]

Definition at line 314 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed<T,n>& vnl_vector_fixed< T, n >::operator-= ( const vnl_vector< T > &  v  )  [inline]

Definition at line 321 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed<T,n> vnl_vector_fixed< T, n >::operator- (  )  const [inline]

Definition at line 328 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector< T > vnl_vector_fixed< T, n >::extract ( unsigned int  len,
unsigned int  start = 0 
) const

Returns a subvector specified by the start index and length. O(n).

Definition at line 38 of file vnl_vector_fixed.txx.

template<class T, unsigned int n>
vnl_vector<T> vnl_vector_fixed< T, n >::as_vector (  )  const [inline]

Convert to a vnl_vector.

Definition at line 339 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed< T, n > & vnl_vector_fixed< T, n >::update ( vnl_vector< T > const &  ,
unsigned int  start = 0 
)

Replaces elements with index beginning at start, by values of v. O(n).

Definition at line 46 of file vnl_vector_fixed.txx.

template<class T, unsigned int n>
abs_t vnl_vector_fixed< T, n >::squared_magnitude (  )  const [inline]

Return sum of squares of elements.

Definition at line 348 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
abs_t vnl_vector_fixed< T, n >::magnitude (  )  const [inline]

Return magnitude (length) of vector.

Definition at line 351 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
abs_t vnl_vector_fixed< T, n >::one_norm (  )  const [inline]

Return sum of absolute values of the elements.

Definition at line 354 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
abs_t vnl_vector_fixed< T, n >::two_norm (  )  const [inline]

Return sqrt of sum of squares of values of elements.

Definition at line 357 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
abs_t vnl_vector_fixed< T, n >::inf_norm (  )  const [inline]

Return largest absolute element value.

Definition at line 360 of file vnl_vector_fixed.h.

template<class T, unsigned int n>
vnl_vector_fixed<T,n>&