MRPT  1.9.9
nanoflann::CArray< T, N > Class Template Reference

Detailed Description

template<typename T, std::size_t N>
class nanoflann::CArray< T, N >

A STL container (as wrapper) for arrays of constant size defined at compile time (class imported from the MRPT project) This code is an adapted version from Boost, modifed for its integration within MRPT (JLBC, Dec/2009) (Renamed array -> CArray to avoid possible potential conflicts).

See http://www.josuttis.com/cppcode for details and the latest version. See http://www.boost.org/libs/array for Documentation. for documentation.

(C) Copyright Nicolai M. Josuttis 2001. Permission to copy, use, modify, sell and distribute this software is granted provided this copyright notice appears in all copies. This software is provided "as is" without express or implied warranty, and with no claim as to its suitability for any purpose.

29 Jan 2004 - minor fixes (Nico Josuttis) 04 Dec 2003 - update to synch with library TR1 (Alisdair Meredith) 23 Aug 2002 - fix for Non-MSVC compilers combined with MSVC libraries. 05 Aug 2001 - minor update (Nico Josuttis) 20 Jan 2001 - STLport fix (Beman Dawes) 29 Sep 2000 - Initial Revision (Nico Josuttis)

Jan 30, 2004

Definition at line 607 of file nanoflann.hpp.

#include <nanoflann.hpp>

Public Types

enum  { static_size = N }
 
typedef T value_type
 
typedef T * iterator
 
typedef const T * const_iterator
 
typedef T & reference
 
typedef const T & const_reference
 
typedef std::size_t size_type
 
typedef std::ptrdiff_t difference_type
 
typedef std::reverse_iterator< iteratorreverse_iterator
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 

Public Member Functions

iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
reverse_iterator rbegin ()
 
const_reverse_iterator rbegin () const
 
reverse_iterator rend ()
 
const_reverse_iterator rend () const
 
reference operator[] (size_type i)
 
const_reference operator[] (size_type i) const
 
reference at (size_type i)
 
const_reference at (size_type i) const
 
reference front ()
 
const_reference front () const
 
reference back ()
 
const_reference back () const
 
void resize (const size_t nElements)
 This method has no effects in this class, but raises an exception if the expected size does not match. More...
 
void swap (CArray< T, N > &y)
 
const T * data () const
 
T * data ()
 
template<typename T2 >
CArray< T, N > & operator= (const CArray< T2, N > &rhs)
 
void assign (const T &value)
 
void assign (const size_t n, const T &value)
 

Static Public Member Functions

static size_type size ()
 
static bool empty ()
 
static size_type max_size ()
 

Public Attributes

elems [N]
 

Static Private Member Functions

static void rangecheck (size_type i)
 

Member Typedef Documentation

◆ const_iterator

template<typename T, std::size_t N>
typedef const T* nanoflann::CArray< T, N >::const_iterator

Definition at line 615 of file nanoflann.hpp.

◆ const_reference

template<typename T, std::size_t N>
typedef const T& nanoflann::CArray< T, N >::const_reference

Definition at line 617 of file nanoflann.hpp.

◆ const_reverse_iterator

template<typename T, std::size_t N>
typedef std::reverse_iterator<const_iterator> nanoflann::CArray< T, N >::const_reverse_iterator

Definition at line 630 of file nanoflann.hpp.

◆ difference_type

template<typename T, std::size_t N>
typedef std::ptrdiff_t nanoflann::CArray< T, N >::difference_type

Definition at line 619 of file nanoflann.hpp.

◆ iterator

template<typename T, std::size_t N>
typedef T* nanoflann::CArray< T, N >::iterator

Definition at line 614 of file nanoflann.hpp.

◆ reference

template<typename T, std::size_t N>
typedef T& nanoflann::CArray< T, N >::reference

Definition at line 616 of file nanoflann.hpp.

◆ reverse_iterator

template<typename T, std::size_t N>
typedef std::reverse_iterator<iterator> nanoflann::CArray< T, N >::reverse_iterator

Definition at line 629 of file nanoflann.hpp.

◆ size_type

template<typename T, std::size_t N>
typedef std::size_t nanoflann::CArray< T, N >::size_type

Definition at line 618 of file nanoflann.hpp.

◆ value_type

template<typename T, std::size_t N>
typedef T nanoflann::CArray< T, N >::value_type

Definition at line 613 of file nanoflann.hpp.

Member Enumeration Documentation

◆ anonymous enum

template<typename T, std::size_t N>
anonymous enum
Enumerator
static_size 

Definition at line 662 of file nanoflann.hpp.

Member Function Documentation

◆ assign() [1/2]

template<typename T, std::size_t N>
void nanoflann::CArray< T, N >::assign ( const T &  value)
inline

Definition at line 677 of file nanoflann.hpp.

◆ assign() [2/2]

template<typename T, std::size_t N>
void nanoflann::CArray< T, N >::assign ( const size_t  n,
const T &  value 
)
inline

Definition at line 679 of file nanoflann.hpp.

◆ at() [1/2]

template<typename T, std::size_t N>
reference nanoflann::CArray< T, N >::at ( size_type  i)
inline

Definition at line 651 of file nanoflann.hpp.

◆ at() [2/2]

template<typename T, std::size_t N>
const_reference nanoflann::CArray< T, N >::at ( size_type  i) const
inline

Definition at line 652 of file nanoflann.hpp.

◆ back() [1/2]

