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

Modules/TeamBallLocator/TeamBallLocator.h

Go to the documentation of this file.
00001 /**
00002 * @file TeamBallLocator.h
00003 * 
00004 * Interfaces and definition of class TeamBallLocator.
00005 *
00006 * @author Martin Lötzsch
00007 */
00008 
00009 #ifndef __TeamBallLocator_h_
00010 #define __TeamBallLocator_h_
00011 
00012 #include "Tools/Module/Module.h"
00013 
00014 #include "Representations/Cognition/BallModel.h"
00015 #include "Representations/Cognition/RobotPose.h"
00016 #include "Representations/WLan/TeamMessageCollection.h"
00017 #include "Representations/Motion/OdometryData.h"
00018 
00019 /**
00020 * @class TeamBallLocatorInterfaces
00021 * 
00022 * The interfaces of the TeamBallLocator module.
00023 */
00024 class TeamBallLocatorInterfaces
00025 {
00026 public:
00027   /** Constructor.*/
00028   TeamBallLocatorInterfaces(
00029     const SeenBallPosition& seenBallPosition,
00030     const OdometryData& odometryData,
00031     const RobotPose& robotPose,
00032     const TeamMessageCollection& teamMessageCollection,
00033     CommunicatedBallPosition& communicatedBallPosition)
00034     : 
00035   seenBallPosition(seenBallPosition),
00036     odometryData(odometryData),
00037     robotPose(robotPose),
00038     teamMessageCollection(teamMessageCollection),
00039     communicatedBallPosition(communicatedBallPosition)
00040   {}
00041   
00042   /** The position of the seen ball */
00043   const SeenBallPosition& seenBallPosition;
00044 
00045   /** The odometry data provided by the motion modules */
00046   const OdometryData& odometryData;
00047   
00048   /** The robots position that was calculated last */
00049   const RobotPose& robotPose;
00050   
00051   /** Incoming team messages from other robots */ 
00052   const TeamMessageCollection& teamMessageCollection;
00053   
00054   /** The communicated ball position to be calculated by the module */
00055   CommunicatedBallPosition& communicatedBallPosition;
00056 };
00057 
00058 /**
00059 * @class TeamBallLocator 
00060 *
00061 * The Base class for team ball locators
00062 *
00063 * It's task is to integrate ball measurements made by teammates.
00064 */
00065 class TeamBallLocator : public Module, public TeamBallLocatorInterfaces
00066 {
00067 public:
00068 /*
00069 * Constructor.
00070 * @param interfaces The paramters of the TeamBallLocator module.
00071   */
00072   TeamBallLocator(const TeamBallLocatorInterfaces& interfaces)
00073     : TeamBallLocatorInterfaces(interfaces)
00074   {}
00075   
00076   /** Destructor */
00077   virtual ~TeamBallLocator() {}
00078 };
00079 
00080 #endif //__TeamBallLocator_h_
00081 
00082 /*
00083 * Change log :
00084 * 
00085 * $Log: TeamBallLocator.h,v $
00086 * Revision 1.1.1.1  2004/05/22 17:22:26  cvsadm
00087 * created new repository GT2004_WM
00088 *
00089 * Revision 1.3  2004/03/08 02:11:54  roefer
00090 * Interfaces should be const
00091 *
00092 * Revision 1.2  2004/02/03 13:19:50  spranger
00093 * renamed all references to  class BallPosition to BallModel
00094 *
00095 * Revision 1.1  2003/10/06 14:10:14  cvsadm
00096 * Created GT2004 (M.J.)
00097 *
00098 * Revision 1.2  2003/09/26 15:27:49  juengel
00099 * Renamed DataTypes to representations.
00100 *
00101 * Revision 1.1.1.1  2003/07/02 09:40:24  cvsadm
00102 * created new repository for the competitions in Padova from the 
00103 * tamara CVS (Tuesday 2:00 pm)
00104 *
00105 * removed unused solutions
00106 *
00107 * Revision 1.1  2003/05/01 17:09:08  loetzsch
00108 * Redesign of ball modeling:
00109 * - Modularized class BallPosition
00110 * - splitted up module "BallLocator" into "BallLocator" for modeling of percepts
00111 *   and "TeamBallLocator" for modelling communicated positions
00112 * - Removed solution JumpingBallLocator
00113 * - Splitted Solution DefaultBallLocator into DefaultBallLocator and DefaultTeamBallLocator
00114 * - Renamed SensorFusionBallLocator to GaussBellTeamBallLocator
00115 *
00116 */

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