Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | Private Types
vnl_vector_fixed_ref< T, n > Class Template Reference

#include <vnl_vector_fixed_ref.h>

Inheritance diagram for vnl_vector_fixed_ref< T, n >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef unsigned int size_type
typedef T * iterator
 Type defs for iterators.
typedef T element_type
 Type defs for iterators.
typedef T const * const_iterator
 Const iterator type.
typedef vnl_c_vector< T >::abs_t abs_t

Public Member Functions

T * data_block () const
 vnl_vector_fixed_ref (vnl_vector_fixed< T, n > &rhs)
 vnl_vector_fixed_ref (T *dataptr)
vnl_vector_fixed_ref< T, n >
const & 
operator= (const vnl_vector_fixed< T, n > &rhs) const
 Copy operator.
vnl_vector_fixed_ref< T, n >
const & 
operator= (const vnl_vector_fixed_ref< T, n > &rhs) const
 Copy operator.
vnl_vector_fixed_ref< T, n >
const & 
operator= (const vnl_vector_fixed_ref_const< T, n > &rhs) const
 Copy operator.
void put (unsigned int i, T const &v) const
 Put value at given position in vector.
vnl_vector_fixed_reffill (T const &v)
 Set all values to v.
vnl_vector_fixed_ref const & copy_in (T const *ptr) const
 Sets elements to ptr[i].
vnl_vector_fixed_ref const & set (T const *ptr) const
 Sets elements to ptr[i].
T & operator() (unsigned int i) const
 Return reference to the element at specified index.
T & operator[] (unsigned int i) const
 Return the i-th element.
vnl_vector_ref< T > as_ref ()
iterator begin () const
 Iterator pointing to start of data.
iterator end () const
 Iterator pointing to element beyond end of data.
vnl_vector_fixed_ref const & update (vnl_vector< T > const &, unsigned int start=0) const
 Replaces elements with index beginning at start, by values of v. O(n).
bool read_ascii (vcl_istream &s) const
 Read from text stream.
vnl_vector_fixed_ref const & flip () const
vnl_vector_fixed_ref< T, n >
const & 
operator+= (T s) const
vnl_vector_fixed_ref< T, n >
const & 
operator-= (T s) const
vnl_vector_fixed_ref< T, n >
const & 
operator*= (T s) const
vnl_vector_fixed_ref< T, n >
const & 
operator/= (T s) const
vnl_vector_fixed_ref< T, n >
const & 
operator+= (const vnl_vector_fixed< T, n > &v) const
vnl_vector_fixed_ref< T, n >
const & 
operator-= (const vnl_vector_fixed< T, n > &v) const
vnl_vector_fixed_ref< T, n >
const & 
operator+= (const vnl_vector< T > &v) const
vnl_vector_fixed_ref< T, n >
const & 
operator-= (const vnl_vector< T > &v) const
unsigned size () const
 Length of the vector.
get (unsigned int i) const
 Get value at element i.
void copy_out (T *ptr) const
 Copy elements to ptr[i].
const vnl_vector_ref< T > as_ref () const
 Explicit conversion to a vnl_vector_ref.
 operator const vnl_vector_ref< T > () const
 Cheap conversion to vnl_vector_ref.
vnl_vector_fixed< T, n > apply (T(*f)(T)) const
 Apply f to each element.
vnl_vector_fixed< T, n > apply (T(*f)(const T &)) const
 Apply f to each element.
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.
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.
abs_t rms () const
 Root Mean Squares of values.
min_value () const
 Smallest value.
max_value () const
 Largest value.
unsigned arg_min () const
 Location of smallest value.
unsigned arg_max () const
 Location of largest value.
mean () const
 Mean of values in vector.
sum () const
 Sum of values in a vector.
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 it's 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_ref_const< T, n > const &v) const
 Return true if *this == v.
bool operator_eq (vnl_vector< T > const &v) const
 Return true if *this == v.
void print (vcl_ostream &s) const
 Display the vector.
bool operator== (vnl_vector_fixed_ref_const< T, n > const &that) const
 Equality operator.
