OpenWalnut  1.5.0dev
Public Types | Public Member Functions | Private Types | Private Attributes | Friends | List of all members
WMixinVector< ValueT > Class Template Reference

This is taken from OpenSceneGraph <osg/MixinVector> but copy and pasted in order to reduce dependency to OSG. More...

#include <WMixinVector.h>

+ Inheritance diagram for WMixinVector< ValueT >:
+ Collaboration diagram for WMixinVector< ValueT >:

Public Types

typedef vector_type::allocator_type allocator_type
 Compares to std::vector type. More...
 
typedef vector_type::value_type value_type
 Compares to std::vector type. More...
 
typedef vector_type::const_pointer const_pointer
 Compares to std::vector type. More...
 
typedef vector_type::pointer pointer
 Compares to std::vector type. More...
 
typedef vector_type::const_reference const_reference
 Compares to std::vector type. More...
 
typedef vector_type::reference reference
 Compares to std::vector type. More...
 
typedef vector_type::const_iterator const_iterator
 Compares to std::vector type. More...
 
typedef vector_type::iterator iterator
 Compares to std::vector type. More...
 
typedef vector_type::const_reverse_iterator const_reverse_iterator
 Compares to std::vector type. More...
 
typedef vector_type::reverse_iterator reverse_iterator
 Compares to std::vector type. More...
 
typedef vector_type::size_type size_type
 Compares to std::vector type. More...
 
typedef vector_type::difference_type difference_type
 Compares to std::vector type. More...
 

Public Member Functions

 WMixinVector ()
 Empty standard constructor. More...
 
 WMixinVector (size_type initial_size, const value_type &fill_value=value_type())
 Constructs a vector of initial_size size where every emlement has its default value or the given value. More...
 
template<class InputIterator >
 WMixinVector (InputIterator first, InputIterator last)
 Constructs a new vector out of an iterator of another vector. More...
 
 WMixinVector (const vector_type &other)
 Copy constructor for the appropriate vector type. More...
 
 WMixinVector (const WMixinVector &other)
 Copy constructor for the WMixinVector itself. More...
 
WMixinVectoroperator= (const vector_type &other)
 Assignment operator for the appropriate vector type. More...
 
WMixinVectoroperator= (const WMixinVector &other)
 Assigment operator for the WMixinVector itself. More...
 
virtual ~WMixinVector ()
 Virtual Destructor. More...
 
void clear ()
 Wrapper around std::vector member function. More...
 
void resize (size_type new_size, const value_type &fill_value=value_type())
 Wrapper around std::vector member function. More...
 
void reserve (size_type new_capacity)
 Wrapper around std::vector member function. More...
 
void swap (vector_type &other)
 Allow also swap with vectors of an appropriate type. More...
 
void swap (WMixinVector &other)
 Wrapper around std::vector member function. More...
 
bool empty () const
 Wrapper around std::vector member function. More...
 
size_type size () const
 Wrapper around std::vector member function. More...
 
size_type capacity () const
 Wrapper around std::vector member function. More...
 
size_type max_size () const
 Wrapper around std::vector member function. More...
 
allocator_type get_allocator () const
 Returns its allocator. More...
 
const_iterator begin () const
 Wrapper around std::vector member function. More...
 
iterator begin ()
 Wrapper around std::vector member function. More...
 
const_iterator end () const
 Wrapper around std::vector member function. More...
 
iterator end ()
 Wrapper around std::vector member function. More...
 
const_reverse_iterator rbegin () const
 Wrapper around std::vector member function. More...
 
reverse_iterator rbegin ()
 Wrapper around std::vector member function. More...
 
const_reverse_iterator rend () const
 Wrapper around std::vector member function. More...
 
reverse_iterator rend ()
 Wrapper around std::vector member function. More...
 
const_reference operator[] (size_type index) const
 Wrapper around std::vector member function. More...
 
reference operator[] (size_type index)
 Wrapper around std::vector member function. More...
 
