IMP logo
Public Types | Public Member Functions
IMP::algebra::SparseUnboundedGridD< D, VT > Struct Template Reference

Detailed Description

template<int D, class VT>
struct IMP::algebra::SparseUnboundedGridD< D, VT >

A sparse, infinite grid of values. In python SparseUnboundedIntGrid3D is provided.

+ Inheritance diagram for IMP::algebra::SparseUnboundedGridD< D, VT >:

List of all members.

Public Types

typedef GridD< D,
SparseGridStorageD< D, VT,
UnboundedGridRangeD< D > >, VT,
DefaultEmbeddingD< D > > 
P
- Public Types inherited from IMP::algebra::GridD< D, SparseGridStorageD< D, VT, UnboundedGridRangeD< D > >, VT, DefaultEmbeddingD< D > >
typedef DefaultEmbeddingD< D > Embedding
typedef VectorD< D > Vector
- Public Types inherited from IMP::algebra::SparseGridStorageD< D, VT, UnboundedGridRangeD< D > >
typedef VT Value
typedef Data::const_iterator AllConstIterator
- Public Types inherited from IMP::algebra::UnboundedGridRangeD< D >
typedef ExtendedGridIndexD< D > ExtendedIndex
typedef GridIndexD< D > Index

Public Member Functions

 SparseUnboundedGridD (double side, const VectorD< D > &origin, VT def=VT())
 SparseUnboundedGridD (double side, unsigned int d, const VT &def=VT())
- Public Member Functions inherited from IMP::algebra::GridD< D, SparseGridStorageD< D, VT, UnboundedGridRangeD< D > >, VT, DefaultEmbeddingD< D > >
 GridD (const Ints counts, const BoundingBoxD< D > &bb, VTdefault_value=VT())
 GridD (double side, const BoundingBoxD< D > &bb, const VT &default_value=VT())
 GridD (const SparseGridStorageD< D, VT, UnboundedGridRangeD< D > > &storage, const Embedding &embed)
 GridD (double side, const VectorD< D > &origin, const VT &default_value=VT())
 GridD ()
 An empty, undefined grid.
GridIndexD< D > add_voxel (const VectorD< D > &pt, const VT &vt)
BoundingBoxD< D > get_bounding_box () const
ExtendedGridIndexD< D > get_extended_index (const GridIndexD< D > &index) const
 Convert an index back to an extended index.
VT & operator[] (VectorD< D >)
const VT operator[] (VectorD< D >) const
void set_bounding_box (const BoundingBoxD< D > &bb3)
 Change the bounding box but not the grid or contents.
GridIndexD< D > get_nearest_index (const VectorD< D > &pt) const
ExtendedGridIndexD< D > get_nearest_extended_index (const VectorD< D > &pt) const
VoxelIterator voxels_begin (const BoundingBoxD< D > &bb)
VoxelConstIterator voxels_begin (const BoundingBoxD< D > &bb) const
VoxelIterator voxels_end (const BoundingBoxD< D > &bb)
VoxelConstIterator voxels_end (const BoundingBoxD< D > &bb) const
SparseGridStorageD< D, VT,
UnboundedGridRangeD< D >
>::IndexIterator 
indexes_begin (const BoundingBoxD< D > &bb) const
SparseGridStorageD< D, VT,
UnboundedGridRangeD< D >
>::IndexIterator 
indexes_end (const BoundingBoxD< D > &) const
Functor apply (const Functor &f) const
- Public Member Functions inherited from IMP::algebra::SparseGridStorageD< D, VT, UnboundedGridRangeD< D > >
 SparseGridStorageD (const Ints &counts, const VT &default_value)
GridIndexD< D > add_voxel (const ExtendedGridIndexD< D > &i, const VT &gi)
 Add a voxel to the storage, this voxel will now have a GridIndex3D.
Functor apply (const Grid &g, Functor f) const
bool get_has_index (const ExtendedGridIndexD< D > &i) const
 Return true if the voxel has been added.
GridIndexD< D > get_index (const ExtendedGridIndexD< D > &i) const
 requires get_has_index(i) is true.
ExtendedGridIndexD< D > get_maximum_extended_index () const
 Return the index that has no higher index in each coordinate.
ExtendedGridIndexD< D > get_minimum_extended_index () const
 Return the index which has no lower index in each coordinate.
unsigned int get_number_of_voxels () const
void remove_voxel (const GridIndexD< D > gi)
void show (std::ostream &out=std::cout) const
AllConstIterator all_begin () const
AllConstIterator all_end () const
base::Vector< GridIndexD< D > > get_all_indexes () const
const VT operator[] (GridIndexD< D >) const
VT & operator[] (GridIndexD< D >)
IndexIterator indexes_begin (const ExtendedGridIndexD< D > &lb, const ExtendedGridIndexD< D > &ub) const
IndexIterator indexes_end (const ExtendedGridIndexD< D > &, const ExtendedGridIndexD< D > &) const
base::Vector< GridIndexD< D > > get_indexes (const ExtendedGridIndexD< D > &lb, const ExtendedGridIndexD< D > &ub) const
- Public Member Functions inherited from IMP::algebra::UnboundedGridRangeD< D >
ExtendedIndexIterator extended_indexes_begin (const ExtendedGridIndexD< D > &lb, const ExtendedGridIndexD< D > &ub) const
ExtendedIndexIterator extended_indexes_end (const ExtendedGridIndexD< D > &, const ExtendedGridIndexD< D > &) const
base::Vector
< ExtendedGridIndexD< D > > 
get_extended_indexes (const ExtendedGridIndexD< D > &lb, const ExtendedGridIndexD< D > &ub) const
- Public Member Functions inherited from IMP::algebra::DefaultEmbeddingD< D >
 DefaultEmbeddingD (const VectorD< D > &origin, const VectorD< D > &cell)
unsigned int get_dimension () const
ExtendedGridIndexD< D > get_extended_index (const VectorD< D > &o) const
 Return the index that would contain the voxel if the grid extended there.
GridIndexD< D > get_index (const VectorD< D > &o) const
const VectorD< D > get_origin () const
const VectorD< D > & get_unit_cell () const
 Return the unit cell, relative to the origin.
void set_origin (const VectorD< D > &o)
void set_unit_cell (const VectorD< D > &o)
void show (std::ostream &out=std::cout) const
VectorD< D > get_center (const ExtendedGridIndexD< D > &ei) const
VectorD< D > get_center (const GridIndexD< D > &ei) const
BoundingBoxD< D > get_bounding_box (const ExtendedGridIndexD< D > &ei) const
BoundingBoxD< D > get_bounding_box (const GridIndexD< D > &ei) const

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

Generated on Tue May 22 2012 23:33:25 for IMP by doxygen 1.8.1