Commit Graph

1120 Commits

Author SHA1 Message Date
Matteo Cypriani 78f13f2c0b [Listener] Fix byte order macros for OpenBSD >= 5.6 2016-11-03 22:08:06 -04:00
Matteo Cypriani 550d9008db [doc] fix for BSD sed 2016-11-03 22:08:06 -04:00
Matteo Cypriani dce4416bc6 Fix missing/wrong includes for BSD
Fix a few missing includes that prevented building on BSD systems.

* Client: the proper way to get MAXHOSTNAMELEN is from <sys/param.h>,
  not from <rpc/types.h>.

* Positioner/Direction: std::hash is declared in <functional>.

* Positioner/OutputNetworkSocket: get struct sockaddr from
  <sys/socket.h>, not from <netinet/in.h>.
2016-11-03 22:08:06 -04:00
Matteo Cypriani c6e39f7e70 [libowlps] Use labs() for int_fast32_t
int_fast32_t is at least 32-bit wide, like long. Hence, labs() should be
used instead of abs().
2016-11-03 22:08:06 -04:00
Matteo Cypriani 41640da203 [Positioner] Mobile: fix copy constructor segfault 2016-11-03 22:08:06 -04:00
Matteo Cypriani ecb9a689b5 [Positioner] Mobile: fix operator=() & operator==() 2016-11-03 22:08:06 -04:00
Matteo Cypriani df0c08c271 [Positioner] Add missing ResultList::operator!=() 2016-11-03 22:08:01 -04:00
Matteo Cypriani 16d4422a2b [Positionner] tests: improve Mobile tests 2016-11-03 22:06:18 -04:00
Matteo Cypriani a77ee05239 [Positioner] Point3D: add missing <vector> include 2016-11-03 22:06:17 -04:00
Matteo Cypriani 44dcf42180 CMake: rename test target to "tests"
Comply with CMake policy CMP0037: "test" is a reserved target name.
2016-11-03 22:06:17 -04:00
Matteo Cypriani 3df3a14762 gitignore: add /build/ 2016-11-03 22:06:17 -04:00
Matteo Cypriani 2c9f1a09b0 [doc] Add rendered pictures (PNG) 2016-11-03 22:06:17 -04:00
Matteo Cypriani 4d309d9c10 [doc] Add figures/Makefile 2016-11-03 22:06:17 -04:00
Matteo Cypriani 36966148f3 [doc] Add positioner_class_diagram_simple.plant
This is a simplified, and somewhat more readable version of
2016-11-03 22:05:55 -04:00
Matteo Cypriani 759db45a50 A few old cosmetic changes 2016-11-03 22:00:33 -04:00
Matteo Cypriani c4f1ed82e6 [logo] Add PNG versions 2016-11-03 22:00:33 -04:00
Matteo Cypriani f67d7892a8 Add to accommodate Gogs is an excerpt of doc/owlps.t2t, and integrates the information
from the former README.t2t, which was deleted.
2016-11-03 22:00:33 -04:00
Matteo Cypriani bc6ec14fa8 Update COPYRIGHT.t2t URL 2016-11-03 22:00:33 -04:00
Matteo Cypriani fbef235ebf [doc] Update URLs
OwlPS is now hosted on a Gogs instance, that replaced the defunct
2016-11-03 21:57:53 -04:00
Matteo Cypriani a567782557 [doc] Some rewording 2016-11-03 00:46:37 -04:00
Matteo Cypriani 8053876588 COPYRIGHT: update dates 2016-11-03 00:46:32 -04:00
Matteo Cypriani 52106177a1 [Aggregator] Improve UDP socket-related code 2014-10-31 13:59:52 -04:00
Matteo Cypriani c567592167 [lib] owl_close_fd(): handle negative fd 2014-10-31 12:59:39 -04:00
Matteo Cypriani fe84a5f097 [doc] INSTALL: recommend building in a subdirectory
Recommend building in ~/owlps/build rather than in ~/owlps-build.
2014-10-31 11:36:34 -04:00
Matteo Cypriani dc64f050a8 [doc] Quit using "CP" where not necessary 2014-10-31 11:36:34 -04:00
Matteo Cypriani 7d84e7c957 [doc] positionerd: add filter options
Also add default value explanation in owlps-positioner.conf.
2014-10-31 11:36:34 -04:00
Matteo Cypriani e4b8e7239b Update Doxygen files (Doxyfile) to 1.8.8 2014-10-31 11:18:15 -04:00
Matteo Cypriani b479d6a560 [doc] INSTALL: improve list of dependencies 2014-07-25 15:37:33 -04:00
Matteo Cypriani f3e63ec20f CMake: precise "g++" in error message 2014-07-25 15:22:59 -04:00
Matteo Cypriani 093b93a3c5 CMake: make sure OWLPS_VERSION is defined
If not defined in the environment and could not retrieved from Git,
OWLPS_VERSION is defined to "unknown version".
2014-07-25 15:17:46 -04:00
Matteo Cypriani 209530ad41 [doc] CMake: use current date if not using Git
If not building against the source from the Git repository, the date
can't be retrieved with Git; in that case we use the current date in the
2014-07-25 15:15:48 -04:00
Matteo Cypriani e51a8d4f1b [scripts] AggCheck: detect duplicated timestamps
owlps-aggcheck uses the timestamp alone to identify requests, which
causes problem in case two requests have the same timestamp. This commit
allows the script to detect duplicated timestamps, and documents the
2014-07-24 12:38:29 -04:00
Matteo Cypriani 8c5e8c62f6 [scripts] AggCheck: -n prints transmitters
When called with -n, owlps-aggcheck now prints the transmitter of each
request as the first column.
2014-07-24 12:38:29 -04:00
Matteo Cypriani a56a8d3d5d [Positioner] New option filter.max-speed-cp
The new option positioning.filter.max-speed-cp allows to set an
alternative maximum speed when the mobile is found to be within
cp-reset-distance, instead of completely disabling the filter.
2014-05-28 17:01:13 -04:00
Matteo Cypriani a1c8e0a093 [Positioner] New option filter.cp-reset-distance
The new option positioning.filter.cp-reset-distance allows to disable
the filter when the unfiltered location of the mobile terminal is found
to be close enough to a capture point.
2014-05-28 17:01:12 -04:00
Matteo Cypriani 36cf7c13cb [Positioner] Add Stock::distance_from_closest_cp() 2014-05-28 17:01:12 -04:00
Matteo Cypriani 9d3c079b45 [Positioner] sqrtf() instead of sqrt() with float
Use sqrtf() instead of sqrt() when returning a float.
2014-05-28 17:01:12 -04:00
Matteo Cypriani 7e3b41a46f [Positioner] Positioning::filter() (refactoring)
Refactor the filtering code into a separate function,
2014-05-28 17:01:12 -04:00
Matteo Cypriani f35215388b [Positioner] Use nullptr instead of NULL 2014-05-28 17:01:12 -04:00
Matteo Cypriani 92db007d6b [Positioner] Test pointers as booleans 2014-05-28 17:01:12 -04:00
Matteo Cypriani ec8c1244cd [Positioner] Eliminate a couple of C-style casts 2014-05-28 17:01:12 -04:00
Matteo Cypriani f06c866f8f [Positioner] Add basic filtering
The new configuration option positioning.filter.max-speed allows to
specify the maximum speed at which the mobile terminals can travel; the
distance between two results for a given mobile will be limited to the
distance that it could have travelled, according to the two requests'
2014-05-28 17:01:12 -04:00
Matteo Cypriani e8f3479cdd [Positioner] Add Mobile::last_request
The last request transmitted by (received from) a mobile is now stored
along with last_results instead of relying on last_results.request which
is not guaranteed to be a valid pointer.
2014-05-13 16:41:51 -04:00
Matteo Cypriani 7b0aacd212 [Positioner] Add ResultList::set_request()
It is now possible to update the Request in a ResultList.
2014-05-13 16:41:51 -04:00
Matteo Cypriani f38527cd93 [Positioner] Add Result::set_position() 2014-05-12 19:41:38 -04:00
Matteo Cypriani 1a40fe3366 [Positioner] Point3D: new interpolation function
Add Point3D::interpolate(point, speed, duration), that returns a single
interpolated point computed according to speed and duration of the
mobile's movement.
2014-05-12 19:15:34 -04:00
Matteo Cypriani 52940bcfc3 [Positioner] Add ResultList::get_result_for_algo() 2014-05-12 14:58:59 -04:00
Matteo Cypriani feb5a715fa [Positioner] Add Mobile::last_results
Allow to store the last results for each algorithm in a Mobile.
2014-05-12 12:30:30 -04:00
Matteo Cypriani 23d0708ca1 [logo] README: explain how to get the right font 2014-05-05 13:05:48 -04:00
Matteo Cypriani ebeef80bac [Positioner] cfg: warn about CPs in mobiles.csv 2014-05-05 13:04:47 -04:00