const_reference at (size_type index) const
 Wrapper around std::vector member function. More...
 
reference at (size_type index)
 Wrapper around std::vector member function. More...
 
void assign (size_type count, const value_type &value)
 Wrapper around std::vector member function. More...
 
template<class Iter >
void assign (Iter first, Iter last)
 Wrapper around std::vector member function. More...
 
void push_back (const value_type &value)
 Wrapper around std::vector member function. More...
 
void pop_back ()
 Wrapper around std::vector member function. More...
 
iterator erase (iterator where)
 Wrapper around std::vector member function. More...
 
iterator erase (iterator first, iterator last)
 Wrapper around std::vector member function. More...
 
iterator insert (iterator where, const value_type &value)
 Wrapper around std::vector member function. More...
 
template<class InputIterator >
void insert (iterator where, InputIterator first, InputIterator last)
 Wrapper around std::vector member function. More...
 
void insert (iterator where, size_type count, const value_type &value)
 Wrapper around std::vector member function. More...
 
const_reference back () const
 Wrapper around std::vector member function. More...
 
reference back ()
 Wrapper around std::vector member function. More...
 
const_reference front () const
 Wrapper around std::vector member function. More...
 
reference front ()
 Wrapper around std::vector member function. More...
 
vector_typeasVector ()
 Return this Mixin as its underlying real vector type. More...
 
const vector_typeasVector () const
 Return this Mixin as its underlying real vector type. More...
 

Private Types

typedef std::vector< ValueT > vector_type
 Handy shortcut for the vector type. More...
 

Private Attributes

vector_type _impl
 Encapsulated internal vector from which derivation is simulated. More...
 

Friends

bool operator== (const WMixinVector< ValueT > &left, const WMixinVector< ValueT > &right)
 Wrapper around std::vector operator. More...
 
bool operator== (const WMixinVector< ValueT > &left, const std::vector< ValueT > &right)
 Wrapper around std::vector operator. More...
 
bool operator== (const std::vector< ValueT > &left, const WMixinVector< ValueT > &right)
 Wrapper around std::vector operator. More...
 
bool operator!= (const WMixinVector< ValueT > &left, const WMixinVector< ValueT > &right)
 Wrapper around std::vector operator. More...
 
bool operator!= (const WMixinVector< ValueT > &left, const std::vector< ValueT > &right)
 Wrapper around std::vector operator. More...
 
bool operator!= (const std::vector< ValueT > &left, const WMixinVector< ValueT > &right)
 Wrapper around std::vector operator. More...
 
bool operator< (const WMixinVector< ValueT > &left, const WMixinVector< ValueT > &right)
 Wrapper around std::vector operator. More...
 
bool operator< (const WMixinVector< ValueT > &left, const std::vector< ValueT > &right)
 Wrapper around std::vector operator. More...
 
bool operator< (const std::vector< ValueT > &left, const WMixinVector< ValueT > &right)
 Wrapper around std::vector operator. More...
 
bool operator> (const WMixinVector< ValueT > &left, const WMixinVector< ValueT > &right)
 Wrapper around std::vector operator. More...
 
bool operator> (const WMixinVector< ValueT > &left, const std::vector< ValueT > &right)
 Wrapper around std::vector operator. More...
 
bool operator> (const std::vector< ValueT > &left, const WMixinVector< ValueT > &right)
 Wrapper around std::vector operator. More...
 
bool operator<= (const WMixinVector< ValueT > &left, const WMixinVector< ValueT > &right)
 Wrapper around std::vector operator. More...
 
bool operator<= (const WMixinVector< ValueT > &left, const std::vector< ValueT > &right)
 Wrapper around std::vector operator. More...
 
bool operator<= (const std::vector< ValueT > &left, const WMixinVector< ValueT > &right)
 Wrapper around std::vector operator. More...
 