bool operator!= (vnl_vector_fixed_ref_const< T, n > const &that) const
 Inequality operator.

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

const T * data_

Private Types

typedef
vnl_vector_fixed_ref_const< T,
n > 
base

Detailed Description

template<class T, unsigned n>
class vnl_vector_fixed_ref< T, n >

Definition at line 299 of file vnl_vector_fixed_ref.h.


Member Typedef Documentation

template<class T, unsigned int n>
typedef vnl_c_vector<T>::abs_t vnl_vector_fixed_ref_const< T, n >::abs_t [inherited]

Definition at line 139 of file vnl_vector_fixed_ref.h.

template<class T, unsigned n>
typedef vnl_vector_fixed_ref_const<T,n> vnl_vector_fixed_ref< T, n >::base [private]

Definition at line 301 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
typedef T const* vnl_vector_fixed_ref_const< T, n >::const_iterator [inherited]

Const iterator type.

Definition at line 109 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
typedef T vnl_vector_fixed_ref_const< T, n >::element_type [inherited]

Type defs for iterators.

Definition at line 104 of file vnl_vector_fixed_ref.h.

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

Type defs for iterators.

Reimplemented from vnl_vector_fixed_ref_const< T, n >.

Definition at line 371 of file vnl_vector_fixed_ref.h.

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

Reimplemented from vnl_vector_fixed_ref_const< T, n >.

Definition at line 304 of file vnl_vector_fixed_ref.h.


Constructor & Destructor Documentation

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

Definition at line 310 of file vnl_vector_fixed_ref.h.

template<class T, unsigned n>
vnl_vector_fixed_ref< T, n >::vnl_vector_fixed_ref ( T *  dataptr) [inline, explicit]

Definition at line 312 of file vnl_vector_fixed_ref.h.


Member Function Documentation

template<class T, unsigned int n>
static void vnl_vector_fixed_ref_const< T, n >::add ( const T *  a,
const T *  b,
T *  r 
) [inline, static, inherited]

Definition at line 229 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
static void vnl_vector_fixed_ref_const< T, n >::add ( const T *  a,
b,
T *  r 
) [inline, static, inherited]

Definition at line 234 of file vnl_vector_fixed_ref.h.

template<class T , unsigned int n>
vnl_vector_fixed< T, n > vnl_vector_fixed_ref_const< T, n >::apply ( T(*)(T)  f) const [inherited]

Apply f to each element.

Returns a new vector with the result.

Definition at line 19 of file vnl_vector_fixed_ref.txx.

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

Apply f to each element.

Returns a new vector with the result.

Definition at line 29 of file vnl_vector_fixed_ref.txx.

template<class T, unsigned int n>
unsigned vnl_vector_fixed_ref_const< T, n >::arg_max ( ) const [inline, inherited]

Location of largest value.

Definition at line 173 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
unsigned vnl_vector_fixed_ref_const< T, n >::arg_min ( ) const [inline, inherited]

Location of smallest value.

Definition at line 170 of file vnl_vector_fixed_ref.h.

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

Explicit conversion to a vnl_vector_ref.

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

See also:
vnl_vector_ref::non_const

Definition at line 93 of file vnl_vector_fixed_ref.h.

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

Definition at line 369 of file vnl_vector_fixed_ref.h.

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

Convert to a vnl_vector.

Definition at line 135 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
void vnl_vector_fixed_ref_const< T, n >::assert_finite ( ) const [inline, inherited]

Check that this is finite if not, abort();.

This function does or tests nothing if NDEBUG is defined

Definition at line 188 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
void vnl_vector_fixed_ref_const< T, n >::assert_size ( unsigned  sz) const [inline, inherited]

Check that size()==sz if not, abort();.

This function does or tests nothing if NDEBUG is defined

Definition at line 184 of file vnl_vector_fixed_ref.h.

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

Iterator pointing to start of data.

Reimplemented from vnl_vector_fixed_ref_const< T, n >.

Definition at line 373 of file vnl_vector_fixed_ref.h.

