Commit Graph

849 Commits

Author SHA1 Message Date
Matteo Cypriani 42bcef2c0e [Positioning] Add options tcpevaal-{host,port}
Add options output.tcpevaal-host and output.tcpevaal-port, with
localhost:4444 as default values, as recommended by the organisers.
2011-07-29 23:02:26 +02:00
Matteo Cypriani 593da5e422 [Positioning] TCPEvAAL: send area of interest
The areas of interest must be defined as areas in the topology
configuration file. Their names must be integer values, to conform with
the EvAAL naming.
2011-07-29 23:02:26 +02:00
Matteo Cypriani a951717433 [Positioning] Add Stock::in_which_area_is() 2011-07-29 23:02:26 +02:00
Matteo Cypriani 9f5305b496 [Positioning] TCPEvAAL: send request's timestamp 2011-07-29 23:02:26 +02:00
Matteo Cypriani 1dfe30ea03 [Positioning] Add Result::request
Associate a Result with the origin Request.
2011-07-29 23:02:26 +02:00
Matteo Cypriani d5fcfed1f2 [Positioning] Add OutputTCPSocketEvAAL 2011-07-29 23:02:26 +02:00
Matteo Cypriani 3490b94df7 [Positioning] Building & CSVFileReader: minor edits
Building: fix a comment.
CSVFileReader: delete useless "boost::" prefix (we have using namespace
boost).
2011-07-29 23:02:26 +02:00
Matteo Cypriani 9b245ce152 [Positioning] Add option generated-meshing-grain
The option positioning.generated-meshing-grain allows to set the
grain of the generated reference points' meshing.
2011-07-29 23:02:26 +02:00
Matteo Cypriani 4c53ed372a [Positioning] Add Configuration::float_value() 2011-07-29 23:02:26 +02:00
Matteo Cypriani d735df6f94 [Positioning] Input: display the number of CR
When receiving a new calibration request, display an info message (with
verbose mode on).
2011-07-29 23:02:26 +02:00
Matteo Cypriani 26e3c33366 [Positioning] RP generation: fix SS weighting
The weighted mean of the SSs for the selected APs was wrong (an extra
division by 2)
2011-07-29 23:02:26 +02:00
Matteo Cypriani a975731ae4 [Positioning] OutputTerminal: handle flush-output-files
Flush the output stream when the option flush-output-files is activated.
2011-07-29 23:02:25 +02:00
Matteo Cypriani ea81916937 [Positioning] Add option position-calibration-requests
This option allows the calibration requests to be positioned as
positioning requests.
2011-07-29 23:02:25 +02:00
Matteo Cypriani 2ddad20371 [Positioning] Stock: generate one CR for all APs
A Request is received by *all* the APs, therefore we have to generate
one CalibrationRequest per ReferencePoint, and not one
CalibrationRequest per AP in each ReferencePoint.
2011-07-29 23:02:25 +02:00
Matteo Cypriani 3402809c09 [Positioning] Stock: do not regenerate AP coord.
Do not generate reference points where an AP sits (normally we already
have the true measurement).
2011-07-29 23:02:25 +02:00
Matteo Cypriani c85c6357fb [Positioning] Input::get_next_request(): refactor. 2011-07-29 23:02:25 +02:00
Matteo Cypriani a801eb84d1 [Positioning] Add Stock::is_ap_coordinate() 2011-07-29 23:02:25 +02:00
Matteo Cypriani d03d240568 [Positioning] ReferencePoint: add an assertion
Add an assertion into friis_indexes_for_ap().
2011-07-29 23:02:25 +02:00
Matteo Cypriani 602f9c5399 [Positioning] ReferencePoint: variable renaming 2011-07-29 23:02:25 +02:00
Matteo Cypriani 0d160f8b23 [Positioning] Add option generate-reference-points
The self-calibration is here! There is certainly some things to fix, but
the big step is made.
2011-07-29 23:02:25 +02:00
Matteo Cypriani 3c00c3bb19 [lib] Add request type "generated"
This new type of request will only be used in owlps-positioning, to
distinct the calibration requests that are issued from a real
measurement and those that are generated by the self-calibration
process.
2011-07-29 23:02:25 +02:00
Matteo Cypriani 2b12e49374 [Positioning] Fix ReferencePoint::delete_generated_requests()
Use a while loop instead of for to check the requests.
2011-07-29 23:02:25 +02:00
Matteo Cypriani 232551c150 [Positioning] ReferencePoint::delete_generated_requests() 2011-07-29 23:02:25 +02:00
Matteo Cypriani 6c48bc7e29 [Positioning] Add Stock::get_aps() 2011-07-29 23:02:25 +02:00
Matteo Cypriani d1b575c95e [Positioning] Add Stock::nb_virtual_mobiles 2011-07-29 23:02:25 +02:00
Matteo Cypriani 1abe54b7be [Positioning] Add PosUtil::int_to_mac() 2011-07-29 23:02:25 +02:00
Matteo Cypriani a2a289f651 [Positioning] Debug checks for CR deletion
Add asserts and debug messages in ReferencePoint::delete_requests() and
Stock::delete_calibration_request().
2011-07-29 23:02:14 +02:00
Matteo Cypriani 9c76d87b0c [Positioning] Add option accept-new-mobiles
The option positioning.accept-new-mobiles allows the program to add
on-line mobiles that are not declared in the mobiles' configuration
file. This was the default till now; now this option is unactivated by
default to avoid unexpected Wi-Fi devices retransmitting positioning
requests.
2011-07-25 14:18:17 +02:00
Matteo Cypriani 6b662a597a [Positioning] Add Stock::mobile_exists() 2011-07-25 14:18:17 +02:00
Matteo Cypriani 0b43e7f5fc [Positioning] Read mobiles characteristics
Add MobilesReaderCSV, that reads the known mobiles from a CSV file.
2011-07-25 14:18:17 +02:00
Matteo Cypriani 8878bb2390 [Positioning] Add Stock::nb_mobiles() 2011-07-25 14:18:17 +02:00
Matteo Cypriani b04cd1cdb8 [Positioning] Add Stock::find_create_mobile(Mobile&) 2011-07-25 14:18:17 +02:00
Matteo Cypriani d9bfd9e2c2 [Positioning] AccessPointsReaderCSV: s/ap/device/ 2011-07-25 14:18:17 +02:00
Matteo Cypriani f5a4f4fedc [Positioning] Point3D: fix angle()
Use doubles instead of floats.
Handle the cases where points are equal.
2011-07-25 14:18:16 +02:00
Matteo Cypriani 33b027d472 [Positioning] Tweak ReferencePoint::friis_indexes_for_ap() 2011-07-25 14:18:16 +02:00
Matteo Cypriani f418fc15f1 [Positioning] Add Point3D::angle() 2011-07-25 14:18:16 +02:00
Matteo Cypriani 855291b31d [Positioning] Add PosUtil::rad2deg() 2011-07-25 14:18:16 +02:00
Matteo Cypriani 948bd577a2 [Positioning] Output*: do not output empty RequestList 2011-07-25 14:18:16 +02:00
Matteo Cypriani 773fd559cd [Positioning] Add ResultList::empty() 2011-07-25 14:18:16 +02:00
Matteo Cypriani d43267fcd3 [Positioning] Positioning: catch compute exceptions
Catch the exception potentially thrown by
PositioningAlgorithm::compute().
2011-07-25 14:18:16 +02:00
Matteo Cypriani 0df91eaa94 [Positioning] Input*: skip requests without measurements 2011-07-25 14:18:16 +02:00
Matteo Cypriani 1f46075aa3 [Positioning] Add option accept-new-aps
The option positioning.accept-new-aps allows the program to add on-line
APs that are not declared in the APs' configuration file.
2011-07-25 14:18:16 +02:00
Matteo Cypriani 2b1248fbec [Positioning] Add Stock::ap_exists() 2011-07-25 14:18:16 +02:00
Matteo Cypriani 68b97451aa [Positioning] Print new created APs when verbose 2011-07-25 14:18:16 +02:00
Matteo Cypriani 37997242c5 [Positioning] Uppercase all MAC addresses on input 2011-07-25 14:18:16 +02:00
Matteo Cypriani e9e8308a9c [Positioning] PosUtil: add string functions
Add PosUtil::to_upper(string) and PosUtil::assert_uppercase(string).
2011-07-25 14:18:16 +02:00
Matteo Cypriani 05859da49b [Positioning] Reorder 2 headers in stock.hh 2011-07-25 14:18:16 +02:00
Matteo Cypriani 0491fe0a62 [Positioning] Input: del RP's requests on new CR
When a new calibration request is received, all the calibration requests
of the corresponding reference point are now cleared prior to add the
new request.
We should probably use a timeout to delete only the old calibration
requests and keep the recent ones.
2011-07-25 14:18:16 +02:00
Matteo Cypriani b8bd2acf44 [Positioning] Add option accept-new-calibration-requests
The option positioning.accept-new-calibration-requests allows the
calibration requests sent during the positioning phase to be added to
the Stock. They are added to the calibration requests read by
InputDataReader during the start-up phase.
2011-07-25 14:18:16 +02:00
Matteo Cypriani 586cfdb77e [Positioning] Stock::store_calibration_request()
InputDataReader::stock_calibration_request() becomes
Stock::store_calibration_request(), so other classes can use it.
2011-07-25 14:18:16 +02:00