Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

# Modules/ColorTableMod/ColorTableMod.h

Go to the documentation of this file.

    00001 /**
    00002 * @file ColorTableMod.h
    00003 * Declaration of class ColorTableModInterfaces and ColorTableModInterfaces.
    00004 *
    00005 * @author <A href=mailto:walter.nistico@uni-dortmund.de>Walter Nistico</A>
    00006 */
    00007
    00008 #ifndef _ColorTableMod_h_
    00009 #define _ColorTableMod_h_
    00010
    00011 #include "Tools/Module/Module.h"
    00012 #include "Representations/Perception/ColorTable.h"
    00013
    00014 /**
    00015 * @class ColorTableModInterfaces
    00016 *
    00017 * The interface used by ColorTableMod ("Monsieur De Lapalisse" :)
    00018 */
    00019 class ColorTableModInterfaces
    00020 {
    00021 public:
    00022   /** Constructor */
    00023   ColorTableModInterfaces (ColorTable& colorTable)
    00024     : colorTable(&colorTable)
    00025   {}
    00026
    00027   /** Pointer to the colorTable accessed by image processors */
    00028   ColorTable* colorTable;
    00029 };
    00030
    00031
    00032 /**
    00033 * @class ColorTableMod
    00034 *
    00035 * Base class of color table modules, used to load and switch color tables at runtime
    00036 */
    00037 class ColorTableMod : public Module, public ColorTableModInterfaces
    00038 {
    00039 public:
    00040   /** Constructor */
    00041   ColorTableMod(const ColorTableModInterfaces& interfaces)
    00042     : ColorTableModInterfaces(interfaces)
    00043   {}
    00044
    00045   /** This function loads the colortable from storage and instantiates it*/
    00046   virtual void setup() = 0;
    00047
    00048   /** Destructor */
    00049   virtual ~ColorTableMod() {}
    00050
    00051 };
    00052
    00053 #endif   //  _ColorTableMod_h_