template<class T, unsigned n>
vnl_vector_fixed_ref const& vnl_vector_fixed_ref< T, n >::copy_in ( T const *  ptr) const [inline]

Sets elements to ptr[i].

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

Definition at line 345 of file vnl_vector_fixed_ref.h.

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

Copy elements to ptr[i].

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

Definition at line 59 of file vnl_vector_fixed_ref.h.

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

Reimplemented from vnl_vector_fixed_ref_const< T, n >.

Definition at line 308 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
static void vnl_vector_fixed_ref_const< T, n >::div ( const T *  a,
const T *  b,
T *  r 
) [inline, static, inherited]

Definition at line 264 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
static void vnl_vector_fixed_ref_const< T, n >::div ( const T *  a,
b,
T *  r 
) [inline, static, inherited]

Definition at line 269 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
bool vnl_vector_fixed_ref_const< T, n >::empty ( ) const [inline, inherited]

Return true iff the size is zero.

Definition at line 201 of file vnl_vector_fixed_ref.h.

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

Iterator pointing to element beyond end of data.

Reimplemented from vnl_vector_fixed_ref_const< T, n >.

Definition at line 376 of file vnl_vector_fixed_ref.h.

template<class T , unsigned int n>
vnl_vector< T > vnl_vector_fixed_ref_const< T, n >::extract ( unsigned int  len,
unsigned int  start = 0 
) const [inherited]

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

Definition at line 40 of file vnl_vector_fixed_ref.txx.

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

Set all values to v.

Definition at line 337 of file vnl_vector_fixed_ref.h.

template<class T , unsigned int n>
vnl_vector_fixed_ref< T, n > const & vnl_vector_fixed_ref< T, n >::flip ( ) const

Definition at line 59 of file vnl_vector_fixed_ref.txx.

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

Get value at element i.

Definition at line 55 of file vnl_vector_fixed_ref.h.

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

Return largest absolute element value.

Definition at line 154 of file vnl_vector_fixed_ref.h.

template<class T , unsigned int n>
bool vnl_vector_fixed_ref_const< T, n >::is_finite ( ) const [inherited]

Return true if it's finite.

Definition at line 68 of file vnl_vector_fixed_ref.txx.

template<class T , unsigned int n>
bool vnl_vector_fixed_ref_const< T, n >::is_zero ( ) const [inherited]

Return true iff all the entries are zero.

Definition at line 80 of file vnl_vector_fixed_ref.txx.

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

Return magnitude (length) of vector.

Definition at line 145 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
T vnl_vector_fixed_ref_const< T, n >::max_value ( ) const [inline, inherited]

Largest value.

Definition at line 167 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
T vnl_vector_fixed_ref_const< T, n >::mean ( ) const [inline, inherited]

Mean of values in vector.

Definition at line 176 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
T vnl_vector_fixed_ref_const< T, n >::min_value ( ) const [inline, inherited]

Smallest value.

Definition at line 164 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
static void vnl_vector_fixed_ref_const< T, n >::mul ( const T *  a,
const T *  b,
T *  r 
) [inline, static, inherited]

Definition at line 254 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
static void vnl_vector_fixed_ref_const< T, n >::mul ( const T *  a,
b,
T *  r 
) [inline, static, inherited]

Definition at line 259 of file vnl_vector_fixed_ref.h.

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

Return sum of absolute values of the elements.

Definition at line 148 of file vnl_vector_fixed_ref.h.

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

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 99 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
bool vnl_vector_fixed_ref_const< T, n >::operator!= ( vnl_vector_fixed_ref_const< T, n > const &  that) const [inline, inherited]

Inequality operator.

Definition at line 279 of file vnl_vector_fixed_ref.h.

template<class T, unsigned n>
T& vnl_vector_fixed_ref< 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.

Reimplemented from vnl_vector_fixed_ref_const< T, n >.

Definition at line 357 of file vnl_vector_fixed_ref.h.

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

Definition at line 397 of file vnl_vector_fixed_ref.h.

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

Definition at line 387 of file vnl_vector_fixed_ref.h.

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

Definition at line 407 of file vnl_vector_fixed_ref.h.

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

