Commit Graph

1127 Commits

Author SHA1 Message Date
Matteo Cypriani a2ce042e48 [Positioner] Add Point3D::interpolate()
This new function allows to compute intermediate, interpolated points
between two points. It will be used to generate reference points in a
line between two points.
Sadly, OwlPS Positioner gets a new dependency on libclaw_tween.
2013-07-17 18:09:15 -04:00
Matteo Cypriani b724ad7ab7 [Positioner] Autocalibration: cosmetics
init_cp() becomes private instead of protected and is documented.
Class description improved.
2013-07-17 18:09:15 -04:00
Matteo Cypriani 9fca1926f9 [Positioner] CSVStringReader: doc improvement
Improve the description of CSVStringReader::read_point3d().
2013-07-17 18:09:15 -04:00
Matteo Cypriani 066754c90c [lib-client] owl_send_packet(): fix error message 2013-07-17 18:09:15 -04:00
Matteo Cypriani c50ac30ba4 Update Doxyfiles to Doxygen 1.8.4 format 2013-07-17 18:09:15 -04:00
Matteo Cypriani ec8cd9dddd [Aggregator] Improve config file-related warning
Same modification as for the Listener.
2013-07-17 18:09:15 -04:00
Matteo Cypriani 46e1510536 [Listener] Improve config file-related warning
Display a warning when the configuration file cannot be read only when
the -f option was used. As stated in comment, the initial plan was to
also display the warning in verbose mode, but at this point of the
program the command-line is not parsed yet, so it's pointless to test
for it.
2013-07-17 18:09:15 -04:00
Matteo Cypriani b930333fbb [doc] client: a couple of minor improvements 2013-07-17 18:09:15 -04:00
Matteo Cypriani a6c9c12a30 [doc] Add owlps-listenerd.t2t 2013-07-17 18:09:14 -04:00
Matteo Cypriani b5915aee8d [Listener] Fix/improve help message 2013-07-17 18:09:14 -04:00
Matteo Cypriani 779c859add [doc] owlps: add Cross-version compatibility note 2013-07-17 18:09:14 -04:00
Matteo Cypriani 763b36807e Increment lib and lib-client version numbers
libowlps and libowlps-client were changed in this development branch so
we increase the version number.
2013-07-17 18:09:14 -04:00
Matteo Cypriani a18a38c7ee [doc] architecture: add Autocalibration section 2013-07-17 18:09:14 -04:00
Matteo Cypriani 5d7c68fe2f [doc] Add owlps-deployment.t2t 2013-07-17 18:09:14 -04:00
Matteo Cypriani f4980d003e [doc] Add copyright notices in man pages 2013-07-17 18:09:14 -04:00
Matteo Cypriani b5ed61cdd0 [Positioner] Update copyright notices
Fix a typo in the existing copyright notices and add notices for the
files in the tests/ directory.
2013-07-17 18:09:14 -04:00
Matteo Cypriani dae99e0ded [doc] INSTALL: mention (semi)static meta-targets 2013-07-17 18:09:14 -04:00
Matteo Cypriani be1ab24251 [Positioner] tests: delete userinterface_test.hh
UserInterface is no longer testable, since we need a valid configuration
to test the other classes.
2013-07-17 18:09:14 -04:00
Matteo Cypriani 1eac9bb718 [Positioner] tests: review and update (100% pass)
Review and fix all the tests so that 100% of the tests pass.
2013-07-17 18:09:14 -04:00
Matteo Cypriani 13f8847f65 [Positioner] tests: fix CMake dependencies 2013-07-17 18:09:13 -04:00
Matteo Cypriani e2074cdb9b [Positioner] tests: fix PosUtil 2013-07-17 18:09:13 -04:00
Matteo Cypriani c188560575 [Positioner] tests: make all of them build again
There are still many compilation warning and many tests fail, but at
least everything builds.
2013-07-17 18:09:13 -04:00
Matteo Cypriani f71c66590e [Positioner] tests: add CMake target
This commits makes the tests that are currently compilable to be built;
a lot of test files are not included because of some compilation errors.
2013-07-17 18:09:13 -04:00
Matteo Cypriani 4a534755db [Positioner] tests: AccessPoint -> CapturePoint 2013-07-17 18:09:13 -04:00
Matteo Cypriani ecae205955 [Positioner] Cosmetic changes, mainly comments 2013-07-17 18:09:13 -04:00
Matteo Cypriani 9144ef3740 [Positioner] RealPosition: fix calib request bug
Fix the RealPosition::compute() bug that prevented the real position to
be extracted for a CalibrationRequest.
2013-07-17 18:09:13 -04:00
Matteo Cypriani e9f5f26504 [Positioner] Fix Request's destructor
real_position was not deleted in the destructor.
2013-07-17 18:09:13 -04:00
Matteo Cypriani 8b3a31fe3b [Positioner] Fix Request::operator==() 2013-07-17 18:09:13 -04:00
Matteo Cypriani 6cffd61b0c [Positioner] UserInterface: use const argc & argv 2013-07-17 18:09:13 -04:00
Matteo Cypriani c358b6e6c7 [Positioner] Direction: use uint_fast8_t
Use uint_fast8_t instead of char as the inner direction type.
2013-07-17 18:09:13 -04:00
Matteo Cypriani 953e4c1d52 [Positioner] Un-inline Direction::is_valid() 2013-07-17 18:09:13 -04:00
Matteo Cypriani dfc52a1de3 [Positioner] Un-inline Timestamp::set() 2013-07-17 18:09:12 -04:00
Matteo Cypriani 794d8b35d0 [Positioner] Fix CalibrationRequest(Request)
Fix CalibrationRequest's Request copy constructor: the default arguments
must be in the header file.
2013-07-17 18:09:12 -04:00
Matteo Cypriani 6c1c182039 [Listener] Adapt get_mac_addr() to build on BSD
The get_mac_addr() function was the only real blocker that prevented
building on BSD systems, as it used the Linux-specific SIOCGIFHWADDR
ioctl. When compiling for Linux, we still use this ioctl, but for the
BSD version we use sysctl().

