template<class ArithT>
class NgbT
{
public:
    typedef HxNgbCnumTag        IteratorCategory;
    typedef HxNgb1PhaseTag      PhaseCategory;
    typedef HxNgbTransInVarTag  TransVarianceCategory;
    typedef HxCnum              CnumType;
                                NgbT(HxTagList& tags);
                                ~NgbT();
    HxSizes                     size();
    CnumType                    begin();
    CnumType                    end();
    void                        init(ArithT value);
    void                        next(int x, int y, ArithT value);
    ArithT                      result() const;
    static HxString             className();
};
The Requirements on CnumType expressed as a class definition are:
class CnumType
{
public:
                                CnumType();
                                CnumType(const CnumType& rhs);
    CnumType&                   operator=(const CnumType& rhs);
    int                         x();
    int                         y();
    int                         z();
    void                        inc();
    bool                        operator!=(const CnumType& rhs);
};
1.2.12 written by Dimitri van Heesch,
 © 1997-2001