diff --git a/README.md b/README.md index f8ec3844b612a06d5be5942f570f00af0178eba7..1c7085c7395d50355f83023a801587247b592627 100644 --- a/README.md +++ b/README.md @@ -1,24 +1,59 @@ -firewire_camera library {#mainpage} +Firewire\_camera library {#mainpage} ============ ## Description Driver for firewire cameras. +## Installation + +* Add the labrobotica repository if it is not already added: + +``` sudo sh -c 'echo "deb [arch=amd64] http://147.83.76.226/~irilabo/packages xenial main" > /etc/apt/sources.list.d/labrobotica_repo.list' ``` + +``` wget -O - http://147.83.76.226/~irilabo/labrobotica_repo.gpg.key | sudo apt-key add - ``` + +* Install the package: + +``` sudo apt update && sudo apt install iri-firewire-camera-dev ``` + +## Disclaimer + +Copyright (C) 2009-2018 Institut de Robòtica i Informà tica Industrial, CSIC-UPC. +Mantainer IRI labrobotics (labrobotica@iri.upc.edu) + +This package is distributed in the hope that it will be useful, but without any warranty. It is provided "as is" without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The entire risk as to the quality and performance of the program is with you. should the program prove defective, the GMR group does not assume the cost of any necessary servicing, repair or correction. + +In no event unless required by applicable law the author will be liable to you for damages, including any general, special, incidental or consequential damages arising out of the use or inability to use the program (including but not limited to loss of data or data being rendered inaccurate or losses sustained by you or third parties or a failure of the program to operate with any other programs), even if the author has been advised of the possibility of such damages. + +You should have received a copy of the GNU Lesser General Public License +along with this program. If not, see <http://www.gnu.org/licenses/> + +## For developers + +<details><summary>click here</summary> +<p> + ## Dependencies This package requires of the following system libraries and packages * [cmake](https://www.cmake.org "CMake's Homepage"), a cross-platform build system. -* libdc1394]: sudo apt install libdc1394-22-dev +* [doxygen](http://www.doxygen.org "Doxygen's Homepage") and [graphviz](http://www.graphviz.org "Graphviz's Homepage") to generate the documentation. +* [libdc1394-22-dev](https://damien.douxchamps.net/ieee1394/libdc1394/), a driver to control IEEE 1394 based cameras. +* stdc++. + +Under linux all of these utilities are available in ready-to-use packages. + +Under MacOS most of the packages are available via [fink](http://www.finkproject.org/ "Fink's Homepage") This package also requires of the following IRI libraries: * [iriutils](https://gitlab.iri.upc.edu/labrobotica/algorithms/iriutils "iriutils gitlab page"), a set of basic tools. -## Compilation and installation +## Compilation and installation from source -Download this repository and create a build folder inside: +Clone this repository and create a build folder inside: ``` mkdir build ``` @@ -33,7 +68,7 @@ The RELEASE build mode optimizes for speed. To build in this mode execute instea The release mode will be kept until next time cmake is executed. -``` make ``` +``` make -j $(nproc)``` In case no errors are reported, the generated libraries (if any) will be located at the _lib_ folder and the executables (if any) will be located at the _bin_ folder. @@ -43,9 +78,9 @@ To do that, execute ``` make install ``` -as root and the shared libraries will be copied to */usr/local/lib/iridrivers* directory -and the header files will be copied to */usr/local/include/iridrivers* dierctory. At -this point, the library may be used by any user. +as root and the shared libraries will be copied to */usr/local/lib/iri/firewire_camera* directory +and the header files will be copied to */usr/local/include/iri/firewire_camera* dierctory. +At this point, the library may be used by any user. To remove the library from the system, exceute @@ -61,24 +96,20 @@ To generate the documentation execute the following command: To use this library in an other library or application, in the CMakeLists.txt file, first it is necessary to locate if the library has been installed or not using the following command -``` FIND_PACKAGE(<library name>) ``` +``` FIND_PACKAGE(firewire_camera) ``` In the case that the package is present, it is necessary to add the header files directory to the include directory path by using -``` INCLUDE_DIRECTORIES(${<library name>_INCLUDE_DIR}) ``` +``` INCLUDE_DIRECTORIES(${firewire_camera_INCLUDE_DIRS}) ``` and it is also necessary to link with the desired libraries by using the following command -``` TARGET_LINK_LIBRARIES(<executable name> ${<library name>_LIBRARY}) ``` +``` TARGET_LINK_LIBRARIES(<executable name> ${firewire_camera_LIBRARIES}) ``` -## Disclaimer +## Examples -Copyright (C) 2009-2018 Institut de Robòtica i Informà tica Industrial, CSIC-UPC. -Mantainer IRI labrobotics (labrobotica@iri.upc.edu) +There are several examples that show how to use the different classes. -This package is distributed in the hope that it will be useful, but without any warranty. It is provided "as is" without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The entire risk as to the quality and performance of the program is with you. should the program prove defective, the GMR group does not assume the cost of any necessary servicing, repair or correction. +</p> +</details> -In no event unless required by applicable law the author will be liable to you for damages, including any general, special, incidental or consequential damages arising out of the use or inability to use the program (including but not limited to loss of data or data being rendered inaccurate or losses sustained by you or third parties or a failure of the program to operate with any other programs), even if the author has been advised of the possibility of such damages. - -You should have received a copy of the GNU Lesser General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>