|
Developer Documentation |
|
Centre for Vision, Speech & Signal Processing |
Comments:
Base handle class for multidimensional functions of form Y=f(X) where Y
and X are both vectors. Ass with all other classes in this hierarchy, it
can be constructed from a stream (a previously save derived object), from
another NumFuncC & (copy constructor) or from a reference to a derived
implementation class.
Base class in the PatternRec hierarchy for handling all numerical
functions through a common interface. Several derived classes fit different
pattern recognition tasks to this format, eg model fitting, classification
and cost functions for optimisation.
The advantage of using algorithms that are derived from NumFuncC is that
they can be used in conjunction with the other tools in the PatternRec
toolbox, eg for optimisation since the cost functions, magnitude
estimators and optimisers are already implemeted.
Parent Classes:
Derived Classes:
Methods:
- NumFuncC()
-
Default constructor
Creates an invalid handle.
- NumFuncC(istream & in)
-
Constructs from stream
- NumFuncC(const NumFuncC & oth)
-
Copy constructor
- NumFuncC(NumFuncBC & oth)
-
Body Constructor.
- BooleanT IsA(const DPEntityC & pb)
-
Check if an object is a NumFuncC.
- NumFuncC(const DPProcessBaseC & pb)
-
- NumFuncC Copy() const
-
Makes a deep copy
- NumFuncC & operator=(const NumFuncC & oth)
-
Assignment operator
- VectorC Evaluate(const VectorC & X) const
-
Evaluates function Y=f(X)
- DListC<VectorC> Evaluate(const DListC<VectorC> & listX) const
-
Evaluates function Y=f(X) for a list of X
- VectorC operator()(const VectorC & X) const
-
Evaluates function Y=f(X)
- MatrixC Jacobian(const VectorC & X) const
-
Evaluates Jacobian df(X)/dX
Note that this is not const=0 since the base class will calculate a
numerical estimate of the Jacobian using differences if the member
function is not overloaded in derived classes to provide an analytical
solution.
- const StringC GetInfo() const
-
Gets string describing object
- const StringC GetName() const
-
Gets type name of the object
- UIntT SizeX() const
-
Input vector dimension
- UIntT SizeY() const
-
Output vector dimension
- BooleanT Save(ostream & out) const
-
Writes object to stream, cna be loaded using constructor
- NumFuncBC & Body()
-
Access body.
- const NumFuncBC & Body() const
-
Access body.
- DPProcessBodyC<VectorC,VectorC> & Body()
-
Access body.
- const DPProcessBodyC<VectorC,VectorC> & Body() const
-
Access body.
- VectorC Apply(const VectorC & dat)
-
Apply operation.
NB. This may become constant in the future, but the situation isn't
clear at the moment.
- IntT ApplyArray(const SArray1dC<VectorC> & in,SArray1dC<VectorC> & out)
-
Streaming version.
- const DPProcessC<VectorC,VectorC> operator=(const DPProcessC<VectorC,VectorC> & in)
-
Assignment operator
- const DPProcessC<VectorC,VectorC> Copy() const
-
Make a copy of this process. Some type defs.
- DPProcessBaseBodyC & Body()
-
Access body.
- const DPProcessBaseBodyC & Body() const
-
Access body.
- const type_info & InputType() const
-
Get input type.
- const type_info & OutputType() const
-
Get input type.
- BooleanT IsStateless() const
-
Is operation stateless ?
- DPProcessBaseBodyC::ProcTypeT OpType() const
-
Operation type lossy/lossless.
- const DPProcessBaseC & operator=(const DPProcessBaseC & oth)
-
Assignment operator.
- const DPEntityC & operator=(const DPEntityC & dat)
-
Assignment.
- DPEntityBodyC & Body()
-
Access body.
- const DPEntityBodyC & Body() const
-
Access body.
- BooleanT Save(ostream & out) const
-
- RCAbstractC Abstract()
-
Create an abstract handle to this object.
- BooleanT IsHandleType(const DT &) const
-
Is handle of given type ?
- void CheckHandleType(const DT & dummy) const
-
Check handle type. Throw an expception if not.
- BooleanT Save(ostream & out) const
-
Save to ostream.
- RCHandleAC<DPEntityBodyC> Copy() const
-
Creat a deep copy of this object.
protected:
- BooleanT IsValid() const
-
Check its a valid handle.
- BooleanT IsValidObject() const
-
Check its a valid handle, and that the object is pointed to is also valid.
- RCHandleC<DPEntityBodyC> & operator=(const RCHandleC<DPEntityBodyC> & oth)
-
Assignment.
- BooleanT operator==(const RCHandleC<DPEntityBodyC> & oth) const
-
Comparison operator.
- BooleanT operator!=(const RCHandleC<DPEntityBodyC> & oth) const
-
Comparison operator.
- UIntT Hash() const
-
Hash function.x
- BooleanT IsConst() const
-
Is object constant ?
- BooleanT IsNotConst() const
-
Is object not constant ?
- void SetConst(void) const
-
Lock the object.
This is const as a convience though it actual modified the
object, often object you wish to ensure are constant already
have const set.
protected:
- void Invalidate()
-
Turn this into an invalid handle.
- DPEntityBodyC & Body()
-
Direct access to body.
- const DPEntityBodyC & Body() const
-
Constant access to body.
|
Programmer:Robert Crida, Documentation by CxxDoc: Tue Mar 20 10:49:27 2001
|