template<typename T, std::size_t N>
reference nanoflann::CArray< T, N >::back ( )
inline

Definition at line 656 of file nanoflann.hpp.

◆ back() [2/2]

template<typename T, std::size_t N>
const_reference nanoflann::CArray< T, N >::back ( ) const
inline

Definition at line 657 of file nanoflann.hpp.

◆ begin() [1/2]

template<typename T, std::size_t N>
iterator nanoflann::CArray< T, N >::begin ( )
inline

Definition at line 622 of file nanoflann.hpp.

Referenced by nanoflann::CArray< T, N >::operator=().

Here is the caller graph for this function:

◆ begin() [2/2]

template<typename T, std::size_t N>
const_iterator nanoflann::CArray< T, N >::begin ( ) const
inline

Definition at line 623 of file nanoflann.hpp.

◆ data() [1/2]

template<typename T, std::size_t N>
const T* nanoflann::CArray< T, N >::data ( ) const
inline

Definition at line 668 of file nanoflann.hpp.

◆ data() [2/2]

template<typename T, std::size_t N>
T* nanoflann::CArray< T, N >::data ( )
inline

Definition at line 670 of file nanoflann.hpp.

◆ empty()

template<typename T, std::size_t N>
static bool nanoflann::CArray< T, N >::empty ( )
inlinestatic

Definition at line 660 of file nanoflann.hpp.

◆ end() [1/2]

template<typename T, std::size_t N>
iterator nanoflann::CArray< T, N >::end ( )
inline

Definition at line 624 of file nanoflann.hpp.

Referenced by nanoflann::CArray< T, N >::operator=().

Here is the caller graph for this function:

◆ end() [2/2]

template<typename T, std::size_t N>
const_iterator nanoflann::CArray< T, N >::end ( ) const
inline

Definition at line 625 of file nanoflann.hpp.

◆ front() [1/2]

template<typename T, std::size_t N>
reference nanoflann::CArray< T, N >::front ( )
inline

Definition at line 654 of file nanoflann.hpp.

◆ front() [2/2]

template<typename T, std::size_t N>
const_reference nanoflann::CArray< T, N >::front ( ) const
inline

Definition at line 655 of file nanoflann.hpp.

◆ max_size()

template<typename T, std::size_t N>
static size_type nanoflann::CArray< T, N >::max_size ( )
inlinestatic

Definition at line 661 of file nanoflann.hpp.

◆ operator=()

template<typename T, std::size_t N>
template<typename T2 >
CArray<T,N>& nanoflann::CArray< T, N >::operator= ( const CArray< T2, N > &  rhs)
inline

Definition at line 672 of file nanoflann.hpp.

References mrpt::containers::begin(), nanoflann::CArray< T, N >::begin(), and nanoflann::CArray< T, N >::end().

Here is the call graph for this function:

◆ operator[]() [1/2]

template<typename T, std::size_t N>
reference nanoflann::CArray< T, N >::operator[] ( size_type  i)
inline

Definition at line 648 of file nanoflann.hpp.

◆ operator[]() [2/2]

template<typename T, std::size_t N>
const_reference nanoflann::CArray< T, N >::operator[] ( size_type  i) const
inline

Definition at line 649 of file nanoflann.hpp.

◆ rangecheck()

template<typename T, std::size_t N>
static void nanoflann::CArray< T, N >::rangecheck ( size_type  i)
inlinestaticprivate

Definition at line 682 of file nanoflann.hpp.

References nanoflann::KNNResultSet< DistanceType, IndexType, CountType >::size().

Here is the call graph for this function:

◆ rbegin() [1/2]

template<typename T, std::size_t N>
reverse_iterator nanoflann::CArray< T, N >::rbegin ( )
inline

Definition at line 643 of file nanoflann.hpp.

◆ rbegin() [2/2]

template<typename T, std::size_t N>
const_reverse_iterator nanoflann::CArray< T, N >::rbegin ( ) const
inline

Definition at line 644 of file nanoflann.hpp.

◆ rend() [1/2]

template<typename T, std::size_t N>
reverse_iterator nanoflann::CArray< T, N >::rend ( )
inline

Definition at line 645 of file nanoflann.hpp.

References mrpt::containers::begin().

Here is the call graph for this function:

◆ rend() [2/2]

template<typename T, std::size_t N>
const_reverse_iterator nanoflann::CArray< T, N >::rend ( ) const
inline

Definition at line 646 of file nanoflann.hpp.

References mrpt::containers::begin().

Here is the call graph for this function:

◆ resize()

template<typename T, std::size_t N>
void nanoflann::CArray< T, N >::resize ( const size_t  nElements)
inline

This method has no effects in this class, but raises an exception if the expected size does not match.

Definition at line 664 of file nanoflann.hpp.

◆ size()

template<typename T, std::size_t N>
static size_type nanoflann::CArray< T, N >::size ( )
inlinestatic

Definition at line 659 of file nanoflann.hpp.

◆ swap()

template<typename T, std::size_t N>
void nanoflann::CArray< T, N >::swap ( CArray< T, N > &  y)
inline

Definition at line 666 of file nanoflann.hpp.

References mrpt::containers::begin().

Here is the call graph for this function:

Member Data Documentation

◆ elems

template<typename T, std::size_t N>
T nanoflann::CArray< T, N >::elems[N]

Definition at line 609 of file nanoflann.hpp.




Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: 8fe78517f Sun Jul 14 19:43:28 2019 +0200 at lun oct 28 02:10:00 CET 2019