Fast Research Interface Library  Manual and Documentation
Public Member Functions | Public Attributes
TypeIRMLVector< T > Class Template Reference

This is a minimalistic dynamic vector class implementation used for the Reflexxes Motion Libraries. More...

#include <TypeIRMLVector.h>

List of all members.

Public Member Functions

 TypeIRMLVector (const TypeIRMLVector< T > &Vector)
 Copy constructor of class TypeIRMLVector.
 TypeIRMLVector (const unsigned int Size)
 Constructor of class TypeIRMLVector, allocates memory for a given number of double elements.
 TypeIRMLVector (const T &Component0, const T &Component1)
 Special 2D constructor.
 TypeIRMLVector (const T &Component0, const T &Component1, const T &Component2)
 Special 3D constructor.
 TypeIRMLVector (const T &Component0, const T &Component1, const T &Component2, const T &Component3)
 Special 4D constructor.
 TypeIRMLVector (const T &Component0, const T &Component1, const T &Component2, const T &Component3, const T &Component4)
 Special 5D constructor.
 TypeIRMLVector (const T &Component0, const T &Component1, const T &Component2, const T &Component3, const T &Component4, const T &Component5)
 Special 6D constructor.
 TypeIRMLVector (const T &Component0, const T &Component1, const T &Component2, const T &Component3, const T &Component4, const T &Component5, const T &Component6)
 Special 7D constructor.
 ~TypeIRMLVector (void)
 Destructor of class TypeIRMLVector.
void Set (const T Value)
 Sets all elements of a vector of double elements to one specific value.
TypeIRMLVectoroperator= (const TypeIRMLVector< T > &Vector)
 Copy operator.
T & operator[] (const int Index)
 Bracket operator, gives access to a single vector element.
const T & operator[] (const int Index) const
 Bracket operator, gives access to a single vector element.
bool operator== (const TypeIRMLVector< T > &Vector) const
 Equal operator.
bool operator!= (const TypeIRMLVector< T > &Vector) const
 Unequal operator.
unsigned int GetVecDim (void) const
 Returns the dimension of the vector.
T * GetReference (void) const
 Returns the data pointer of the vector object (not the pointer to the object)

Public Attributes

T * VecData
 Pointer to the actual vector data, that is, an array of type T objects.
unsigned int VectorDimension
 Contains the number of vector elements.

Detailed Description

template<class T = double>
class TypeIRMLVector< T >

This is a minimalistic dynamic vector class implementation used for the Reflexxes Motion Libraries.

Note:
For all copy and comparison methods of this class, no check, whether two objects are of the same size, is implemented. In order to safe computation time, it is assumed that the used TypeIRMLVector objects are of the same size. Ensure that only TypeIRMLVector objects of equal size are used.
See also:
TypeIRMLDoubleVector
TypeIRMLIntVector
TypeIRMLBoolVector

Definition at line 86 of file TypeIRMLVector.h.


Constructor & Destructor Documentation

template<class T = double>
TypeIRMLVector< T >::TypeIRMLVector ( const TypeIRMLVector< T > &  Vector) [inline]

Copy constructor of class TypeIRMLVector.

Warning:
This method is not real-time capable as heap memory has to be allocated.
Parameters:
VectorOriginal object reference

Definition at line 103 of file TypeIRMLVector.h.

template<class T = double>
TypeIRMLVector< T >::TypeIRMLVector ( const unsigned int  Size) [inline]

Constructor of class TypeIRMLVector, allocates memory for a given number of double elements.

Warning:
This method is not real-time capable as heap memory has to be allocated.
Parameters:
SizeDetermines the number of vector elements

Definition at line 125 of file TypeIRMLVector.h.

template<class T = double>
TypeIRMLVector< T >::TypeIRMLVector ( const T &  Component0,
const T &  Component1 
) [inline]

Special 2D constructor.

Warning:
This method is not real-time capable as heap memory has to be allocated.
Parameters:
Component0Value of the first vector component
Component1Value of the second vector component

Definition at line 153 of file TypeIRMLVector.h.

template<class T = double>
TypeIRMLVector< T >::TypeIRMLVector ( const T &  Component0,
const T &  Component1,
const T &  Component2 
) [inline]

Special 3D constructor.

Warning:
This method is not real-time capable as heap memory has to be allocated.
Parameters:
Component0Value of the first vector component
Component1Value of the second vector component
Component2Value of the third vector component

Definition at line 183 of file TypeIRMLVector.h.

template<class T = double>
TypeIRMLVector< T >::TypeIRMLVector ( const T &  Component0,
const T &  Component1,
const T &  Component2,
const T &  Component3 
) [inline]

Special 4D constructor.

Warning:
This method is not real-time capable as heap memory has to be allocated.
Parameters:
Component0Value of the first vector component
Component1Value of the second vector component
Component2Value of the third vector component
Component3Value of the fourth vector component

