00001
00002
00003
00004
00005
00006
00007
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
00024
00025
00026
00027 class SpecialVisionInterfaces
00028 {
00029 public:
00030
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
00047 const Image& image;
00048
00049
00050 const SpecialVisionRequest& specialVisionRequest;
00051
00052
00053 const ColorTable& colorTable;
00054
00055
00056 const RobotPose& robotPose;
00057
00058
00059 SpecialPercept& specialPercept;
00060
00061
00062 Sensors& sensors;
00063 };
00064
00065
00066
00067
00068
00069
00070
00071 class SpecialVision : public Module, public SpecialVisionInterfaces
00072 {
00073 public:
00074
00075
00076
00077
00078 SpecialVision(const SpecialVisionInterfaces& interfaces)
00079 : SpecialVisionInterfaces(interfaces)
00080 {}
00081
00082
00083 virtual ~SpecialVision() {}
00084 };
00085
00086 #endif // __SpecialVision_h_