estar::flexgrid< value_t > Class Template Reference

#include <flexgrid.hpp>

List of all members.

template<typename value_t>
class estar::flexgrid< value_t >


Public Types

typedef flexgrid_traits< value_t > traits
typedef traits::line_t line_t
typedef traits::cell_iterator cell_iterator
typedef traits::const_cell_iterator const_cell_iterator
typedef traits::grid_t grid_t
typedef traits::line_iterator line_iterator
typedef traits::const_line_iterator const_line_iterator
typedef flexgrid_iterator<
value_t > 
iterator
typedef const_flexgrid_iterator<
value_t > 
const_iterator

Public Member Functions

value_t & at (ssize_t ix, ssize_t iy)
value_t const & at (ssize_t ix, ssize_t iy) const
void resize_xbegin (ssize_t xbegin, value_t const &value)
void resize_xbegin (ssize_t xbegin)
void resize_xend (ssize_t xend, value_t const &value)
void resize_xend (ssize_t xend)
void resize_x (ssize_t xbegin, ssize_t xend, value_t const &value)
void resize_x (ssize_t xbegin, ssize_t xend)
void resize_ybegin (ssize_t ybegin, value_t const &value)
 
Note:
Lots of copying if you're growing the range.

void resize_ybegin (ssize_t ybegin)
void resize_yend (ssize_t yend, value_t const &value)
 
Note:
Lots of copying if you're growing the range.

void resize_yend (ssize_t yend)
void resize_y (ssize_t ybegin, ssize_t yend, value_t const &value)
void resize_y (ssize_t ybegin, ssize_t yend)
void resize (ssize_t xbegin, ssize_t xend, ssize_t ybegin, ssize_t yend, value_t const &value)
 
Note:
Beware of parameter ordering, it is NOT like the coordinates of a bounding box.

void resize (ssize_t xbegin, ssize_t xend, ssize_t ybegin, ssize_t yend)
 
Note:
Beware of parameter ordering, it is NOT like the coordinates of a boudning box.

ssize_t xbegin () const
ssize_t xend () const
ssize_t ybegin () const
ssize_t yend () const
value_t & smart_at (ssize_t ix, ssize_t iy)
 Automatically resizes the flexgrid as required in order to yield a valid value_t reference.
line_iterator line_begin ()
const_line_iterator line_begin () const
line_iterator line_end ()
const_line_iterator line_end () const
iterator begin ()
const_iterator begin () const
iterator end ()
const_iterator end () const
bool valid (ssize_t ix, ssize_t iy) const
bool valid_range (ssize_t xbegin, ssize_t xend, ssize_t ybegin, ssize_t yend) const
bool valid_bbox (ssize_t x0, ssize_t y0, ssize_t x1, ssize_t y1) const

Protected Attributes

grid_t m_grid
line_t m_default

Friends

class flexgrid_iterator< value_t >

Member Typedef Documentation

template<typename value_t>
typedef flexgrid_traits<value_t> estar::flexgrid< value_t >::traits

template<typename value_t>
typedef traits::line_t estar::flexgrid< value_t >::line_t

template<typename value_t>
typedef traits::cell_iterator estar::flexgrid< value_t >::cell_iterator

template<typename value_t>
typedef traits::const_cell_iterator estar::flexgrid< value_t >::const_cell_iterator

template<typename value_t>
typedef traits::grid_t estar::flexgrid< value_t >::grid_t

template<typename value_t>
typedef traits::line_iterator estar::flexgrid< value_t >::line_iterator

template<typename value_t>
typedef traits::const_line_iterator estar::flexgrid< value_t >::const_line_iterator

template<typename value_t>
typedef flexgrid_iterator<value_t> estar::flexgrid< value_t >::iterator

template<typename value_t>
typedef const_flexgrid_iterator<value_t> estar::flexgrid< value_t >::const_iterator


Member Function Documentation

template<typename value_t>
value_t& estar::flexgrid< value_t >::at ( ssize_t  ix,
ssize_t  iy 
) [inline]

template<typename value_t>
value_t const& estar::flexgrid< value_t >::at ( ssize_t  ix,
ssize_t  iy 
) const [inline]

template<typename value_t>
void estar::flexgrid< value_t >::resize_xbegin ( ssize_t  xbegin,
value_t const &  value 
) [inline]

template<typename value_t>
void estar::flexgrid< value_t >::resize_xbegin ( ssize_t  xbegin  )  [inline]

template<typename value_t>
void estar::flexgrid< value_t >::resize_xend ( ssize_t  xend,
value_t const &  value 
) [inline]

