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
c50ac30ba4
Update Doxyfiles to Doxygen 1.8.4 format
2013-07-17 18:09:15 -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
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
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
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
5ddca24738
Print exit message only in verbose mode
...
Update the exit message printing in all the modules:
- print on standard error
- print only in verbose mode
- use "exiting" instead of "end"
2013-06-12 17:18:46 -04:00
Matteo Cypriani
9701a2d393
[Positioner] Allow building with clang++
...
This patch is to have clang++ (>= 3.2) happily build OwlPS Positioner.
For some reason it doesn't work on NetBSD, but it is fine on GNU/Linux
and (a couple of warnings apart) on DragonFly BSD.
2013-06-12 09:38:38 -04:00
Matteo Cypriani
d32813376b
CMake: pass installation prefix to programs
...
The file libowlps/owlps-config.h.in was added to allow CMake to pass the
installation prefix variable to the programs. That allows the programs
to look for their configuration file at the right position (i.e. in the
etc/owlps directory under the installation prefix).
2013-06-12 09:38:38 -04:00
Matteo Cypriani
9d640cd4d6
[Positioner] Doxygen: enable MULTILINE_CPP_IS_BRIEF
...
Enable Doxygen option MULTILINE_CPP_IS_BRIEF, so that we don't have to
use \brief: C++-style comments are for brief descriptions and C-style
comments for extended descriptions.
Fix some comments (use @param instead of @arg).
2013-06-12 09:38:00 -04:00
Matteo Cypriani
eb2715e249
CMake: make sure doxygen is available
2013-06-04 11:07:54 -04:00
Matteo Cypriani
df765e08b3
CMake: generate Positioner's doc out of tree
...
The Positioner's documentation is now generated in the build tree
instead of in the source tree.
2013-06-03 17:46:10 -04:00
Matteo Cypriani
4a3fd2ac8a
[Positioner] Use Markdown in Doxygen comments
...
Fix some comments as well, and uniformise the use of @returns instead of
@return.
2013-06-03 17:46:10 -04:00
Matteo Cypriani
486d2c9670
[Positioner] CSV*Reader: don't use namespace boost
...
Remove the using namespace boost declaration.
2013-06-03 17:46:10 -04:00
Matteo Cypriani
f352295e9d
[Positioner] Get rid of Boost's unordered_*
...
Stop using Boost for unordered_set, unordered_map and hashes.
2013-06-03 17:46:10 -04:00
Matteo Cypriani
081c559fc5
[Positioner] Fix a few small issues
...
Fix three minor performance issues signaled by cppcheck and a couple of
problems with Doxygen.
2013-06-03 17:46:10 -04:00
Matteo Cypriani
e9cecbe1c0
[Positioner] Update Doxyfile
...
Update Doxyfile to Doxygen 1.8.1.2 and change a couple of options.
2013-06-03 17:45:02 -04:00
Matteo Cypriani
80fd5b287b
Update and centralise copyright information
2013-05-29 13:19:06 -04:00
Matteo Cypriani
be6d369fcc
CMake: test for the presence of Boost (Positioner)
2013-05-22 18:36:21 -04:00
Matteo Cypriani
1cb5742ef9
CMake: rework compilation/link flags
...
- Default compiler and linker flags were added silently. They are now
set in the cache if no previous values are present.
- Debug flags and regular flags have been merged.
- Position-independent code (doesn't appear in the cache because CMake
lacks variables like CMAKE_EXE_COMPILE_FLAGS):
- Shared libraries are compiled with -fPIC.
- Executables and static libraries are compiled with -fPIE.
- Executables are linked with -pie -fPIE.
2013-05-22 18:36:21 -04:00
Matteo Cypriani
c41f6d9547
CMake: add installation targets
2013-05-22 18:36:21 -04:00
Matteo Cypriani
4264210dcc
CMake: add static targets
...
The pseudo-targets "semistatic" and "static" were added to build
everything in semistatic or static mode.
2013-05-22 18:36:20 -04:00
Matteo Cypriani
d4ef0cc306
CMake: add Positioner's extra targets
...
Add extra targets for the Positioner:
- indent_positioner calls astyle (old make target: "style")
- check_positioner calls cppcheck (old make target: "check")
2013-05-22 18:36:20 -04:00
Matteo Cypriani
0de28cb3eb
CMake: compile Positioner
2013-05-22 18:36:20 -04:00
Matteo Cypriani
005e5da12e
Delete Makefiles
2013-05-20 17:08:33 -04:00
Matteo Cypriani
453be9a588
[Positioner] request.cc: add missing #include
2013-05-20 17:07:57 -04:00
Matteo Cypriani
e749542ddc
[Positioner] PosUtil: improve assert_uppercase()
2013-05-18 23:38:31 -04:00
Matteo Cypriani
6745274c94
[Positioner] Configuration::autocalibration_enabled()
...
Add Configuration::autocalibration_enabled() as a shortcut to test if
the autocalibration is enabled.
2013-05-17 16:54:57 -04:00
Matteo Cypriani
4650c229ff
[Positioner] Allow to generate a RP list
...
Change the positioning.generate-reference-points option to offer
multiple choices (false, mesh, list, both) and add the
positioning.generated-points-list to allow the user to specify a list of
reference points to generate.
2013-05-17 16:54:57 -04:00
Matteo Cypriani
9ef599b42f
[Positioner] Add CSVStringReader(string)
...
Add a string constructor for CSVStringReader, for easier use outside of
CSVFileReader.
2013-05-17 16:54:57 -04:00