bool operator>= (const WMixinVector< ValueT > &left, const WMixinVector< ValueT > &right)
 Wrapper around std::vector operator. More...
 
bool operator>= (const WMixinVector< ValueT > &left, const std::vector< ValueT > &right)
 Wrapper around std::vector operator. More...
 
bool operator>= (const std::vector< ValueT > &left, const WMixinVector< ValueT > &right)
 Wrapper around std::vector operator. More...
 

Detailed Description

template<class ValueT>
class WMixinVector< ValueT >

This is taken from OpenSceneGraph <osg/MixinVector> but copy and pasted in order to reduce dependency to OSG.

It follows the orignal documentation:

WMixinVector is a base class that allows inheritance to be used to easily emulate derivation from std::vector but without introducing undefined behaviour through violation of virtual destructor rules.

Author
Neil Groves

Definition at line 47 of file WMixinVector.h.

Member Typedef Documentation

◆ allocator_type

template<class ValueT >
typedef vector_type::allocator_type WMixinVector< ValueT >::allocator_type

Compares to std::vector type.

Definition at line 58 of file WMixinVector.h.

◆ const_iterator

template<class ValueT >
typedef vector_type::const_iterator WMixinVector< ValueT >::const_iterator

Compares to std::vector type.

Definition at line 87 of file WMixinVector.h.

◆ const_pointer

template<class ValueT >
typedef vector_type::const_pointer WMixinVector< ValueT >::const_pointer

Compares to std::vector type.

Definition at line 67 of file WMixinVector.h.

◆ const_reference

template<class ValueT >
typedef vector_type::const_reference WMixinVector< ValueT >::const_reference

Compares to std::vector type.

Definition at line 77 of file WMixinVector.h.

◆ const_reverse_iterator

template<class ValueT >
typedef vector_type::const_reverse_iterator WMixinVector< ValueT >::const_reverse_iterator

Compares to std::vector type.

Definition at line 97 of file WMixinVector.h.

◆ difference_type

template<class ValueT >
typedef vector_type::difference_type WMixinVector< ValueT >::difference_type

Compares to std::vector type.

Definition at line 116 of file WMixinVector.h.

◆ iterator

template<class ValueT >
typedef vector_type::iterator WMixinVector< ValueT >::iterator

Compares to std::vector type.

Definition at line 92 of file WMixinVector.h.

◆ pointer

template<class ValueT >
typedef vector_type::pointer WMixinVector< ValueT >::pointer

Compares to std::vector type.

Definition at line 72 of file WMixinVector.h.

◆ reference

template<class ValueT >
typedef vector_type::reference WMixinVector< ValueT >::reference

Compares to std::vector type.

Definition at line 82 of file WMixinVector.h.

◆ reverse_iterator

template<class ValueT >
typedef vector_type::reverse_iterator WMixinVector< ValueT >::reverse_iterator

Compares to std::vector type.

Definition at line 102 of file WMixinVector.h.

◆ size_type

template<class ValueT >
typedef vector_type::size_type WMixinVector< ValueT >::size_type

Compares to std::vector type.

Compares to std::vector type

Definition at line 111 of file WMixinVector.h.

◆ value_type

template<class ValueT >
typedef vector_type::value_type WMixinVector< ValueT >::value_type

Compares to std::vector type.

Definition at line 63 of file WMixinVector.h.

◆ vector_type

template<class ValueT >
typedef std::vector< ValueT > WMixinVector< ValueT >::vector_type
private

Handy shortcut for the vector type.

Definition at line 52 of file WMixinVector.h.

Constructor & Destructor Documentation

◆ WMixinVector() [1/5]

template<class ValueT >
WMixinVector< ValueT >::WMixinVector ( )
inlineexplicit

Empty standard constructor.

Definition at line 121 of file WMixinVector.h.

◆ WMixinVector() [2/5]

template<class ValueT >
WMixinVector< ValueT >::WMixinVector ( size_type  initial_size,
const value_type fill_value = value_type() 
)
inlineexplicit

