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

Modules/ObstaclesLocator/ObstaclesLocator.h

Go to the documentation of this file.
00001 /**
00002 * @file ObstaclesLocator.h
00003 * 
00004 * This file contains a generic class for Obstacles Localization.
00005 * @author <a href="mailto:juengel@informatik.hu-berlin.de">Matthias Juengel</a>
00006 */
00007 
00008 #ifndef __ObstaclesLocator_h_
00009 #define __ObstaclesLocator_h_
00010 
00011 #include "Tools/Module/Module.h"
00012 
00013 #include "Representations/Perception/ObstaclesPercept.h"
00014 #include "Representations/Perception/LinesPercept.h"
00015 #include "Representations/Perception/PSDPercept.h"
00016 #include "Representations/Perception/CameraMatrix.h"
00017 #include "Representations/Cognition/ObstaclesModel.h"
00018 #include "Representations/Cognition/PlayerPoseCollection.h"
00019 #include "Representations/Cognition/RobotPose.h"
00020 #include "Representations/Cognition/BallModel.h"
00021 #include "Representations/Motion/OdometryData.h"
00022 
00023 /**
00024 * @class ObstaclesLocatorInterfaces
00025 * 
00026 * The interfaces of the ObstaclesLocator module.
00027 */
00028 class ObstaclesLocatorInterfaces
00029 {
00030 public:
00031   /** Constructor.*/
00032   ObstaclesLocatorInterfaces(
00033     const ObstaclesPercept& obstaclesPercept,
00034     const LinesPercept& linesPercept,
00035     const PSDPercept& psdPercept,
00036     const CameraMatrix& cameraMatrix,
00037     const OdometryData& odometryData,
00038     const PlayerPoseCollection& playerPoseCollection,
00039     const RobotPose& robotPose,
00040     const BallModel& ballModel,
00041     ObstaclesModel& obstaclesModel)
00042     : obstaclesPercept(obstaclesPercept),
00043     linesPercept(linesPercept),
00044     psdPercept(psdPercept),
00045     cameraMatrix(cameraMatrix),
00046     odometryData(odometryData),
00047     playerPoseCollection(playerPoseCollection),
00048     robotPose(robotPose),
00049     ballModel(ballModel),
00050     obstaclesModel(obstaclesModel)
00051   {}
00052   
00053 protected:
00054   /** A detected player */
00055   const ObstaclesPercept& obstaclesPercept;
00056 
00057   /** A lines percept */
00058   const LinesPercept& linesPercept;
00059 
00060   /** An object detected with the PSD sensor */
00061   const PSDPercept& psdPercept;
00062   
00063   /** A detected player */
00064   const CameraMatrix& cameraMatrix;
00065   
00066   /** The odometry data that was calculated by the motion modules */
00067   const OdometryData& odometryData;
00068 
00069   /** The poses of the other players */
00070   const PlayerPoseCollection& playerPoseCollection;
00071   
00072   /** The pose of the robot */
00073   const RobotPose& robotPose;
00074 
00075   /** The pose of the robot */
00076   const BallModel& ballModel;
00077 
00078   /** The obstacle model to be calculated */
00079   ObstaclesModel& obstaclesModel;
00080 
00081 };
00082 
00083 /**
00084 * @class ObstaclesLocator 
00085 *
00086 * The Base class for obstacle locators
00087 *
00088 */
00089 class ObstaclesLocator : public Module, public ObstaclesLocatorInterfaces
00090 {
00091 public:
00092 /*
00093 * Constructor.
00094 * @param interfaces The paramters of the ObstaclesLocator module.
00095   */
00096   ObstaclesLocator(const ObstaclesLocatorInterfaces& interfaces)
00097     : ObstaclesLocatorInterfaces(interfaces)
00098   {}
00099   
00100   /** Destructor */
00101   virtual ~ObstaclesLocator() {}
00102 };
00103 
00104 #endif //__ObstaclesLocator_h_
00105 
00106 /*
00107  * Change log :
00108  * 
00109  * $Log: ObstaclesLocator.h,v $
00110  * Revision 1.2  2004/05/22 22:52:02  juengel
00111  * Renamed ballP_osition to ballModel.
00112  *
00113  * Revision 1.1.1.1  2004/05/22 17:20:38  cvsadm
00114  * created new repository GT2004_WM
00115  *
00116  * Revision 1.3  2004/03/08 01:39:04  roefer
00117  * Interfaces should be const
00118  *
00119  * Revision 1.2  2004/02/03 13:19:49  spranger
00120  * renamed all references to  class BallP_osition to BallModel
00121  *
00122  * Revision 1.1  2003/10/06 14:10:14  cvsadm
00123  * Created GT2004 (M.J.)
00124  *
00125  * Revision 1.2  2003/09/26 15:27:49  juengel
00126  * Renamed DataTypes to representations.
00127  *
00128  * Revision 1.1.1.1  2003/07/02 09:40:24  cvsadm
00129  * created new repository for the competitions in Padova from the 
00130  * tamara CVS (Tuesday 2:00 pm)
00131  *
00132  * removed unused solutions
00133  *
00134  * Revision 1.6  2003/06/18 13:57:46  juengel
00135  * Added ballP_osition to ObstaclesLocatorInterfaces.
00136  *
00137  * Revision 1.5  2003/05/26 08:29:13  juengel
00138  * Added PlayerPoseCollection and RobotPose to ObstaclesLocatorInterfaces
00139  *
00140  * Revision 1.4  2003/04/06 15:05:42  loetzsch
00141  * Matthias added LinesPercept to ObstaclesLocatorInterfaces
00142  *
00143  * Revision 1.3  2003/03/22 16:52:36  juengel
00144  * Added PSDPercept.
00145  *
00146  * Revision 1.2  2003/03/15 13:24:30  juengel
00147  * Added CameraMatrix to ObstaclesLocatorInterfaces
00148  *
00149  * Revision 1.1  2003/03/10 13:53:59  juengel
00150  * ObstaclesLocator
00151  *
00152  */

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