This allows OwlPS Listener to build on BSD (tested on NetBSD, OpenBSD
and DragonFly). That doesn't mean it will actually work when trying to
capture packets though (that has to be tested on real hardware), but
that's still a progress.
2013-07-17 18:09:12 -04:00
Matteo Cypriani 7d3650fb5d [Listener] Improve BSD friendliness 2013-07-17 18:09:12 -04:00
Matteo Cypriani 14e9a4122a [Listener] Improve *_addr()
Improve the code of the get_mac_addr() and get_ip_addr() functions,
their signature and documentation.
2013-07-17 18:09:12 -04:00
Matteo Cypriani 4ae0874e1f [Positioner] Access Point -> Capture Point
Like in the other modules, we get rid of the old use of "access point".
This has user-visible changes, especially in the configuration (the name
of a few options has been changed).
2013-07-17 18:09:12 -04:00
Matteo Cypriani 69cba07122 [lib] Access Point -> Capture Point (API change)
Same work as for Aggregator and Listener to get rid of the old "AP"
terminology.

API change: structures with an ap_mac_addr_bytes field are modified.
2013-07-17 18:09:12 -04:00
Matteo Cypriani 9e7b55c317 [Listener] Access Point -> Capture Point
Same work as for the Aggregator, without any user-visible change.
2013-07-17 18:09:12 -04:00
Matteo Cypriani 0c3083bd41 [Aggregator] Access Point -> Capture Point
Use the new terminology "capture point" (CP) instead of "access point"
(AP) everywhere in Aggregator. The only user-visible change is that the
ap_keep_timeout option is now called cp_keep_timeout.
2013-07-17 18:09:12 -04:00
Matteo Cypriani 91cd819730 [Aggregator] ap_check_interval -> ac_order_interval
The option ap_check_interval is now named ac_order_interval, which is
(hopefully) more meaningful.
2013-07-17 18:09:12 -04:00
Matteo Cypriani bd48479d2d [Positioner] Refactor InputCSV::fill_current_request()
Use the new function InputCSV::read_field() to read the fields and
display error messages as needed.
2013-07-17 18:09:12 -04:00
Matteo Cypriani 5bf1bcb4d2 Handle aggregation CSV format version
The first field of the Aggregator's CSV output files is now an unsigned
integer that announces the version of the CSV format used. Current
version is 1 and the subsequent fields are not modified, so that an
aggregation file generated with a previous version can still be used by
adding "1;" at the beginning of each line.

The Positioner has been adapted to handle this new format.
2013-07-17 18:08:27 -04:00
Matteo Cypriani b97085d79f [Positioner] Get rid of the src/ subdirectory
The src/ subdirectory is not needed any more, since we can build out of
tree with CMake.
2013-06-19 18:53:37 -04:00
Matteo Cypriani 61aa4af3a3 [Aggregator] Refactor got_request()
Create add_captured_request() out of got_request(). Now,
add_captured_request() will need to be refactored.
2013-06-12 18:55:48 -04:00
Matteo Cypriani 068553ee49 [Aggregator] got_request(): pointer parameter
For performance's sake, the request passed in parameter of got_request()
is now a const pointer instead of a struct.
2013-06-12 18:55:48 -04:00
Matteo Cypriani ef154b6d91 [Aggregator] Refactor read_loop()
Create print_captured_request() out of read_loop().
2013-06-12 18:55:48 -04:00
Matteo Cypriani 0e913a2938 [Aggregator] More monitor_requests() refactoring
Create scan_request_list() out of monitor_requests().
2013-06-12 18:55:48 -04:00
Matteo Cypriani 5b6f40f59d Improve Aggregator & Listener's exit messages 2013-06-12 18:55:46 -04:00
Matteo Cypriani d9344673b0 [Aggregator] Flush the requests' list at exit
Instead of just freeing the requests' list, output every request and
free the list at the same time.
2013-06-12 18:51:38 -04:00