Fawkes API Fawkes Development Version

handler.h

00001 
00002 /***************************************************************************
00003  *  handler.h - World Info Handler
00004  *
00005  *  Created: Sun Jan 14 18:07:04 2007
00006  *  Copyright  2006-2007  Tim Niemueller [www.niemueller.de]
00007  *
00008  ****************************************************************************/
00009 
00010 /*  This program is free software; you can redistribute it and/or modify
00011  *  it under the terms of the GNU General Public License as published by
00012  *  the Free Software Foundation; either version 2 of the License, or
00013  *  (at your option) any later version. A runtime exception applies to
00014  *  this software (see LICENSE.GPL_WRE file mentioned below for details).
00015  *
00016  *  This program is distributed in the hope that it will be useful,
00017  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00018  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00019  *  GNU Library General Public License for more details.
00020  *
00021  *  Read the full text in the LICENSE.GPL_WRE file in the doc directory.
00022  */
00023 
00024 #ifndef __NETCOMM_WORLDINFO_HANDLER_H_
00025 #define __NETCOMM_WORLDINFO_HANDLER_H_
00026 
00027 #include <netcomm/worldinfo/enums.h>
00028 
00029 namespace fawkes {
00030 
00031 class WorldInfoHandler
00032 {
00033  public:
00034   virtual ~WorldInfoHandler();
00035 
00036   virtual void pose_rcvd(const char *from_host,
00037                          float x, float y, float theta,
00038                          float *covariance)                                     = 0;
00039 
00040   virtual void velocity_rcvd(const char *from_host, float vel_x,
00041                              float vel_y, float vel_theta, float *covariance)   = 0;
00042 
00043   virtual void ball_pos_rcvd(const char *from_host,
00044                              bool visible, int visibility_history,
00045                              float dist,  float bearing, float slope,
00046                              float *covariance)                                 = 0;
00047 
00048   virtual void global_ball_pos_rcvd(const char *from_host,
00049                                     bool visible, int visibility_history,
00050                                     float x,  float y, float z,
00051                                     float *covariance)                          = 0;
00052 
00053   virtual void ball_velocity_rcvd(const char *from_host,
00054                                   float vel_x, float vel_y, float vel_z,
00055                                   float *covariance)                            = 0;
00056 
00057   virtual void global_ball_velocity_rcvd(const char *from_host,
00058                                          float vel_x, float vel_y, float vel_z,
00059                                          float *covariance)                     = 0;
00060 
00061   virtual void opponent_pose_rcvd(const char *from_host,
00062                                   unsigned int uid, float distance,
00063                                   float bearing,  float *covariance)            = 0;
00064 
00065   virtual void opponent_disapp_rcvd(const char *from_host, unsigned int uid)    = 0;
00066 
00067   virtual void gamestate_rcvd(const char *from_host,
00068                               unsigned int game_state,
00069                               worldinfo_gamestate_team_t state_team,
00070                               unsigned int score_cyan, unsigned int score_magenta,
00071                               worldinfo_gamestate_team_t our_team,
00072                               worldinfo_gamestate_goalcolor_t our_goal_color,
00073                               worldinfo_gamestate_half_t half)                  = 0;
00074 
00075   virtual void penalty_rcvd(const char *from_host,
00076                             unsigned int player, unsigned int penalty,
00077                             unsigned int seconds_remaining)                     = 0;
00078 
00079 };
00080 
00081 } // end namespace fawkes
00082 
00083 
00084 #endif
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends