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

Modules/SpecialVision/SpecialVision.h

Go to the documentation of this file.
00001 /** 
00002 * @file SpecialVision.h
00003 * 
00004 * Definition of class SpecialVision
00005 *
00006 * @author <A href=mailto:juengel@informatik.hu-berlin.de>Matthias Juengel</A>
00007 * @author Martin Lötzsch
00008 */
00009 
00010 #ifndef __SpecialVision_h_
00011 #define __SpecialVision_h_
00012 
00013 #include "Tools/Module/Module.h"
00014 
00015 #include "Representations/Perception/Image.h"
00016 #include "Representations/Perception/SpecialPercept.h"
00017 #include "Representations/Perception/SpecialVisionRequest.h"
00018 #include "Representations/Perception/ColorTable.h"
00019 #include "Platform/Sensors.h"
00020 #include "Representations/Cognition/RobotPose.h"
00021 
00022 /** 
00023 * @class SpecialVisionInterfaces
00024 * 
00025 * The interfaces of the module SpecialVision
00026 */
00027 class SpecialVisionInterfaces
00028 {
00029 public:
00030   /** Constructor */
00031   SpecialVisionInterfaces(const Image& image, 
00032     const SpecialVisionRequest& specialVisionRequest,
00033     const ColorTable& colorTable,
00034     const RobotPose& robotPose,
00035     SpecialPercept& specialPercept,
00036     Sensors& sensors)
00037     : 
00038     image(image),
00039     specialVisionRequest(specialVisionRequest),
00040     colorTable(colorTable),
00041     robotPose(robotPose),
00042     specialPercept(specialPercept),
00043     sensors(sensors)
00044   {}
00045 protected:
00046   /** The image to be processed */
00047   const Image& image;
00048   
00049   /** A request from the behavior what to do */
00050   const SpecialVisionRequest& specialVisionRequest;
00051   
00052   /** A colortable ptr that can be used */
00053   const ColorTable& colorTable;
00054 
00055   /** A Robot-Pose that can be uses */
00056   const RobotPose& robotPose;
00057 
00058   /** The special percept to be generated */
00059   SpecialPercept& specialPercept;
00060 
00061   /** The sensors class (it's the cognition process itself, believe it or not !) */
00062   Sensors& sensors;
00063 };
00064 
00065 
00066 /**
00067 * @class SpecialVision
00068 *
00069 * The base class for special vision modules 
00070 */
00071 class SpecialVision : public Module, public SpecialVisionInterfaces
00072 {
00073 public:
00074 /** 
00075 * Constructor
00076 * @param interfaces The interfaces of the SpecialVision module 
00077   */
00078   SpecialVision(const SpecialVisionInterfaces& interfaces)
00079     : SpecialVisionInterfaces(interfaces)
00080   {}
00081   
00082   /** Destructor */
00083   virtual ~SpecialVision() {}
00084 };
00085 
00086 #endif // __SpecialVision_h_
00087 
00088 /*
00089 * Change log :
00090 * 
00091 * $Log: SpecialVision.h,v $
00092 * Revision 1.4  2004/06/28 12:07:05  kerdels
00093 * added a Special Vision AutoShutter...
00094 *
00095 * Revision 1.3  2004/06/28 12:01:34  kerdels
00096 * added a Special Vision AutoShutter...
00097 *
00098 * Revision 1.2  2004/06/28 11:54:56  wachter
00099 * Added Special-Vision classes for Challenge
00100 *
00101 * Revision 1.1.1.1  2004/05/22 17:22:25  cvsadm
00102 * created new repository GT2004_WM
00103 *
00104 * Revision 1.2  2004/03/08 02:11:53  roefer
00105 * Interfaces should be const
00106 *
00107 * Revision 1.1  2003/10/06 14:10:13  cvsadm
00108 * Created GT2004 (M.J.)
00109 *
00110 * Revision 1.2  2003/09/26 15:27:48  juengel
00111 * Renamed DataTypes to representations.
00112 *
00113 * Revision 1.1.1.1  2003/07/02 09:40:24  cvsadm
00114 * created new repository for the competitions in Padova from the 
00115 * tamara CVS (Tuesday 2:00 pm)
00116 *
00117 * removed unused solutions
00118 *
00119 * Revision 1.5  2003/02/21 18:32:04  roefer
00120 * pColorTable -> colorTable finished
00121 *
00122 * Revision 1.4  2003/02/18 21:29:17  osterhues
00123 * Changed all instances of ColorTable64 to new base class ColorTable
00124 *
00125 * Revision 1.3  2002/11/19 15:43:03  dueffert
00126 * doxygen comments corrected
00127 *
00128 * Revision 1.2  2002/09/17 23:55:22  loetzsch
00129 * - unraveled several datatypes
00130 * - changed the WATCH macro
00131 * - completed the process restructuring
00132 *
00133 * Revision 1.1  2002/09/10 15:36:16  cvsadm
00134 * Created new project GT2003 (M.L.)
00135 * - Cleaned up the /Src/DataTypes directory
00136 * - Removed challenge related source code
00137 * - Removed processing of incoming audio data
00138 * - Renamed AcousticMessage to SoundRequest
00139 *
00140 * Revision 1.3  2002/07/23 13:33:40  loetzsch
00141 * new streaming classes
00142 *
00143 * removed many #include statements
00144 *
00145 * Revision 1.2  2002/06/02 23:21:09  roefer
00146 * Single color table and progress in LinesSelfLocator
00147 *
00148 * Revision 1.1  2002/05/10 17:40:26  juengel
00149 * Added SpecialVision and SpecialPercept.
00150 *
00151 */

Generated on Thu Sep 23 19:57:32 2004 for GT2004 by doxygen 1.3.6