#ifndef _OWLPS_POSITIONING_ACCESSPOINT_HH_ #define _OWLPS_POSITIONING_ACCESSPOINT_HH_ #include "wifidevice.hh" #include "point3d.hh" #include using namespace std ; #define AP_DEFAULT_CHANNEL 6 #define AP_DEFAULT_ANTENNA_GAIN 5 class AccessPoint: public WifiDevice { protected: Point3D coordinates ; unsigned int frequency ; // Frequency (channel) in Hz public: AccessPoint(const WifiDevice &wd, const Point3D &_coordinates, const unsigned int &_frequency = AP_DEFAULT_CHANNEL): WifiDevice(wd), coordinates(_coordinates), frequency(_frequency) {} AccessPoint(const Point3D &_coordinates, const string &_ip_addr, const string &_mac_addr, const float &_antenna_gain = AP_DEFAULT_ANTENNA_GAIN, const float &_trx_power = WIFIDEVICE_DEFAULT_TRX_POWER, const unsigned int &_frequency = AP_DEFAULT_CHANNEL): WifiDevice(_ip_addr, _mac_addr, _antenna_gain, _trx_power), coordinates(_coordinates), frequency(_frequency) {} AccessPoint(const WifiDevice &wd): WifiDevice(wd), coordinates(Point3D()), frequency(0) {} AccessPoint(const AccessPoint &ap): WifiDevice(ap), coordinates(ap.coordinates), frequency(ap.frequency) {} ~AccessPoint() {} Point3D get_coordinates(void) const ; unsigned int get_frequency(void) const ; void set_coordinates(Point3D &_coordinates) ; void set_frequency(unsigned int &_frequency) ; AccessPoint operator=(const AccessPoint &ap) ; bool operator==(const AccessPoint &ap) const ; bool operator!=(const AccessPoint &ap) const ; friend ostream &operator<<(ostream &os, const AccessPoint &ap) ; } ; #endif // _OWLPS_POSITIONING_ACCESSPOINT_HH_