SLIMMER
|
Variable Size Templated Vector Class. More...
#include <SimpleVTVec.h>
Public Member Functions | |
SimpleVTVec (const TS len=3) | |
Default Constructor with Size Option. | |
SimpleVTVec (const SimpleVTVec< T, TS > &v2) | |
Copy Constructor from Other Element Types (including default copy of same type) | |
template<typename T2 > | |
SimpleVTVec (const SimpleBaseTVec< T2, TS > &v2) | |
Copy Constructor from Other SimpleBaseVec Types. | |
~SimpleVTVec () | |
Destructor. | |
void | ReSize (const TS s) |
Change Size/Dimension of vector (only works for variable length vectors) | |
void | IncreaseSize (const TS s) |
Increase Size/Dimension of vector and Preserve Current Values (only works for variable length vectors) | |
void | AddValue (const T value) |
append value | |
T & | operator[] (const TS &i) |
Return reference to given element (allows modification) | |
T & | operator[] (const int &i) |
Return reference to given element (allows modification) | |
T | operator[] (const TS &i) const |
T | operator() (const TS &i) const |
Return copy of a given element (class constant) | |
T | operator() (const int &i) const |
Return copy of a given element (class constant) | |
TS | Size () const |
Return Size/Dimension of vector. | |
SimpleVTVec< T > | Reflect () const |
Return Reflected Vector. | |
SimpleVTVec< T, TS > | Permute () const |
random permutation | |
SimpleVTVec< T > | Skip (const TS element) const |
Return Vector one element shorter skipping given element. | |
SimpleVTVec< T, TS > & | operator= (const SimpleVTVec< T, TS > &v2) |
Copy Assignment. | |
template<typename T2 > | |
SimpleVTVec< T, TS > & | operator= (const SimpleBaseTVec< T2, TS > &v2) |
Generic Assignment for All Other Vectors. | |
template<typename T2 > | |
SimpleVTVec< T, TS > & | operator*= (const SimpleBaseTVec< T2, TS > &v2) |
Operator Vector*=Vector. | |
template<typename T2 > | |
SimpleVTVec< T, TS > & | operator-= (const SimpleBaseTVec< T2, TS > &v2) |
Operator Vector-=Vector. | |
template<typename T2 > | |
SimpleVTVec< T, TS > & | operator+= (const SimpleBaseTVec< T2, TS > &v2) |
Operator Vector+=Vector. | |
SimpleVTVec< T, TS > & | operator+= (const T &scalar) |
Operator vector += Scalar. | |
SimpleVTVec< T, TS > & | operator-= (const T &scalar) |
Operator vector -= Scalar. | |
SimpleVTVec< T, TS > & | operator*= (const T &scalar) |
Operator vector *= Scalar. | |
SimpleVTVec< T, TS > & | operator/= (const T &scalar) |
Operator vector /= Scalar. | |
SimpleVTVec< T, TS > & | operator++ () |
Operator Vector ++. | |
SimpleVTVec< T, TS > & | operator-- () |
Operator Vector --. | |
template<typename T2 > | |
SimpleVTVec< T, TS > | operator* (const SimpleBaseTVec< T2, TS > &v2) const |
Operator Vector*Vector. | |
template<typename T2 > | |
SimpleVTVec< T, TS > | operator- (const SimpleBaseTVec< T2, TS > &v2) const |
Operator Vector-Vector. | |
template<typename T2 > | |
SimpleVTVec< T, TS > | operator+ (const SimpleBaseTVec< T2, TS > &v2) const |
Operator Vector+Vector. | |
template<typename T2 > | |
SimpleVTVec< T, TS > | operator/ (const SimpleBaseTVec< T2, TS > &v2) const |
Operator Vector/Vector. | |
template<typename T2 > | |
SimpleVTVec< T, TS > | crossV (const SimpleBaseTVec< T2, TS > &v2) const |
Cross-product with a given vector. | |
SimpleVTVec< T, TS > | operator* (const T &v2) const |
Operator Vector*Scalar. | |
SimpleVTVec< T, TS > | operator- (const T &v2) const |
Operator Vector-Scalar. | |
SimpleVTVec< T, TS > | operator+ (const T &v2) const |
Operator Vector+Scalar. | |
SimpleVTVec< T, TS > | operator/ (const T &v2) const |
Operator Vector/Scalar. | |
template<> | |
const char | _versionID [] |
template<> | |
const char | _versionID [] |
template<> | |
const char | _versionID [] |
template<> | |
const char | _versionID [] |
template<> | |
const char | _versionID [] |
Static Public Attributes | |
static const char | _versionID [] |
Protected Attributes | |
TS | _length |
Length of Vector. | |
T * | _elem |
Pointer to Storage. |
Variable Size Templated Vector Class.
Derived from base vector class
Adds functions and operators returning variable sized vectors
SimpleVTVec<T,TS> SimpleVTVec< T, TS >::operator* | ( | const SimpleBaseTVec< T2, TS > & | v2 | ) | const [inline] |
Operator Vector*Vector.
(Note: Base Vector Used to Keep Generic)
SimpleVTVec<T,TS> SimpleVTVec< T, TS >::operator* | ( | const T & | v2 | ) | const [inline] |
Operator Vector*Scalar.
Note: Same Type as elements enforced
Reimplemented in SimpleTField< T, TS >, and SimpleTField< T >.
SimpleVTVec<T,TS>& SimpleVTVec< T, TS >::operator*= | ( | const T & | scalar | ) | [inline] |
Operator vector *= Scalar.
Note: Same Type as elements enforced
Reimplemented in SimpleTField< T, TS >, and SimpleTField< T >.
SimpleVTVec<T,TS>& SimpleVTVec< T, TS >::operator*= | ( | const SimpleBaseTVec< T2, TS > & | v2 | ) | [inline] |
Operator Vector*=Vector.
(Note: Base Vector Used to Keep Generic)
SimpleVTVec<T,TS> SimpleVTVec< T, TS >::operator+ | ( | const SimpleBaseTVec< T2, TS > & | v2 | ) | const [inline] |
Operator Vector+Vector.
(Note: Base Vector Used to Keep Generic)
SimpleVTVec<T,TS> SimpleVTVec< T, TS >::operator+ | ( | const T & | v2 | ) | const [inline] |
Operator Vector+Scalar.
Note: Same Type as elements enforced
Reimplemented in SimpleTField< T, TS >, and SimpleTField< T >.
SimpleVTVec<T,TS>& SimpleVTVec< T, TS >::operator+= | ( | const SimpleBaseTVec< T2, TS > & | v2 | ) | [inline] |
Operator Vector+=Vector.
(Note: Base Vector Used to Keep Generic)
SimpleVTVec<T,TS>& SimpleVTVec< T, TS >::operator+= | ( | const T & | scalar | ) | [inline] |
Operator vector += Scalar.
Note: Same Type as elements enforced
Reimplemented in SimpleTField< T, TS >, and SimpleTField< T >.
SimpleVTVec<T,TS> SimpleVTVec< T, TS >::operator- | ( | const T & | v2 | ) | const [inline] |
Operator Vector-Scalar.
Note: Same Type as elements enforced
Reimplemented in SimpleTField< T, TS >, and SimpleTField< T >.
SimpleVTVec<T,TS> SimpleVTVec< T, TS >::operator- | ( | const SimpleBaseTVec< T2, TS > & | v2 | ) | const [inline] |
Operator Vector-Vector.
(Note: Base Vector Used to Keep Generic)
SimpleVTVec<T,TS>& SimpleVTVec< T, TS >::operator-= | ( | const SimpleBaseTVec< T2, TS > & | v2 | ) | [inline] |
Operator Vector-=Vector.
(Note: Base Vector Used to Keep Generic)
SimpleVTVec<T,TS>& SimpleVTVec< T, TS >::operator-= | ( | const T & | scalar | ) | [inline] |
Operator vector -= Scalar.
Note: Same Type as elements enforced
Reimplemented in SimpleTField< T, TS >, and SimpleTField< T >.
SimpleVTVec<T,TS> SimpleVTVec< T, TS >::operator/ | ( | const T & | v2 | ) | const [inline] |
Operator Vector/Scalar.
Note: Same Type as elements enforced
Reimplemented in SimpleTField< T, TS >, and SimpleTField< T >.
SimpleVTVec<T,TS> SimpleVTVec< T, TS >::operator/ | ( | const SimpleBaseTVec< T2, TS > & | v2 | ) | const [inline] |
Operator Vector/Vector.
(Note: Base Vector Used to Keep Generic)
SimpleVTVec<T,TS>& SimpleVTVec< T, TS >::operator/= | ( | const T & | scalar | ) | [inline] |
Operator vector /= Scalar.
Note: Same Type as elements enforced
Reimplemented in SimpleTField< T, TS >, and SimpleTField< T >.