Definition at line 417 of file vnl_vector_fixed_ref.h.

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

Definition at line 125 of file vnl_vector_fixed_ref.h.

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

Definition at line 392 of file vnl_vector_fixed_ref.h.

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

Definition at line 412 of file vnl_vector_fixed_ref.h.

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

Definition at line 423 of file vnl_vector_fixed_ref.h.

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

Definition at line 402 of file vnl_vector_fixed_ref.h.

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

Copy operator.

Reimplemented from vnl_vector_fixed_ref_const< T, n >.

Definition at line 315 of file vnl_vector_fixed_ref.h.

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

Copy operator.

Definition at line 321 of file vnl_vector_fixed_ref.h.

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

Copy operator.

Reimplemented from vnl_vector_fixed_ref_const< T, n >.

Definition at line 327 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
bool vnl_vector_fixed_ref_const< T, n >::operator== ( vnl_vector_fixed_ref_const< T, n > const &  that) const [inline, inherited]

Equality operator.

Definition at line 276 of file vnl_vector_fixed_ref.h.

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

Return the i-th element.

Reimplemented from vnl_vector_fixed_ref_const< T, n >.

Definition at line 366 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
bool vnl_vector_fixed_ref_const< T, n >::operator_eq ( vnl_vector_fixed_ref_const< T, n > const &  v) const [inline, inherited]

Return true if *this == v.

Definition at line 204 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
bool vnl_vector_fixed_ref_const< T, n >::operator_eq ( vnl_vector< T > const &  v) const [inline, inherited]

Return true if *this == v.

Definition at line 212 of file vnl_vector_fixed_ref.h.

template<class T , unsigned int n>
void vnl_vector_fixed_ref_const< T, n >::print ( vcl_ostream &  s) const [inherited]

Display the vector.

Output each element separated by a single space.

Definition at line 114 of file vnl_vector_fixed_ref.txx.

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

Put value at given position in vector.

Definition at line 334 of file vnl_vector_fixed_ref.h.

template<class T , unsigned int n>
bool vnl_vector_fixed_ref< T, n >::read_ascii ( vcl_istream &  s) const

Read from text stream.

Definition at line 93 of file vnl_vector_fixed_ref.txx.

template<class T, unsigned int n>
abs_t vnl_vector_fixed_ref_const< T, n >::rms ( ) const [inline, inherited]

Root Mean Squares of values.

Definition at line 161 of file vnl_vector_fixed_ref.h.

template<class T, unsigned n>
vnl_vector_fixed_ref const& vnl_vector_fixed_ref< T, n >::set ( T const *  ptr) const [inline]

Sets elements to ptr[i].

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

Definition at line 353 of file vnl_vector_fixed_ref.h.

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

Length of the vector.

This is always n.

Definition at line 52 of file vnl_vector_fixed_ref.h.

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

Return sum of squares of elements.

Definition at line 142 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
static void vnl_vector_fixed_ref_const< T, n >::sub ( const T *  a,
const T *  b,
T *  r 
) [inline, static, inherited]

Definition at line 239 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
static void vnl_vector_fixed_ref_const< T, n >::sub ( const T *  a,
b,
T *  r 
) [inline, static, inherited]

Definition at line 244 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
static void vnl_vector_fixed_ref_const< T, n >::sub ( a,
const T *  b,
T *  r 
) [inline, static, inherited]

Definition at line 249 of file vnl_vector_fixed_ref.h.

template<class T, unsigned int n>
T vnl_vector_fixed_ref_const< T, n >::sum ( ) const [inline, inherited]

Sum of values in a vector.

Definition at line 179 of file vnl_vector_fixed_ref.h.

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

Return sqrt of sum of squares of values of elements.

Definition at line 151 of file vnl_vector_fixed_ref.h.

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

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

Definition at line 48 of file vnl_vector_fixed_ref.txx.


Member Data Documentation

template<class T, unsigned int n>
const T* vnl_vector_fixed_ref_const< T, n >::data_ [protected, inherited]

Definition at line 32 of file vnl_vector_fixed_ref.h.


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