Wifi.hh
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef WIFI_HH
00028 #define WIFI_HH
00029
00030 #define MAX_MODELS 10
00031
00032 #include "gazebo.h"
00033 #include "World.hh"
00034 #include "WorldFile.hh"
00035 #include "RayGeom.hh"
00036 #include "Sensor.hh"
00037
00038
00039 class Wifi : public Sensor
00040 {
00041
00042 public: Wifi( World *world );
00043 public: virtual ~Wifi();
00044
00045
00046 public: virtual int Load( WorldFile *file, WorldFileNode *node );
00047
00048
00049 public: virtual int Init( WorldFile *file, WorldFileNode *node );
00050
00051
00052 public: virtual int Fini();
00053
00054
00055 public: virtual void Update( double step );
00056
00057
00058 public: virtual Body *GetBody() {return NULL;}
00059
00060
00061 private: int IfaceInit();
00062
00063
00064 private: int IfaceFini();
00065
00066
00067 private: bool IfaceGetCmd(GzVector *pos, GzQuatern *rot);
00068
00069
00070 private: void IfacePutData();
00071 private: int RayInit();
00072 private: static void UpdateCallback( void *data, dGeomID o1, dGeomID o2 );
00073 private: bool first_run;
00074 private: int totalnodes;
00075
00076
00077 private: RayGeom *ray,*ray1;
00078
00079
00080 private: dSpaceID superSpaceId;
00081 private: dSpaceID raySpaceId;
00082 private: WorldModel wifi_models[MAX_MODELS];
00083
00084
00085 private: const char *id;
00086 private: gz_wifi_t *wifi_iface;
00087 private: gz_wifi_link_t links[GAZEBO_WIFI_MAX_LINKS];
00088
00089 private: int link_count;
00090 private: const char *ip;
00091 private: double m;
00092
00093
00094 };
00095
00096
00097 #endif
Last updated 12 September 2005 21:38:45
|