Definition at line 218 of file TypeIRMLVector.h.

template<class T = double>
TypeIRMLVector< T >::TypeIRMLVector ( const T &  Component0,
const T &  Component1,
const T &  Component2,
const T &  Component3,
const T &  Component4 
) [inline]

Special 5D constructor.

Warning:
This method is not real-time capable as heap memory has to be allocated.
Parameters:
Component0Value of the first vector component
Component1Value of the second vector component
Component2Value of the third vector component
Component3Value of the fourth vector component
Component4Value of the fifth vector component

Definition at line 257 of file TypeIRMLVector.h.

template<class T = double>
TypeIRMLVector< T >::TypeIRMLVector ( const T &  Component0,
const T &  Component1,
const T &  Component2,
const T &  Component3,
const T &  Component4,
const T &  Component5 
) [inline]

Special 6D constructor.

Warning:
This method is not real-time capable as heap memory has to be allocated.
Parameters:
Component0Value of the first vector component
Component1Value of the second vector component
Component2Value of the third vector component
Component3Value of the fourth vector component
Component4Value of the fifth vector component
Component5Value of the sixth vector component

Definition at line 302 of file TypeIRMLVector.h.

template<class T = double>
TypeIRMLVector< T >::TypeIRMLVector ( const T &  Component0,
const T &  Component1,
const T &  Component2,
const T &  Component3,
const T &  Component4,
const T &  Component5,
const T &  Component6 
) [inline]

Special 7D constructor.

Warning:
This method is not real-time capable as heap memory has to be allocated.
Parameters:
Component0Value of the first vector component
Component1Value of the second vector component
Component2Value of the third vector component
Component3Value of the fourth vector component
Component4Value of the fifth vector component
Component5Value of the sixth vector component
Component6Value of the seventh vector component

Definition at line 352 of file TypeIRMLVector.h.

template<class T = double>
TypeIRMLVector< T >::~TypeIRMLVector ( void  ) [inline]

Destructor of class TypeIRMLVector.

Definition at line 379 of file TypeIRMLVector.h.


Member Function Documentation

template<class T = double>
T * TypeIRMLVector< T >::GetReference ( void  ) const [inline]

Returns the data pointer of the vector object (not the pointer to the object)

Returns:
Data pointer

Definition at line 520 of file TypeIRMLVector.h.

template<class T = double>
unsigned int TypeIRMLVector< T >::GetVecDim ( void  ) const [inline]

Returns the dimension of the vector.

Returns:
Number of vector elements

Definition at line 506 of file TypeIRMLVector.h.

template<class T = double>
bool TypeIRMLVector< T >::operator!= ( const TypeIRMLVector< T > &  Vector) const [inline]

Unequal operator.

Returns:
true if all vector elements are equal and false in all other cases

Definition at line 491 of file TypeIRMLVector.h.

template<class T = double>
TypeIRMLVector & TypeIRMLVector< T >::operator= ( const TypeIRMLVector< T > &  Vector) [inline]

Copy operator.

Parameters:
VectorVector object to be copied

Definition at line 413 of file TypeIRMLVector.h.

template<class T = double>
bool TypeIRMLVector< T >::operator== ( const TypeIRMLVector< T > &  Vector) const [inline]

Equal operator.

Returns:
true if all vector elements are equal or false in all other cases

Definition at line 468 of file TypeIRMLVector.h.

template<class T = double>
T & TypeIRMLVector< T >::operator[] ( const int  Index) [inline]

Bracket operator, gives access to a single vector element.

Parameters:
IndexDetermines the desired vector element
Returns:
Reference to one single vector element

Definition at line 435 of file TypeIRMLVector.h.

template<class T = double>
const T & TypeIRMLVector< T >::operator[] ( const int  Index) const [inline]

Bracket operator, gives access to a single vector element.

Parameters:
IndexDetermines the desired vector element
Returns:
Constant pointer to one single vector element

Definition at line 453 of file TypeIRMLVector.h.

template<class T = double>
void TypeIRMLVector< T >::Set ( const T  Value) [inline]

Sets all elements of a vector of double elements to one specific value.

Parameters:
ValueValue for all elements of the vector

Definition at line 393 of file TypeIRMLVector.h.


Member Data Documentation

template<class T = double>
T * TypeIRMLVector< T >::VecData

Pointer to the actual vector data, that is, an array of type T objects.

Definition at line 534 of file TypeIRMLVector.h.

template<class T = double>
unsigned int TypeIRMLVector< T >::VectorDimension

Contains the number of vector elements.

Definition at line 544 of file TypeIRMLVector.h.


The documentation for this class was generated from the following file:
This document was generated with Doxygen on Thu Apr 12 2012 11:18:55. User documentation of the Fast Research Interface Library for the KUKA Lightweight Robot IV by the Stanford Robotics Research Group. Copyright 2010–2012.