#ifndef NUMMAGNITUDEMAX_HH #define NUMMAGNITUDEMAX_HH //////////////////////////////////////////////////////////////////////////// //! author="Robert Crida" //! lib=NumMagnitude //! date="22/4/1998" //! userlevel=Normal //! example=testNumMagnitude.cc //! file="amma/PatternRec/FuncTools/Magnitude/NumMagnitudeMax.hh" //! docentry="Numerical Methods.Magnitude Metrics.Implementation" //! rcsid="$Id: NumMagnitudeMax.hh,v 1.5 2000/02/16 14:10:17 ees1cg Exp $" #include "amma/Num/NumMagnitude.hh" #include "amma/Num/NumMagnitudeMaxB.hh" //: Maximum element magnitude metric. // // Class for distance to a vector as maximum element. s=X_i, X_i>X_n all n!=i class NumMagnitudeMaxC : public NumMagnitudeC { public: NumMagnitudeMaxC () :NumMagnitudeC(*(new NumMagnitudeMaxBC ())) {} //: Constructor takes no parameters. NumMagnitudeMaxC (BooleanT) :NumMagnitudeC(*(new NumMagnitudeMaxBC ())) {} //: Constructor takes no parameters. static BooleanT IsA(const DPEntityC &pb) { return dynamic_cast(&pb.Body()) != 0; } //: Check if an object is of this type. NumMagnitudeMaxC(const DPProcessBaseC &pb) : NumMagnitudeC(pb) { if(!IsA(pb)) Invalidate(); } //: Base class constructor. }; #endif