Constructs a vector of initial_size size where every emlement has its default value or the given value.

Parameters
initial_sizeThe initial size
fill_valueThe default value for every element

Definition at line 133 of file WMixinVector.h.

◆ WMixinVector() [3/5]

template<class ValueT >
template<class InputIterator >
WMixinVector< ValueT >::WMixinVector ( InputIterator  first,
InputIterator  last 
)
inline

Constructs a new vector out of an iterator of another vector.

Parameters
firstBegin of the iterator
lastEnd of the iterator

Definition at line 145 of file WMixinVector.h.

◆ WMixinVector() [4/5]

template<class ValueT >
WMixinVector< ValueT >::WMixinVector ( const vector_type other)
inlineexplicit

Copy constructor for the appropriate vector type.

Parameters
otherOther std::vector of type vector_type

Definition at line 155 of file WMixinVector.h.

◆ WMixinVector() [5/5]

template<class ValueT >
WMixinVector< ValueT >::WMixinVector ( const WMixinVector< ValueT > &  other)
inline

Copy constructor for the WMixinVector itself.

Parameters
otherOther WMixinVector

Definition at line 165 of file WMixinVector.h.

◆ ~WMixinVector()

template<class ValueT >
virtual WMixinVector< ValueT >::~WMixinVector ( )
inlinevirtual

Virtual Destructor.

Definition at line 199 of file WMixinVector.h.

Member Function Documentation

◆ assign() [1/2]

template<class ValueT >
template<class Iter >
void WMixinVector< ValueT >::assign ( Iter  first,
Iter  last 
)
inline

Wrapper around std::vector member function.

Parameters
first
last

Definition at line 447 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ assign() [2/2]

template<class ValueT >
void WMixinVector< ValueT >::assign ( size_type  count,
const value_type value 
)
inline

Wrapper around std::vector member function.

Parameters
count
value

Definition at line 436 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ asVector() [1/2]

template<class ValueT >
vector_type& WMixinVector< ValueT >::asVector ( )
inline

Return this Mixin as its underlying real vector type.

Warning
Use with caution!
Returns
Reference to its private vector.

Definition at line 578 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ asVector() [2/2]

template<class ValueT >
const vector_type& WMixinVector< ValueT >::asVector ( ) const
inline

Return this Mixin as its underlying real vector type.

Returns
Const reference to its private vector.

Definition at line 588 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ at() [1/2]

template<class ValueT >
reference WMixinVector< ValueT >::at ( size_type  index)
inline

Wrapper around std::vector member function.

Parameters
indexIndex of the element that is returned
Returns
Referenece to the index'th element

Definition at line 425 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ at() [2/2]

template<class ValueT >
const_reference WMixinVector< ValueT >::at ( size_type  index) const
inline

Wrapper around std::vector member function.

Parameters
indexIndex of the element that is returned
Returns
Const referenece to the index'th element

Definition at line 413 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

Referenced by WFiberCluster::unifyDirection(), and WLine::unifyDirectionBy().

+ Here is the caller graph for this function:

◆ back() [1/2]

template<class ValueT >
reference WMixinVector< ValueT >::back ( )
inline

Wrapper around std::vector member function.

Returns
Reference to last element

Definition at line 547 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ back() [2/2]

template<class ValueT >
const_reference WMixinVector< ValueT >::back ( ) const
inline

Wrapper around std::vector member function.

Returns
Const reference to last element

Definition at line 537 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

Referenced by WFiberCluster::elongateCenterLine(), WLine::removeAdjacentDuplicates(), WLine::resampleBySegmentLength(), WLine::resampleBySegmentLengthKeepShortFibers(), WLineTest::testEqualityOperator(), and WFiberCluster::unifyDirection().

+ Here is the caller graph for this function:

◆ begin() [1/2]

template<class ValueT >
iterator WMixinVector< ValueT >::begin ( )
inline