template<typename value_t>
void estar::flexgrid< value_t >::resize_xend ( ssize_t  xend  )  [inline]

template<typename value_t>
void estar::flexgrid< value_t >::resize_x ( ssize_t  xbegin,
ssize_t  xend,
value_t const &  value 
) [inline]

template<typename value_t>
void estar::flexgrid< value_t >::resize_x ( ssize_t  xbegin,
ssize_t  xend 
) [inline]

template<typename value_t>
void estar::flexgrid< value_t >::resize_ybegin ( ssize_t  ybegin,
value_t const &  value 
) [inline]

Note:
Lots of copying if you're growing the range.

Prefer the version with implicit default value, it's gonna be faster.

template<typename value_t>
void estar::flexgrid< value_t >::resize_ybegin ( ssize_t  ybegin  )  [inline]

template<typename value_t>
void estar::flexgrid< value_t >::resize_yend ( ssize_t  yend,
value_t const &  value 
) [inline]

Note:
Lots of copying if you're growing the range.

Prefer the version with implicit default value, it's gonna be faster.

template<typename value_t>
void estar::flexgrid< value_t >::resize_yend ( ssize_t  yend  )  [inline]

template<typename value_t>
void estar::flexgrid< value_t >::resize_y ( ssize_t  ybegin,
ssize_t  yend,
value_t const &  value 
) [inline]

template<typename value_t>
void estar::flexgrid< value_t >::resize_y ( ssize_t  ybegin,
ssize_t  yend 
) [inline]

template<typename value_t>
void estar::flexgrid< value_t >::resize ( ssize_t  xbegin,
ssize_t  xend,
ssize_t  ybegin,
ssize_t  yend,
value_t const &  value 
) [inline]

Note:
Beware of parameter ordering, it is NOT like the coordinates of a bounding box.

template<typename value_t>
void estar::flexgrid< value_t >::resize ( ssize_t  xbegin,
ssize_t  xend,
ssize_t  ybegin,
ssize_t  yend 
) [inline]

Note:
Beware of parameter ordering, it is NOT like the coordinates of a boudning box.

template<typename value_t>
ssize_t estar::flexgrid< value_t >::xbegin (  )  const [inline]

template<typename value_t>
ssize_t estar::flexgrid< value_t >::xend (  )  const [inline]

template<typename value_t>
ssize_t estar::flexgrid< value_t >::ybegin (  )  const [inline]

template<typename value_t>
ssize_t estar::flexgrid< value_t >::yend (  )  const [inline]

template<typename value_t>
value_t& estar::flexgrid< value_t >::smart_at ( ssize_t  ix,
ssize_t  iy 
) [inline]

Automatically resizes the flexgrid as required in order to yield a valid value_t reference.

template<typename value_t>
line_iterator estar::flexgrid< value_t >::line_begin (  )  [inline]

template<typename value_t>
const_line_iterator estar::flexgrid< value_t >::line_begin (  )  const [inline]

template<typename value_t>
line_iterator estar::flexgrid< value_t >::line_end (  )  [inline]

template<typename value_t>
const_line_iterator estar::flexgrid< value_t >::line_end (  )  const [inline]

template<typename value_t>
iterator estar::flexgrid< value_t >::begin (  )  [inline]

template<typename value_t>
const_iterator estar::flexgrid< value_t >::begin (  )  const [inline]

template<typename value_t>
iterator estar::flexgrid< value_t >::end (  )  [inline]

template<typename value_t>
const_iterator estar::flexgrid< value_t >::end (  )  const [inline]

template<typename value_t>
bool estar::flexgrid< value_t >::valid ( ssize_t  ix,
ssize_t  iy 
) const [inline]

template<typename value_t>
bool estar::flexgrid< value_t >::valid_range ( ssize_t  xbegin,
ssize_t  xend,
ssize_t  ybegin,
ssize_t  yend 
) const [inline]

template<typename value_t>
bool estar::flexgrid< value_t >::valid_bbox ( ssize_t  x0,
ssize_t  y0,
ssize_t  x1,
ssize_t  y1 
) const [inline]


Friends And Related Function Documentation

template<typename value_t>
friend class flexgrid_iterator< value_t > [friend]


Member Data Documentation

template<typename value_t>
grid_t estar::flexgrid< value_t >::m_grid [protected]

template<typename value_t>
line_t estar::flexgrid< value_t >::m_default [protected]


The documentation for this class was generated from the following file:
doxygen SourceForge.net Logo
E* Interpolated Graph Replanner Wed Dec 12 18:55:50 2007