Main Page   Class Overview   Pixels   Images   Geometry   Quick Index  

Image functors

In general, a functor is a function wrapped in an object. An image functor refers to an object that is used to make the user-specified functional part of a pattern do what the user wants it to do.

Image functors are collected in the HxImgFtorTable. In general, functors are inserted in the table via declaration of a static variable that instantiates a leaf node image functor from the tree below for a specific image type. More accurately, the constructor of HxImgFunctor inserts itself in the table.

In general, functors are retrieved in the HxImageData member functions via HxImgFtorTableTem. The template class provides statically typed access to HxImgFtorTable. The HxImageData member functions access the table at the first level below the root of the tree below, i.e. HxImgFtorI1, HxImgFtorI2, etc.

Most important classes:

HxImgFunctor, HxImgFtorTableTem, HxImgFtorKey, HxImgFtorDescription, HxImgFtorRuleBase, HxImgFtorTable, HxImgFtorKeyNameTable,

The image functor tree

The tree has four levels:

  1. The root level : HxImgFunctor (for insertion and retrieval from the table)
  2. The "I-nary" level : I1 stands for "taking 1 image parameter", etc.
  3. The "cast" level : the highest template level for static casting of the image data pointers.
  4. The "real functor" level : the leaf nodes are the actual functors that introduce additional, pattern specific template parameters

Generated on Tue Jan 8 13:59:38 2002 for C++Reference by doxygen1.2.12 written by Dimitri van Heesch, © 1997-2001