Public Member Functions | Protected Attributes
clipper::HKL_info::HKL_reference_coord Class Reference

HKL reference with coord-like behaviour. More...

#include <hkl_info.h>

Inheritance diagram for clipper::HKL_info::HKL_reference_coord:

List of all members.

Public Member Functions

 HKL_reference_coord ()
 Null constructor.
 HKL_reference_coord (const HKL_info &hklinfo_, const HKL &hkl)
 Constructor: takes parent HKL_info and initial HKL.
const HKLhkl () const
 return the current HKL
const int & sym () const
 get current symop number
const bool & friedel () const
 get current friedel flag
HKL_reference_coordset_hkl (const HKL &hkl__)
 assign from HKL
HKL_reference_coordnext ()
 increment to next reflection
HKL_reference_coordnext_h ()
 increment h
HKL_reference_coordnext_k ()
 increment k
HKL_reference_coordnext_l ()
 increment l
HKL_reference_coordprev_h ()
 decrement h
HKL_reference_coordprev_k ()
 decrement k
HKL_reference_coordprev_l ()
 decrement l
HKL_reference_coordoperator= (const HKL &hkl__)
 operator assign from HKL
const HKL_infobase_hkl_info () const
 return the parent HKL_info
const int & index () const
 return the current index (-1 if invalid)
const ftype invresolsq () const
 return the inv resol sq for the reflection (assumes index valid)
bool last () const
 test if index has gone past last reflection

Protected Attributes

HKL hkl_
int sym_
bool friedel_

Detailed Description

HKL reference with coord-like behaviour.

This is a reference to an HKL. It behaves like an HKL, but also stores the index of the corresponding reflection in the reflection list, if it exists, and the symmetry and friedel operators required to get there.

The following methods are inherited from HKL_reference_base but are documented here for convenience: base_hkl_info(), index(), invresolsq(), last().

Member Function Documentation

HKL_reference_coord& clipper::HKL_info::HKL_reference_coord::set_hkl ( const HKL hkl__) [inline]

assign from HKL

The new HKL must exist in the reflection list. The calculation is optimised for the case when the new HKL is near the old one.

References clipper::HKL_info::find_sym(), clipper::HKL_info::index_of(), clipper::HKL_info::isymop, and clipper::HKL::transform().

Referenced by next_h(), next_k(), next_l(), operator=(), prev_h(), prev_k(), and prev_l().

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