It is divided into two main sections, the first indexing information be theme, and the second providing useful links for performing specific tasks.
All crystallographic tasks depend upon the spacegroup and cell classes, so read their documentation. The cell class is clipper::Cell, and the spacegroup class is clipper::Spacegroup. You may want to look at their parent classes, Cell_descr, and clipper::Spgr_descr, which are used to initialise the classes if the information is not coming from a file.
If you are going to need to perform operations on coordinates, then you may want to look at the clipper::RTop_orth documentation. Its counterpart, clipper::RTop_frac is the base class of the symmetry operator clipper::Symop.
Often, the parent classes of a class also contain useful methods. For example, the coordinate classes are all derived from clipper::Vec3<T>, and the operators are derived from clipper::RTop<T>.
The clipper::Util class may contain some helpful utility functions. The clipper::String class is a trivial extension of the STL std::string. You can use either interchangeably.
The fundamental types which hold lists of HKL's and lists of associated reflection data (e.g. F's, phases, etc.) are clipper::HKL_info and clipper::HKL_data<T>.
clipper::HKL_data<T> is a template class which can be used to hold any kind of data. A range of common datatypes are provided which you can store in this object: Look at the derived classes of clipper::Datatype_base for a list. Alternatively, you can add your own.
Most common reflection data conversions have built in methods. Look at the clipper::HKL_data<T>::compute() method. For operators to use with it, look at the class listing for classes labelled clipper::datatypes::Compute_*.
Scaling of data is also built in. See clipper::ResolutionFn and the examples on that page, and the derived classes of clipper::BasisFn_base and clipper::TargetFn_base.
Crystallographic maps are handled by the clipper::Xmap<T> class. Calculation of FFT's to and from reciprocal space is build in to this class, as are interpolation methods. The clipper::Map_stats class provides tools for calculating map statistics.
Calculation of maps and masks from atomic coordinates is handled in the contrib package by the EDcalc- and MASKcalc- classes. Filtering of maps and calculation of masks is aided by the MapFilter- classes in the contrib package.
Non-crystallographic maps (i.e. maps with no symmetry or cell repeat) are handled by the clipper::NXmap<T> class. Non-crystallographic maps may be referred into a crystallographic frame using the clipper::NXoperator class.
The clipper::Atom and clipper::Atom_list classes provide basic support for atoms and lists of atoms, or you can use the more advanced MMDB or MiniMol packages.
To calculate structure factors, maps, or masks from a coordinate model, look at the SFcalc-, EDcalc-, and MASKcalc- classes in the contrib package.
Rotation-translation operators are handled by the derived classes of clipper::RTop<T>, i.e. clipper::RTop_orth and clipper::RTop_frac.
Data scaling and sigmaa estimation can be performed using the clipper::ResolutionFn class and its related classes.
Data scaling and sigmaa estimation can be performed using the clipper::ResolutionFn class and its related classes.