Wrapper around std::vector member function.

Returns
Iterator starting a the first element

Definition at line 317 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ begin() [2/2]

template<class ValueT >
const_iterator WMixinVector< ValueT >::begin ( ) const
inline

Wrapper around std::vector member function.

Returns
Const iterator starting a the first element

Definition at line 307 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

Referenced by WFiberCluster::elongateCenterLine(), WDataSetFiberVector::operator=(), and WDataSetFiberVector::toWDataSetFibers().

+ Here is the caller graph for this function:

◆ capacity()

template<class ValueT >
size_type WMixinVector< ValueT >::capacity ( ) const
inline

Wrapper around std::vector member function.

Returns
Its capacity

Definition at line 277 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ clear()

template<class ValueT >
void WMixinVector< ValueT >::clear ( )
inline

Wrapper around std::vector member function.

Definition at line 206 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

Referenced by WBresenhamTest::testSymmetry(), and WBresenhamDBLTest::testSymmetry().

+ Here is the caller graph for this function:

◆ empty()

template<class ValueT >
bool WMixinVector< ValueT >::empty ( ) const
inline

Wrapper around std::vector member function.

Returns
True if empty otherwise false.

Definition at line 257 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ end() [1/2]

template<class ValueT >
iterator WMixinVector< ValueT >::end ( )
inline

Wrapper around std::vector member function.

Returns
Iterator starting a the last element

Definition at line 337 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ end() [2/2]

template<class ValueT >
const_iterator WMixinVector< ValueT >::end ( ) const
inline

Wrapper around std::vector member function.

Returns
Const iterator starting a the last element

Definition at line 327 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

Referenced by WDataSetFiberVector::operator=(), and WDataSetFiberVector::toWDataSetFibers().

+ Here is the caller graph for this function:

◆ erase() [1/2]

template<class ValueT >
iterator WMixinVector< ValueT >::erase ( iterator  first,
iterator  last 
)
inline

Wrapper around std::vector member function.

Parameters
firstStart from where to erase
lastEnd unti to erase
Returns
Iterator from erase

Definition at line 490 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ erase() [2/2]

template<class ValueT >
iterator WMixinVector< ValueT >::erase ( iterator  where)
inline

Wrapper around std::vector member function.

Parameters
wherePosition where to erase
Returns
Iterator from the erase

Definition at line 477 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ front() [1/2]

template<class ValueT >
reference WMixinVector< ValueT >::front ( )
inline

Wrapper around std::vector member function.

Returns
Reference to first element

Definition at line 567 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ front() [2/2]

template<class ValueT >
const_reference WMixinVector< ValueT >::front ( ) const
inline

Wrapper around std::vector member function.

Returns
Const reference to first element

Definition at line 557 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

Referenced by WFiberCluster::unifyDirection().

+ Here is the caller graph for this function:

◆ get_allocator()

template<class ValueT >
allocator_type WMixinVector< ValueT >::get_allocator ( ) const
inline

Returns its allocator.

Returns
Its allocator

Definition at line 297 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ insert() [1/3]

template<class ValueT >
iterator WMixinVector< ValueT >::insert ( iterator  where,
const value_type value 
)
inline

Wrapper around std::vector member function.

Parameters
wherePosition where to insert
valueValue of the element to insert
Returns
Iterator from insert

Definition at line 503 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

Referenced by WFiberCluster::elongateCenterLine().

+ Here is the caller graph for this function:

◆ insert() [2/3]

template<class ValueT >
template<class InputIterator >
void WMixinVector< ValueT >::insert ( iterator  where,
InputIterator  first,
InputIterator  last 
)
inline

Wrapper around std::vector member function.

Parameters
wherePosition where to insert
firstPosition where to start insert ( First element that should be copied )
lastPosition where to end insert ( Last element that should be copied )

Definition at line 515 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ insert() [3/3]

