00001
00002
00003
00004
00005
00006
00007 #ifndef __PlayersLocator_h_
00008 #define __PlayersLocator_h_
00009
00010 #include "Tools/Module/Module.h"
00011
00012 #include "Representations/Perception/PlayersPercept.h"
00013 #include "Representations/Cognition/RobotPose.h"
00014 #include "Representations/Cognition/BallModel.h"
00015 #include "Representations/WLan/TeamMessageCollection.h"
00016 #include "Representations/Cognition/PlayerPoseCollection.h"
00017
00018 #include "Representations/Cognition/PassCorridorCollection.h"
00019 #include "Representations/Cognition/PlayersModel.h"
00020 #include "Representations/Cognition/GTCamWorldState.h"
00021 #include "Representations/Motion/OdometryData.h"
00022
00023
00024
00025
00026
00027
00028 class PlayersLocatorInterfaces
00029 {
00030 public:
00031
00032 PlayersLocatorInterfaces(
00033 const RobotPose& robotPose,
00034 const TeamMessageCollection& teamMessageCollection,
00035 const OdometryData& odometryData,
00036 const GTCamWorldState& gtCamWorldState,
00037
00038 const BallModel& ballModel,
00039 PlayersPercept& playersPercept,
00040 PlayerPoseCollection& playerPoseCollection,
00041 PassCorridorCollection& passCorridorCollection,
00042 PlayersModel& playersModel)
00043 : robotPose(robotPose),
00044 teamMessageCollection(teamMessageCollection),
00045 odometryData(odometryData),
00046 gtCamWorldState(gtCamWorldState),
00047
00048 ballModel(ballModel),
00049 playersPercept(playersPercept),
00050 playerPoseCollection(playerPoseCollection),
00051 passCorridorCollection(passCorridorCollection),
00052 playersModel(playersModel)
00053 {}
00054
00055
00056 protected:
00057
00058
00059 const RobotPose& robotPose;
00060
00061
00062 const TeamMessageCollection& teamMessageCollection;
00063
00064
00065 const OdometryData& odometryData;
00066
00067
00068
00069
00070
00071 const BallModel& ballModel;
00072
00073
00074 const GTCamWorldState& gtCamWorldState;
00075
00076
00077 PlayerPoseCollection& playerPoseCollection;
00078
00079
00080 PassCorridorCollection& passCorridorCollection;
00081
00082
00083 PlayersModel& playersModel;
00084
00085 PlayersPercept& playersPercept;
00086
00087 };
00088
00089
00090
00091
00092
00093
00094
00095
00096
00097
00098 class PlayersLocator : public Module, public PlayersLocatorInterfaces
00099 {
00100 public:
00101
00102
00103
00104
00105 PlayersLocator(const PlayersLocatorInterfaces& interfaces)
00106 : PlayersLocatorInterfaces(interfaces)
00107 {}
00108
00109
00110 virtual ~PlayersLocator() {}
00111 };
00112
00113 #endif //__PlayersLocator_h_