Clipper
Public Member Functions | Protected Member Functions | Protected Attributes
clipper::Xmap_base::Map_reference_coord Class Reference

Map reference with coordinate-like behaviour. More...

#include <xmap.h>

Inheritance diagram for clipper::Xmap_base::Map_reference_coord:
clipper::Xmap_base::Map_reference_base

List of all members.

Public Member Functions

 Map_reference_coord ()
 Null constructor.
 Map_reference_coord (const Xmap_base &map)
 Constructor: takes parent map.
 Map_reference_coord (const Xmap_base &map, const Coord_grid &pos)
 Constructor: takes parent map and coord.
const Coord_gridcoord () const
 Get current value of coordinate.
const Coord_orth coord_orth () const
 Get current value of orthogonal coordinate.
const int & sym () const
 Get current symmetry operator.
Map_reference_coordset_coord (const Coord_grid &pos)
 Set current value of coordinate - optimised for nearby coords.
Map_reference_coordnext ()
 Simple increment.
Map_reference_coordnext_u ()
 increment u
Map_reference_coordnext_v ()
 increment v
Map_reference_coordnext_w ()
 increment w
Map_reference_coordprev_u ()
 increment u
Map_reference_coordprev_v ()
 decrement v
Map_reference_coordprev_w ()
 decrement w
Map_reference_coordoperator= (const Coord_grid &pos)
 Assignment operator from a coord.
const Xmap_basebase_xmap () const
 return the parent Xmap
const int & index () const
 Get the index into the map data array.
bool last () const
 Check for end of map.

Protected Member Functions

void edge ()
 Reset index for a different symop when we hit the map border.

Protected Attributes

int sym_
 Current symop.
Coord_grid pos_
 Current coord.

Detailed Description

Map reference with coordinate-like behaviour.

This is a reference to a map coordinate. It behaves like a coordinate, but also stores the index of the corresponding point in the map, and the symmetry operator required to get there. It also implements methods for iterating through the a map. Since the current coordinate and symmetry are stored, coord() is fast. However, it requires 1 pointer and 5 words of storage.

Note:
The following methods are inherited from Map_reference_base but are documented here for convenience: base_xmap(), index(), last().

Member Function Documentation

Map_reference_coord& clipper::Xmap_base::Map_reference_coord::next ( ) [inline]

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