template<class ValueT >
void WMixinVector< ValueT >::insert ( iterator  where,
size_type  count,
const value_type value 
)
inline

Wrapper around std::vector member function.

Parameters
wherePosition where to insert
countHow many elements to insert
valueWhich value is inserted

Definition at line 527 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ max_size()

template<class ValueT >
size_type WMixinVector< ValueT >::max_size ( ) const
inline

Wrapper around std::vector member function.

Returns
Its maximal size

Definition at line 287 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ operator=() [1/2]

template<class ValueT >
WMixinVector& WMixinVector< ValueT >::operator= ( const vector_type other)
inline

Assignment operator for the appropriate vector type.

Parameters
otherOther std::vector
Returns
Reference to the assigned mixin

Definition at line 177 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

Referenced by WLine::removeAdjacentDuplicates(), WLine::resampleByNumberOfPoints(), WLine::resampleBySegmentLength(), and WLine::resampleBySegmentLengthKeepShortFibers().

+ Here is the caller graph for this function:

◆ operator=() [2/2]

template<class ValueT >
WMixinVector& WMixinVector< ValueT >::operator= ( const WMixinVector< ValueT > &  other)
inline

Assigment operator for the WMixinVector itself.

Parameters
otherOther WMixinVector
Returns
Reference to the assigned mixin

Definition at line 190 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ operator[]() [1/2]

template<class ValueT >
reference WMixinVector< ValueT >::operator[] ( size_type  index)
inline

Wrapper around std::vector member function.

Parameters
indexIndex of the element that is returned
Returns
Referenece to the index'th element

Definition at line 401 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ operator[]() [2/2]

template<class ValueT >
const_reference WMixinVector< ValueT >::operator[] ( size_type  index) const
inline

Wrapper around std::vector member function.

Parameters
indexIndex of the element that is returned
Returns
Const referenece to the index'th element

Definition at line 389 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ pop_back()

template<class ValueT >
void WMixinVector< ValueT >::pop_back ( )
inline

Wrapper around std::vector member function.

Definition at line 465 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

Referenced by WLineTest::testNumericalStabilityOfResampling(), and WLineTest::testSamplingPointsAreExactlyInTheOldSegmentCenterAndCorners().

+ Here is the caller graph for this function:

◆ push_back()

template<class ValueT >
void WMixinVector< ValueT >::push_back ( const value_type value)
inline

Wrapper around std::vector member function.

Parameters
valueValue to append

Definition at line 457 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

