Public Member Functions | Private Attributes | List of all members
lvr2::ElementProxyPtr< T > Class Template Reference

This class emulates a Pointer behaviour for an ElementProxy if its & operator is used. The arithmetic is based on the width of an ElementProxy. It was necessary for the Octree. USE WITH CARE. More...

#include <ElementProxy.hpp>

Public Member Functions

 ElementProxyPtr (T *ptr=nullptr, size_t w=0)
 
bool operator!= (const ElementProxyPtr &rhs) const
 
ElementProxy< T > operator* ()
 
ElementProxyPtr operator+ (const ElementProxyPtr &)=delete
 
ElementProxyPtr operator+ (size_t i)
 
ElementProxyPtroperator++ ()
 
ElementProxyPtr operator++ (int)
 
ElementProxyPtroperator+= (size_t i)
 
ssize_t operator- (const ElementProxyPtr &p)
 
ElementProxyPtr operator-= (size_t i)
 
ElementProxy< T > * operator-> ()=delete
 
bool operator< (const ElementProxyPtr &rhs) const
 
bool operator<= (const ElementProxyPtr &rhs) const
 
bool operator== (const ElementProxyPtr &rhs) const
 
bool operator> (const ElementProxyPtr &rhs) const
 
bool operator>= (const ElementProxyPtr &rhs) const
 

Private Attributes

T * m_ptr
 
size_t m_w
 

Detailed Description

template<typename T>
class lvr2::ElementProxyPtr< T >

This class emulates a Pointer behaviour for an ElementProxy if its & operator is used. The arithmetic is based on the width of an ElementProxy. It was necessary for the Octree. USE WITH CARE.

Template Parameters
Tthe type of the underlying data array.

Definition at line 53 of file ElementProxy.hpp.

Constructor & Destructor Documentation

◆ ElementProxyPtr()

template<typename T>
lvr2::ElementProxyPtr< T >::ElementProxyPtr ( T *  ptr = nullptr,
size_t  w = 0 
)
inline

Definition at line 56 of file ElementProxy.hpp.

Member Function Documentation

◆ operator!=()

template<typename T>
bool lvr2::ElementProxyPtr< T >::operator!= ( const ElementProxyPtr< T > &  rhs) const
inline

Definition at line 103 of file ElementProxy.hpp.

◆ operator*()

template<typename T>
ElementProxy<T> lvr2::ElementProxyPtr< T >::operator* ( )
inline

Definition at line 106 of file ElementProxy.hpp.

◆ operator+() [1/2]

template<typename T>
ElementProxyPtr lvr2::ElementProxyPtr< T >::operator+ ( const ElementProxyPtr< T > &  )
delete

◆ operator+() [2/2]

template<typename T>
ElementProxyPtr lvr2::ElementProxyPtr< T >::operator+ ( size_t  i)
inline

Definition at line 72 of file ElementProxy.hpp.

◆ operator++() [1/2]

template<typename T>
ElementProxyPtr& lvr2::ElementProxyPtr< T >::operator++ ( )
inline

Definition at line 66 of file ElementProxy.hpp.

◆ operator++() [2/2]

template<typename T>
ElementProxyPtr lvr2::ElementProxyPtr< T >::operator++ ( int  )
inline

Definition at line 79 of file ElementProxy.hpp.

◆ operator+=()

template<typename T>
ElementProxyPtr& lvr2::ElementProxyPtr< T >::operator+= ( size_t  i)
inline

Definition at line 86 of file ElementProxy.hpp.

◆ operator-()

template<typename T>
ssize_t lvr2::ElementProxyPtr< T >::operator- ( const ElementProxyPtr< T > &  p)
inline

Definition at line 61 of file ElementProxy.hpp.

◆ operator-=()

template<typename T>
ElementProxyPtr lvr2::ElementProxyPtr< T >::operator-= ( size_t  i)
inline

Definition at line 92 of file ElementProxy.hpp.

◆ operator->()

template<typename T>
ElementProxy<T>* lvr2::ElementProxyPtr< T >::operator-> ( )
delete

◆ operator<()

template<typename T>
bool lvr2::ElementProxyPtr< T >::operator< ( const ElementProxyPtr< T > &  rhs) const
inline

Definition at line 98 of file ElementProxy.hpp.

◆ operator<=()

template<typename T>
bool lvr2::ElementProxyPtr< T >::operator<= ( const ElementProxyPtr< T > &  rhs) const
inline

Definition at line 100 of file ElementProxy.hpp.

◆ operator==()

template<typename T>
bool lvr2::ElementProxyPtr< T >::operator== ( const ElementProxyPtr< T > &  rhs) const
inline

Definition at line 102 of file ElementProxy.hpp.

◆ operator>()

template<typename T>
bool lvr2::ElementProxyPtr< T >::operator> ( const ElementProxyPtr< T > &  rhs) const
inline

Definition at line 99 of file ElementProxy.hpp.

◆ operator>=()

template<typename T>
bool lvr2::ElementProxyPtr< T >::operator>= ( const ElementProxyPtr< T > &  rhs) const
inline

Definition at line 101 of file ElementProxy.hpp.

Member Data Documentation

◆ m_ptr

template<typename T>
T* lvr2::ElementProxyPtr< T >::m_ptr
private

Definition at line 117 of file ElementProxy.hpp.

◆ m_w

template<typename T>
size_t lvr2::ElementProxyPtr< T >::m_w
private

Definition at line 118 of file ElementProxy.hpp.


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


lvr2
Author(s): Thomas Wiemann , Sebastian Pütz , Alexander Mock , Lars Kiesow , Lukas Kalbertodt , Tristan Igelbrink , Johan M. von Behren , Dominik Feldschnieders , Alexander Löhr
autogenerated on Mon Feb 28 2022 22:46:11