Referenced by WFiberCluster::elongateCenterLine(), WDataSetFibers::operator[](), WLine::removeAdjacentDuplicates(), WLine::resampleByNumberOfPoints(), WLine::resampleBySegmentLength(), WLine::resampleBySegmentLengthKeepShortFibers(), WFiberClusterTest::setUp(), WLineTest::testAccessOperatorWithinValidBounds(), WFiberClusterTest::testCenterLine(), WFiberTest::testDLTisSymmetric(), WLineTest::testDownSampleLine(), WFiberTest::testDSTisSymmetric(), WFiberTest::testDTMeasure(), WLineTest::testEmptyLineOnMaxSegementLength(), WFiberTest::testEqualityOperator(), WLineTest::testEqualityOperator(), WLineTest::testEqualsDeltaDifferentLength(), WLineTest::testEqualsDeltaOnDifferentLinesButWithinDelta(), WLineTest::testEqualsDeltaOnRealDifferentLines(), WBresenhamDBLTest::testExactLineIsNotRasteredTheSameWayAsMidpointLines(), WBresenhamTest::testExactLineIsRasteredTheSameWayAsMidpointLines(), WMathTest::testIntersectionOfPlaneWithLine(), WMathTest::testIntersectionPlaneLineWithJustOnePoint(), WMathTest::testIntersectionPlaneLineWithSegmentInPlane(), WBresenhamTest::testLineSegementWithSameStartAndEndPoint(), WBresenhamDBLTest::testLineSegementWithSameStartAndEndPoint(), WLineTest::testManySampelsInBetweenOfTwoOldPoints(), WLineTest::testMaxSegementLength(), WLineTest::testMidPointOnEvenSize(), WLineTest::testMidPointOnUnevenSize(), WMathTest::testMultipleIntersectionPlaneLine(), WMathTest::testNoIntersectionOfPlaneWithLine(), WLineTest::testNumericalStabilityOfResampling(), WLineTest::testOutputOperator(), WLineTest::testPathLength(), WBresenhamTest::testPolyLineRastering(), WBresenhamDBLTest::testPolyLineRastering(), WBresenhamTest::testPolySegmentOneVoxelRastering(), WBresenhamDBLTest::testPolySegmentOneVoxelRastering(), WBresenhamTest::testRasteringIn3rdQuadrant(), WLineTest::testRemoveAdjacentDuplicates(), WLineTest::testResamplingByNewSegementLengthOldSegmentLengthBiggerAsNewSegmentLength(), WLineTest::testResamplingByNewSegementLengthTravelingOutOfTheCircle(), WLineTest::testResamplingByNewSegementLengthWithLineHavingJustOnePoint(), WLineTest::testReverseOrdering(), WLineTest::testSamplingPointsAreExactlyInTheOldSegmentCenterAndCorners(), WLineTest::testSamplingWithSameNumberOfPoints(), WBresenhamTest::testSymmetry(), WBresenhamDBLTest::testSymmetry(), WFiberClusterTest::testUnifyDirectionOnTwoCircularShapedFibersInDifferentCircle(), WFiberClusterTest::testUnifyDirectionOnTwoCircularShapedFibersInSameCircle(), WFiberClusterTest::testUnifyDirectionOnTwoConsecutiveFibers(), WFiberClusterTest::testUnifyDirectionOnTwoCSTShapedFibers(), WFiberClusterTest::testUnifyDirectionOnTwoInverseCSTShapedFibers(), WDataSetFiberVector::toWDataSetFibers(), and WDataSetFiberVector::WDataSetFiberVector().

+ Here is the caller graph for this function:

◆ rbegin() [1/2]

template<class ValueT >
reverse_iterator WMixinVector< ValueT >::rbegin ( )
inline

Wrapper around std::vector member function.

Returns
Reverse iterator starting a the last element

Definition at line 357 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ rbegin() [2/2]

template<class ValueT >
const_reverse_iterator WMixinVector< ValueT >::rbegin ( ) const
inline

Wrapper around std::vector member function.

Returns
Const reverse iterator starting a the last element

Definition at line 347 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ rend() [1/2]

template<class ValueT >
reverse_iterator WMixinVector< ValueT >::rend ( )
inline

Wrapper around std::vector member function.

Returns
Reverse iterator starting a the first element

Definition at line 377 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ rend() [2/2]

template<class ValueT >
const_reverse_iterator WMixinVector< ValueT >::rend ( ) const
inline

Wrapper around std::vector member function.

Returns
Const reverse iterator starting a the first element

Definition at line 367 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ reserve()

template<class ValueT >
void WMixinVector< ValueT >::reserve ( size_type  new_capacity)
inline

Wrapper around std::vector member function.

Parameters
new_capacityHow many elements will be in this vector

Definition at line 227 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

Referenced by WDataSetFibers::operator[](), WLine::removeAdjacentDuplicates(), and WLine::resampleByNumberOfPoints().

+ Here is the caller graph for this function:

◆ resize()

template<class ValueT >
void WMixinVector< ValueT >::resize ( size_type  new_size,
const value_type fill_value = value_type() 
)
inline

Wrapper around std::vector member function.

Parameters
new_size
fill_value

Definition at line 217 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ size()

template<class ValueT >
size_type WMixinVector< ValueT >::size ( ) const
inline

◆ swap() [1/2]

template<class ValueT >
void WMixinVector< ValueT >::swap ( vector_type other)
inline

Allow also swap with vectors of an appropriate type.

Parameters
otherTo swap with

Definition at line 237 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

◆ swap() [2/2]

template<class ValueT >
void WMixinVector< ValueT >::swap ( WMixinVector< ValueT > &  other)
inline

Wrapper around std::vector member function.

Parameters
other

Definition at line 247 of file WMixinVector.h.

References WMixinVector< ValueT >::_impl.

Friends And Related Function Documentation

◆ operator!= [1/3]

template<class ValueT >
bool operator!= ( const std::vector< ValueT > &  left,
const WMixinVector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 667 of file WMixinVector.h.

◆ operator!= [2/3]

template<class ValueT >
bool operator!= ( const WMixinVector< ValueT > &  left,
const std::vector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 654 of file WMixinVector.h.

◆ operator!= [3/3]

template<class ValueT >
bool operator!= ( const WMixinVector< ValueT > &  left,
const WMixinVector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 641 of file WMixinVector.h.

◆ operator< [1/3]

template<class ValueT >
bool operator< ( const std::vector< ValueT > &  left,
const WMixinVector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 707 of file WMixinVector.h.

◆ operator< [2/3]

template<class ValueT >
bool operator< ( const WMixinVector< ValueT > &  left,
const std::vector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 694 of file WMixinVector.h.

◆ operator< [3/3]

template<class ValueT >
bool operator< ( const WMixinVector< ValueT > &  left,
const WMixinVector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 681 of file WMixinVector.h.

◆ operator<= [1/3]

template<class ValueT >
bool operator<= ( const std::vector< ValueT > &  left,
const WMixinVector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 787 of file WMixinVector.h.

◆ operator<= [2/3]

template<class ValueT >
bool operator<= ( const WMixinVector< ValueT > &  left,
const std::vector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 774 of file WMixinVector.h.

◆ operator<= [3/3]

template<class ValueT >
bool operator<= ( const WMixinVector< ValueT > &  left,
const WMixinVector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 761 of file WMixinVector.h.

◆ operator== [1/3]

template<class ValueT >
bool operator== ( const std::vector< ValueT > &  left,
const WMixinVector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 627 of file WMixinVector.h.

◆ operator== [2/3]

template<class ValueT >
bool operator== ( const WMixinVector< ValueT > &  left,
const std::vector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 614 of file WMixinVector.h.

◆ operator== [3/3]

template<class ValueT >
bool operator== ( const WMixinVector< ValueT > &  left,
const WMixinVector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 601 of file WMixinVector.h.

◆ operator> [1/3]

template<class ValueT >
bool operator> ( const std::vector< ValueT > &  left,
const WMixinVector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 747 of file WMixinVector.h.

◆ operator> [2/3]

template<class ValueT >
bool operator> ( const WMixinVector< ValueT > &  left,
const std::vector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 734 of file WMixinVector.h.

◆ operator> [3/3]

template<class ValueT >
bool operator> ( const WMixinVector< ValueT > &  left,
const WMixinVector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 721 of file WMixinVector.h.

◆ operator>= [1/3]

template<class ValueT >
bool operator>= ( const std::vector< ValueT > &  left,
const WMixinVector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 827 of file WMixinVector.h.

◆ operator>= [2/3]

template<class ValueT >
bool operator>= ( const WMixinVector< ValueT > &  left,
const std::vector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 814 of file WMixinVector.h.

◆ operator>= [3/3]

template<class ValueT >
bool operator>= ( const WMixinVector< ValueT > &  left,
const WMixinVector< ValueT > &  right 
)
friend

Wrapper around std::vector operator.

Parameters
leftLeft hand side
rightRight hand side
Returns
True if and only if std::vector operator is true

Definition at line 801 of file WMixinVector.h.

Member Data Documentation

◆ _impl

template<class ValueT >
vector_type WMixinVector< ValueT >::_impl
private

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