From 9dcf3acf2af1ba91abbc3d9d266b7baf84ded1a7 Mon Sep 17 00:00:00 2001 From: John Zhao Date: Mon, 11 Mar 2019 13:27:49 +0800 Subject: [PATCH] docs(*): update docs --- .gitignore | 2 + Makefile | 15 +- doc/build.sh | 83 - doc/en/mainpage.md | 11 - doc/en/spec_control_api.md | 26 - doc/en/spec_control_channel.md | 53 - doc/en/spec_hardware_info.md | 16 - doc/en/spec_image_data.md | 20 - doc/en/spec_image_params.md | 23 - doc/en/spec_imu_data.md | 42 - doc/en/spec_imu_params.md | 23 - doc/en/specs_ctrl.md | 4 - doc/en/specs_data.md | 7 - doc/langs.sh | 20 - doc/static/custom.css | 3 - doc/static/images/icon.png | Bin 17927 -> 0 bytes doc/static/images/imu_analytics.png | Bin 57121 -> 0 bytes doc/static/images/make_install.png | Bin 32704 -> 0 bytes doc/static/images/stamp_analytics.png | Bin 129696 -> 0 bytes doc/zh-Hans/api.doxyfile | 2497 ------------------------- doc/zh-Hans/guide_build_linux.md | 44 - doc/zh-Hans/guide_build_win.md | 113 -- doc/zh-Hans/guide_log.md | 6 - doc/zh-Hans/guide_opencv.md | 13 - doc/zh-Hans/guide_ros.md | 30 - doc/zh-Hans/guide_samples.md | 46 - doc/zh-Hans/guide_tools.md | 73 - doc/zh-Hans/guides.md | 9 - doc/zh-Hans/mainpage.md | 11 - doc/zh-Hans/spec_control_api.md | 27 - doc/zh-Hans/spec_control_channel.md | 53 - doc/zh-Hans/spec_hardware_info.md | 19 - doc/zh-Hans/spec_image_data.md | 21 - doc/zh-Hans/spec_image_params.md | 25 - doc/zh-Hans/spec_imu_data.md | 42 - doc/zh-Hans/spec_imu_params.md | 23 - doc/zh-Hans/specs_ctrl.md | 4 - doc/zh-Hans/specs_data.md | 7 - doc/en/api.doxyfile => docs/Doxyfile | 33 +- docs/Makefile | 19 + docs/api/api.rst | 23 + docs/api/device.rst | 30 + docs/api/enums.rst | 67 + docs/api/types.rst | 75 + docs/api/utils.rst | 32 + {doc => docs}/arch.graphml | 0 {doc => docs}/arch.jpg | Bin docs/conf.py | 194 ++ docs/index.rst | 25 + docs/make.bat | 35 + docs/requirements.txt | 5 + include/mynteye/types.h | 73 +- 52 files changed, 569 insertions(+), 3453 deletions(-) delete mode 100755 doc/build.sh delete mode 100644 doc/en/mainpage.md delete mode 100644 doc/en/spec_control_api.md delete mode 100644 doc/en/spec_control_channel.md delete mode 100644 doc/en/spec_hardware_info.md delete mode 100644 doc/en/spec_image_data.md delete mode 100644 doc/en/spec_image_params.md delete mode 100644 doc/en/spec_imu_data.md delete mode 100644 doc/en/spec_imu_params.md delete mode 100644 doc/en/specs_ctrl.md delete mode 100644 doc/en/specs_data.md delete mode 100644 doc/langs.sh delete mode 100644 doc/static/custom.css delete mode 100644 doc/static/images/icon.png delete mode 100644 doc/static/images/imu_analytics.png delete mode 100644 doc/static/images/make_install.png delete mode 100644 doc/static/images/stamp_analytics.png delete mode 100644 doc/zh-Hans/api.doxyfile delete mode 100644 doc/zh-Hans/guide_build_linux.md delete mode 100644 doc/zh-Hans/guide_build_win.md delete mode 100644 doc/zh-Hans/guide_log.md delete mode 100644 doc/zh-Hans/guide_opencv.md delete mode 100644 doc/zh-Hans/guide_ros.md delete mode 100644 doc/zh-Hans/guide_samples.md delete mode 100644 doc/zh-Hans/guide_tools.md delete mode 100644 doc/zh-Hans/guides.md delete mode 100644 doc/zh-Hans/mainpage.md delete mode 100644 doc/zh-Hans/spec_control_api.md delete mode 100644 doc/zh-Hans/spec_control_channel.md delete mode 100644 doc/zh-Hans/spec_hardware_info.md delete mode 100644 doc/zh-Hans/spec_image_data.md delete mode 100644 doc/zh-Hans/spec_image_params.md delete mode 100644 doc/zh-Hans/spec_imu_data.md delete mode 100644 doc/zh-Hans/spec_imu_params.md delete mode 100644 doc/zh-Hans/specs_ctrl.md delete mode 100644 doc/zh-Hans/specs_data.md rename doc/en/api.doxyfile => docs/Doxyfile (99%) create mode 100644 docs/Makefile create mode 100644 docs/api/api.rst create mode 100644 docs/api/device.rst create mode 100644 docs/api/enums.rst create mode 100644 docs/api/types.rst create mode 100644 docs/api/utils.rst rename {doc => docs}/arch.graphml (100%) rename {doc => docs}/arch.jpg (100%) create mode 100644 docs/conf.py create mode 100644 docs/index.rst create mode 100644 docs/make.bat create mode 100644 docs/requirements.txt diff --git a/.gitignore b/.gitignore index 69bcc41..6dac89a 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,8 @@ _build/ _install/ _output/ +/docs/_doxygen/ + /get-pip.py /*INFO* diff --git a/Makefile b/Makefile index f4057ff..67d3d54 100644 --- a/Makefile +++ b/Makefile @@ -62,22 +62,17 @@ all: init samples tools ros # doc -apidoc: +apidoc: cleandoc @$(call echo,Make $@) - @# @[ -e ./_install/include ] || $(MAKE) install - @[ -e /usr/local/include/mynteye ] || $(MAKE) install - @$(SH) ./doc/build.sh + @cd docs; make html opendoc: apidoc @$(call echo,Make $@) - @$(shell $(SH) ./doc/langs.sh 1); \ - for lang in "$${LANGS[@]}"; do \ - html=./doc/_output/$$lang/html/index.html; \ - [ -f "$$html" ] && $(SH) ./scripts/open.sh $$html; \ - done + @$(SH) ./scripts/open.sh docs/_build/html/index.html cleandoc: - @$(call rm,./doc/_output/) + @$(call rm,./docs/_build/) + @$(call rm,./docs/_doxygen/) .PHONY: apidoc opendoc cleandoc diff --git a/doc/build.sh b/doc/build.sh deleted file mode 100755 index 5160c61..0000000 --- a/doc/build.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/env bash -# Copyright 2018 Slightech Co., Ltd. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# _VERBOSE_=1 -# _TEST_=1 - -BASE_DIR=$(cd "$(dirname "$0")" && pwd) -ROOT_DIR=$(realpath "$BASE_DIR/..") -SCRIPTS_DIR="$ROOT_DIR/scripts" - -source "$SCRIPTS_DIR/common/echo.sh" -source "$SCRIPTS_DIR/common/mkdir.sh" -source "$SCRIPTS_DIR/common/detect.sh" - -_detect "doxygen" -_detect "pdflatex" 1 - -source "$BASE_DIR/langs.sh" -DOXYFILE="api.doxyfile" -OUTPUT="$BASE_DIR/_output" - -# \usepackage{CJKutf8} -# \begin{document} -# \begin{CJK}{UTF8}{gbsn} -# ... -# \end{CJK} -# \end{document} -_texcjk() { - tex="$1"; shift; - _echo_in "add cjk to $tex" - sed -i "" -E $'s/^\\\\begin{document}$/\\\\usepackage{CJKutf8}\\\n\\\\begin{document}\\\n\\\\begin{CJK}{UTF8}{gbsn}/g' $tex - sed -i "" -E $'s/^\\\\end{document}$/\\\\end{CJK}\\\n\\\\end{document}/g' $tex -} - -for lang in "${LANGS[@]}"; do - _echo_s "Build doc $lang" - [ -d "$BASE_DIR/$lang" ] || continue - cd "$BASE_DIR/$lang" - if [ -f "$DOXYFILE" ]; then - _mkdir "$OUTPUT/$lang" - _echo_i "doxygen $DOXYFILE" - doxygen $DOXYFILE - - version=`cat $DOXYFILE | grep -m1 "^PROJECT_NUMBER\s*=" | \ - sed -E "s/^.*=[[:space:]]*(.*)[[:space:]]*$/\1/g"` - - # html - if [ -d "$OUTPUT/$lang/html" ]; then - dirname="mynt-eye-s-sdk-apidoc"; \ - [ -n "$version" ] && dirname="$dirname-$version"; \ - dirname="$dirname-$lang" - cd "$OUTPUT/$lang" - [ -d "$dirname" ] && rm -rf "$dirname" - mv "html" "$dirname" && zip -r "$dirname.zip" "$dirname" - fi - - # latex - if [ $pdflatex_FOUND ] && [ -f "$OUTPUT/$lang/latex/Makefile" ]; then - _echo_in "doxygen make latex" - filename="mynt-eye-s-sdk-apidoc"; \ - [ -n "$version" ] && filename="$filename-$version"; \ - filename="$filename-$lang.pdf" - cd "$OUTPUT/$lang/latex" && _texcjk refman.tex && make - [ -f "refman.pdf" ] && mv "refman.pdf" "../$filename" - fi - - _echo_d "doxygen completed" - else - _echo_e "$DOXYFILE not found" - fi -done diff --git a/doc/en/mainpage.md b/doc/en/mainpage.md deleted file mode 100644 index 47a2dda..0000000 --- a/doc/en/mainpage.md +++ /dev/null @@ -1,11 +0,0 @@ -# MYNT EYE S SDK {#mainpage} - -* API Classes -* API Modules - * \link enumerations Enumerations\endlink - * \link datatypes Datatypes\endlink - * \link utils Utiliities\endlink - * \link calibration Intrinsics & Extrinsics\endlink -* Device Specifications - * @subpage specs_data - * @subpage specs_ctrl diff --git a/doc/en/spec_control_api.md b/doc/en/spec_control_api.md deleted file mode 100644 index 475bf06..0000000 --- a/doc/en/spec_control_api.md +++ /dev/null @@ -1,26 +0,0 @@ -# Control Protocols {#spec_control_api} - -There are two control modes, one is through UVC standard protocol, the other is through UVC custom protocol with extension unit. - -## Standard Protocol - -| Name | Field | Bytes | Default | Min | Max | Stored | Flash Address | Note | -| :--- | :---- | :---- | :------ | :-- | :-- | :----- | :------------ | :--- | -| Gain | gain | 2 | 24 | 0 | 48 | √ | 0x12 | valid if manual-exposure | -| Brightness | brightness/exposure_time | 2 | 120 | 0 | 240 | √ | 0x14 | valid if manual-exposure | -| Contrast | contrast/black_level_calibration | 2 | 127 | 0 | 255 | √ | 0x10 | valid if manual-exposure | - -## Custom Protocol - -| Name | Field | Bytes | Default | Min | Max | Stored | Flash Address | Channel | Note | -| :--- | :---- | :---- | :------ | :-- | :-- | :----- | :------------ | :------ | :----- | -| Frame rate | frame_rate | 2 | 25 | 10 | 60 | √ | 0x21 | XU_CAM_CTRL | values: {10,15,20,25,30,35,40,45,50,55,60} | -| IMU frequency | imu_frequency | 2 | 200 | 100 | 500 | √ | 0x23 | XU_CAM_CTRL | values: {100,200,250,333,500} | -| Exposure mode | exposure_mode | 1 | 0 | 0 | 1 | √ | 0x0F | XU_CAM_CTRL | 0: enable auto-exposure; 1: manual-exposure | -| Max gain | max_gain | 2 | 48 | 0 | 48 | √ | 0x1D | XU_CAM_CTRL | valid if auto-exposure | -| Max exposure time | max_exposure_time | 2 | 240 | 0 | 240 | √ | 0x1B | XU_CAM_CTRL | valid if auto-exposure | -| Desired brightness | desired_brightness | 2 | 192 | 0 | 255 | √ | 0x19 | XU_CAM_CTRL | valid if auto-exposure | -| IR control | ir_control | 1 | 0 | 0 | 160 | × | - | XU_CAM_CTRL | | -| HDR mode | hdr_mode | 1 | 0 | 0 | 1 | √ | 0x1F | XU_CAM_CTRL | 0: 10-bit; 1: 12-bit | -| Zero drift calibration | zero_drift_calibration | | - | - | - | × | - | XU_HALF_DUPLEX | | -| Erase chip | erase_chip | | - | - | - | × | - | XU_HALF_DUPLEX | | diff --git a/doc/en/spec_control_channel.md b/doc/en/spec_control_channel.md deleted file mode 100644 index 2e53b47..0000000 --- a/doc/en/spec_control_channel.md +++ /dev/null @@ -1,53 +0,0 @@ -# Control Channels {#spec_control_channel} - -| Name | Field | Address | Bandwidth | Node | -| :----- | :----- | :----- | :----- | :----- | -| Camera control channel | XU_CAM_CTRL_CHANNEL | 1 | 3 | | -| Half-Duplex channel | XU_HALF_DUPLEX_CHANNEL | 2 | 20 | | -| IMU write channel | XU_IMUDATA_WRITE_CHANNEL | 3 | 5 | | -| IMU read channel | XU_IMUDATA_READ_CHANNEL | 4 | 2000 | | -| File channel | XU_FILE_CHANNEL | 5 | 2000 | | - -## Camera Control Channel - -The channel provides get, set and query (min, max, default). - -## Half-Duplex Channel - -The channel only provides set, such as zero drift correction. - -## IMU Channel - -The channel is used to request and response IMU data, see @ref spec_imu_data. - -## File Channel - -The channel is used to read and write device information, image params, and IMU params. - -| Name | Header | Size | File | Checksum | -| :--- | :- | :--- | :--- | :-------- | -| Bytes | 1 | 2 | - | 1 | -| Type | uint8_t | uint16_t | - | uint8_t | -| Description | Flags | Content size | Content data | Checksum, XOR of all content bytes | - -| Header Bit Subscript | Description | -| :------------------- | :---------- | -| 0 | Device information | -| 1 | Image params | -| 2 | IMU params | -| 3~6 | Undefined | -| 7 | 0: Get; 1: Set | - -### File Content Packet - -| Name | ID | Size | Content | -| :--- | :- | :--- | :------ | -| Bytes | 1 | 2 | - | -| Type | uint8_t | uint16_t | - | -| Description | Content ID | Content size | Content data | - -| File | ID | Max Size | -| :--- | :- | :------- | -| Device information | 1 | 250 | -| Image params | 2 | 250 | -| IMU params | 4 | 500 | diff --git a/doc/en/spec_hardware_info.md b/doc/en/spec_hardware_info.md deleted file mode 100644 index 16bf998..0000000 --- a/doc/en/spec_hardware_info.md +++ /dev/null @@ -1,16 +0,0 @@ -# Device Information {#spec_hardware_info} - -| Name | Field | Fixed Value | USB Descriptor | UVC Extension Unit | Bytes | Note | -| :----- | :----- | :-------- | :-------------- | :----------------- | :-------- | :----- | -| VID | vid | 0x04B4 | √ | × | 2 | | -| PID | pid | 0x00F9 | √ | × | 2 | | -| Device name | name | MYNT-EYE-? | √ | √ Get | 16 | MYNT-EYE-S1000 | -| Serial number | serial_number | - | √ | √ Get | 16 | | -| Firmware version | firmware_version | - | √ | √ Get | 2 | major,minor | -| Hardware version | hardware_version | - | × | √ Get | 3 | major,minor,flag | -| Spec version | spec_version | - | × | √ Get | 2 | major,minor | -| Lens type | lens_type | - | × | √ Get/Set | 4 | vendor(2),product(2); default: 0 | -| IMU type | imu_type | - | × | √ Get/Set | 4 | vendor(2),product(2); default: 0 | -| Nominal baseline | nominal_baseline | - | × | √ Get/Set | 2 | unit: mm; default: 0 | -| Auxiliary chip version | auxiliary_chip_version | - | × | √ Get | 2 | major,minor | -| isp version | isp_version | - | × | √ Get | 2 | major,minor | diff --git a/doc/en/spec_image_data.md b/doc/en/spec_image_data.md deleted file mode 100644 index 4996d5c..0000000 --- a/doc/en/spec_image_data.md +++ /dev/null @@ -1,20 +0,0 @@ -# Image Data {#spec_image_data} - -| Name | Field | Unit | Bytes | Note | -| :----- | :----- | :----- | :-------- | :----- | -| Frame ID | frame_id | - | 2 | uint16_t; [0,65535] | -| Timestamp | timestamp | 10 us | 4 | uint32_t | -| Exposure Time | exposure_time | 10 us | 2 | uint16_t | - -## Image Packet - -| Name | Header | Size | Frame ID | Timestamp | Exposure Time | Checksum | -| :--- | :----- | :--- | :------- | :-------- | :------------ | :------- | -| Bytes | 1 | 1 | 2 | 4 | 2 | 1 | -| Type | uint8_t | uint8_t | uint16_t | uint32_t | uint16_t | uint8_t | -| Description | 0x3B | 0x08, content size | Frame ID | Timestamp | Exposure time | Checksum, XOR of all content bytes | - -* The image packet will be dropped, if checksum is incorrect. -* The accuracy of the time unit: 0.01 ms / 10 us. - * The timestamp could indicate 11.9 hours, it will accumulate again after overflow. -* The timestamp accumulation starts from the time of power-on, instead of opening. diff --git a/doc/en/spec_image_params.md b/doc/en/spec_image_params.md deleted file mode 100644 index 70990eb..0000000 --- a/doc/en/spec_image_params.md +++ /dev/null @@ -1,23 +0,0 @@ -# Image Params {#spec_image_params} - -## Image Intrinsics - -| Name | Field | Unit | Bytes | Note | -| :----- | :----- | :----- | :-------- | :----- | -| Image width | width | px | 2 | uint16_t; [0,65535] | -| Image height | height | px | 2 | uint16_t; [0,65535] | -| Focal length | fx | - | 8 | double | -| ^ | fy | - | 8 | double | -| Principal point | cx | - | 8 | double | -| ^ | cy | - | 8 | double | -| Distortion model | model | - | 1 | uint8_t; pinhole,... | -| Distortion coefficients | coeffs[5] | - | 40 | double; k1,k2,p1,p2,k3 | - -## Image Extrinsics - -Transformation matrix from left image to right image. - -| Name | Field | Unit | Bytes | Note | -| :----- | :----- | :----- | :-------- | :----- | -| Rotation matrix | rotation[3][3] | - | 72 | double | -| Translation vector | translation[3] | - | 24 | double | diff --git a/doc/en/spec_imu_data.md b/doc/en/spec_imu_data.md deleted file mode 100644 index b4edb31..0000000 --- a/doc/en/spec_imu_data.md +++ /dev/null @@ -1,42 +0,0 @@ -# IMU Data {#spec_imu_data} - -## IMU Request Packet - -| Name | Header | Serial Number | -| :--- | :----- | :------------ | -| Bytes | 1 | 4 | -| Type | uint8_t | uint32_t | -| Description | 0x5A | First request should be 0, otherwise the last one | - -## IMU Response Packet - -The IMU response packet contains multiple IMU packets, and each IMU packet contains multiple IMU segments. - -| Name | Header | State | Size | IMU Packets | Checksum | -| :--- | :----- | :---- | :--- | :---------- | :------- | -| Bytes | 1 | 1 | 2 | ... | 1 | -| Type | uint8_t | uint8_t | uint16_t | - | uint8_t | -| Description | 0x5B | 0 is success, others are failed | Content size | IMU packets | Checksum, XOR of all content bytes | - -### IMU Packet - -The IMU packet is an array of IMU datas. - -| Name | Serial Number | Timestamp | Count | IMU Datas | -| :--- | :------------ | :-------- | :---- | :-------- | -| Bytes | 4 | 4 | 1 | ... | -| Type | uint32_t | uint32_t | uint8_t | - | -| Description | Serial number | IMU basic timestamp | The number of IMU datas | IMU datas | - -### IMU Segment - -| Name | Offset | Frame ID | Accelerometer | Temperature | Gyroscope | -| :--- | :----- | :------- | :------------ | :---------- | :-------- | -| Bytes | 2 | 2 | 6 | 2 | 6 | -| Type | int16_t | uint16_t | int16_t * 3 | int16_t | int16_t * 3 | -| Description | The timestamp offset | Image frame ID | Accel x,y,z values | IMU temperature | Gyro x,y,z values | - -* Formula for converting the accel & gyro values to real ones: **real = data * range / 0x10000** . - * ``accel`` default ``range`` is **8 g**, ``gyro`` default ``range`` is **1000 deg/s**. -* Formula for converting the temperature to real value: **real = data / ratio + offset** . - * default ``ratio`` is **326.8**, default ``offset`` is **25℃**. diff --git a/doc/en/spec_imu_params.md b/doc/en/spec_imu_params.md deleted file mode 100644 index c4fcc4b..0000000 --- a/doc/en/spec_imu_params.md +++ /dev/null @@ -1,23 +0,0 @@ -# IMU Params {#spec_imu_params} - -## IMU Intrinsics - -| Name | Field | Unit | Bytes | Note | -| :----- | :----- | :----- | :-------- | :----- | -| Scale matrix | acc_scale[3][3] | - | 72 | double | -| ^ | gyro_scale[3][3] | - | 72 | double | -| Zero-drift | acc_drift[3] | - | 24 | double | -| ^ | gyro_drift[3] | - | 24 | double | -| Noise density | acc_noise[3] | - | 24 | double | -| ^ | gyro_noise[3] | - | 24 | double | -| Random walk | acc_bias[3] | - | 24 | double | -| ^ | gyro_bias[3] | - | 24 | double | - -## IMU Extrinsics - -Transformation matrix from left image to IMU. - -| Name | Field | Unit | Bytes | Note | -| :----- | :----- | :----- | :-------- | :----- | -| Rotation matrix | rotation[3][3] | - | 72 | double | -| Translation vector | translation[3] | - | 24 | double | diff --git a/doc/en/specs_ctrl.md b/doc/en/specs_ctrl.md deleted file mode 100644 index ba2e3c1..0000000 --- a/doc/en/specs_ctrl.md +++ /dev/null @@ -1,4 +0,0 @@ -# Device Control Specification {#specs_ctrl} - -* @subpage spec_control_api -* @subpage spec_control_channel diff --git a/doc/en/specs_data.md b/doc/en/specs_data.md deleted file mode 100644 index 8dee2a2..0000000 --- a/doc/en/specs_data.md +++ /dev/null @@ -1,7 +0,0 @@ -# Device Data Specification {#specs_data} - -* @subpage spec_hardware_info -* @subpage spec_image_params -* @subpage spec_imu_params -* @subpage spec_image_data -* @subpage spec_imu_data diff --git a/doc/langs.sh b/doc/langs.sh deleted file mode 100644 index 5db2caf..0000000 --- a/doc/langs.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/usr/bin/env bash -# Copyright 2018 Slightech Co., Ltd. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -LANGS=( - en - zh-Hans -) -[ $# -gt 0 ] && echo "LANGS=(${LANGS[@]})" diff --git a/doc/static/custom.css b/doc/static/custom.css deleted file mode 100644 index f2c2edf..0000000 --- a/doc/static/custom.css +++ /dev/null @@ -1,3 +0,0 @@ -#projectlogo img { - margin: 1em 0.5em 1em 1em; -} diff --git a/doc/static/images/icon.png b/doc/static/images/icon.png deleted file mode 100644 index 21d678ef3f377a404419d096b06c97e069f869bc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17927 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%0A+AYP9vwe{ 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 diff --git a/doc/static/images/make_install.png b/doc/static/images/make_install.png deleted file mode 100644 index e6da5f4935d2e85c00569ecd8a9320e64e885a8f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32704 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�Fc=xp?~@$|;Z96uUK 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

0P@uv)>5 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 diff --git a/doc/zh-Hans/api.doxyfile b/doc/zh-Hans/api.doxyfile deleted file mode 100644 index 2bcc573..0000000 --- a/doc/zh-Hans/api.doxyfile +++ /dev/null @@ -1,2497 +0,0 @@ -# Doxyfile 1.8.14 - -# This file describes the settings to be used by the documentation system -# doxygen (www.doxygen.org) for a project. -# -# All text after a double hash (##) is considered a comment and is placed in -# front of the TAG it is preceding. -# -# All text after a single hash (#) is considered a comment and will be ignored. -# The format is: -# TAG = value [value, ...] -# For lists, items can also be appended using: -# TAG += value [value, ...] -# Values that contain spaces should be placed between quotes (\" \"). - -#--------------------------------------------------------------------------- -# Project related configuration options -#--------------------------------------------------------------------------- - -# This tag specifies the encoding used for all characters in the config file -# that follow. The default is UTF-8 which is also the encoding used for all text -# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv -# built into libc) for the transcoding. See -# https://www.gnu.org/software/libiconv/ for the list of possible encodings. -# The default value is: UTF-8. - -DOXYFILE_ENCODING = UTF-8 - -# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by -# double-quotes, unless you are using Doxywizard) that should identify the -# project for which the documentation is generated. This name is used in the -# title of most generated pages and in a few other places. -# The default value is: My Project. - -PROJECT_NAME = "MYNT EYE S SDK" - -# The PROJECT_NUMBER tag can be used to enter a project or revision number. This -# could be handy for archiving the generated documentation or if some version -# control system is used. - -PROJECT_NUMBER = 2.3.3 - -# Using the PROJECT_BRIEF tag one can provide an optional one line description -# for a project that appears at the top of each page and should give viewer a -# quick idea about the purpose of the project. Keep the description short. - -PROJECT_BRIEF = http://www.myntai.com/mynteye/standard - -# With the PROJECT_LOGO tag one can specify a logo or an icon that is included -# in the documentation. The maximum height of the logo should not exceed 55 -# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy -# the logo to the output directory. - -PROJECT_LOGO = ../static/images/icon.png - -# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path -# into which the generated documentation will be written. If a relative path is -# entered, it will be relative to the location where doxygen was started. If -# left blank the current directory will be used. - -OUTPUT_DIRECTORY = ../_output/zh-Hans - -# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub- -# directories (in 2 levels) under the output directory of each output format and -# will distribute the generated files over these directories. Enabling this -# option can be useful when feeding doxygen a huge amount of source files, where -# putting all generated files in the same directory would otherwise causes -# performance problems for the file system. -# The default value is: NO. - -CREATE_SUBDIRS = NO - -# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII -# characters to appear in the names of generated files. If set to NO, non-ASCII -# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode -# U+3044. -# The default value is: NO. - -ALLOW_UNICODE_NAMES = NO - -# The OUTPUT_LANGUAGE tag is used to specify the language in which all -# documentation generated by doxygen is written. Doxygen will use this -# information to generate all constant output in the proper language. -# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese, -# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States), -# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian, -# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages), -# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian, -# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian, -# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish, -# Ukrainian and Vietnamese. -# The default value is: English. - -OUTPUT_LANGUAGE = Chinese - -# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member -# descriptions after the members that are listed in the file and class -# documentation (similar to Javadoc). Set to NO to disable this. -# The default value is: YES. - -BRIEF_MEMBER_DESC = YES - -# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief -# description of a member or function before the detailed description -# -# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the -# brief descriptions will be completely suppressed. -# The default value is: YES. - -REPEAT_BRIEF = YES - -# This tag implements a quasi-intelligent brief description abbreviator that is -# used to form the text in various listings. Each string in this list, if found -# as the leading text of the brief description, will be stripped from the text -# and the result, after processing the whole list, is used as the annotated -# text. Otherwise, the brief description is used as-is. If left blank, the -# following values are used ($name is automatically replaced with the name of -# the entity):The $name class, The $name widget, The $name file, is, provides, -# specifies, contains, represents, a, an and the. - -ABBREVIATE_BRIEF = "The $name class" \ - "The $name widget" \ - "The $name file" \ - is \ - provides \ - specifies \ - contains \ - represents \ - a \ - an \ - the - -# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then -# doxygen will generate a detailed section even if there is only a brief -# description. -# The default value is: NO. - -ALWAYS_DETAILED_SEC = NO - -# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all -# inherited members of a class in the documentation of that class as if those -# members were ordinary class members. Constructors, destructors and assignment -# operators of the base classes will not be shown. -# The default value is: NO. - -INLINE_INHERITED_MEMB = NO - -# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path -# before files name in the file list and in the header files. If set to NO the -# shortest path that makes the file name unique will be used -# The default value is: YES. - -FULL_PATH_NAMES = YES - -# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path. -# Stripping is only done if one of the specified strings matches the left-hand -# part of the path. The tag can be used to show relative paths in the file list. -# If left blank the directory from which doxygen is run is used as the path to -# strip. -# -# Note that you can specify absolute paths here, but also relative paths, which -# will be relative from the directory where doxygen is started. -# This tag requires that the tag FULL_PATH_NAMES is set to YES. - -STRIP_FROM_PATH = - -# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the -# path mentioned in the documentation of a class, which tells the reader which -# header file to include in order to use a class. If left blank only the name of -# the header file containing the class definition is used. Otherwise one should -# specify the list of include paths that are normally passed to the compiler -# using the -I flag. - -STRIP_FROM_INC_PATH = - -# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but -# less readable) file names. This can be useful is your file systems doesn't -# support long names like on DOS, Mac, or CD-ROM. -# The default value is: NO. - -SHORT_NAMES = NO - -# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the -# first line (until the first dot) of a Javadoc-style comment as the brief -# description. If set to NO, the Javadoc-style will behave just like regular Qt- -# style comments (thus requiring an explicit @brief command for a brief -# description.) -# The default value is: NO. - -JAVADOC_AUTOBRIEF = YES - -# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first -# line (until the first dot) of a Qt-style comment as the brief description. If -# set to NO, the Qt-style will behave just like regular Qt-style comments (thus -# requiring an explicit \brief command for a brief description.) -# The default value is: NO. - -QT_AUTOBRIEF = NO - -# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a -# multi-line C++ special comment block (i.e. a block of //! or /// comments) as -# a brief description. This used to be the default behavior. The new default is -# to treat a multi-line C++ comment block as a detailed description. Set this -# tag to YES if you prefer the old behavior instead. -# -# Note that setting this tag to YES also means that rational rose comments are -# not recognized any more. -# The default value is: NO. - -MULTILINE_CPP_IS_BRIEF = NO - -# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the -# documentation from any documented member that it re-implements. -# The default value is: YES. - -INHERIT_DOCS = YES - -# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new -# page for each member. If set to NO, the documentation of a member will be part -# of the file/class/namespace that contains it. -# The default value is: NO. - -SEPARATE_MEMBER_PAGES = NO - -# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen -# uses this value to replace tabs by spaces in code fragments. -# Minimum value: 1, maximum value: 16, default value: 4. - -TAB_SIZE = 2 - -# This tag can be used to specify a number of aliases that act as commands in -# the documentation. An alias has the form: -# name=value -# For example adding -# "sideeffect=@par Side Effects:\n" -# will allow you to put the command \sideeffect (or @sideeffect) in the -# documentation, which will result in a user-defined paragraph with heading -# "Side Effects:". You can put \n's in the value part of an alias to insert -# newlines (in the resulting output). You can put ^^ in the value part of an -# alias to insert a newline as if a physical newline was in the original file. - -ALIASES = - -# This tag can be used to specify a number of word-keyword mappings (TCL only). -# A mapping has the form "name=value". For example adding "class=itcl::class" -# will allow you to use the command class in the itcl::class meaning. - -TCL_SUBST = - -# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources -# only. Doxygen will then generate output that is more tailored for C. For -# instance, some of the names that are used will be different. The list of all -# members will be omitted, etc. -# The default value is: NO. - -OPTIMIZE_OUTPUT_FOR_C = NO - -# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or -# Python sources only. Doxygen will then generate output that is more tailored -# for that language. For instance, namespaces will be presented as packages, -# qualified scopes will look different, etc. -# The default value is: NO. - -OPTIMIZE_OUTPUT_JAVA = NO - -# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran -# sources. Doxygen will then generate output that is tailored for Fortran. -# The default value is: NO. - -OPTIMIZE_FOR_FORTRAN = NO - -# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL -# sources. Doxygen will then generate output that is tailored for VHDL. -# The default value is: NO. - -OPTIMIZE_OUTPUT_VHDL = NO - -# Doxygen selects the parser to use depending on the extension of the files it -# parses. With this tag you can assign which parser to use for a given -# extension. Doxygen has a built-in mapping, but you can override or extend it -# using this tag. The format is ext=language, where ext is a file extension, and -# language is one of the parsers supported by doxygen: IDL, Java, Javascript, -# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran: -# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran: -# Fortran. In the later case the parser tries to guess whether the code is fixed -# or free formatted code, this is the default for Fortran type files), VHDL. For -# instance to make doxygen treat .inc files as Fortran files (default is PHP), -# and .f files as C (default is Fortran), use: inc=Fortran f=C. -# -# Note: For files without extension you can use no_extension as a placeholder. -# -# Note that for custom extensions you also need to set FILE_PATTERNS otherwise -# the files are not read by doxygen. - -EXTENSION_MAPPING = - -# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments -# according to the Markdown format, which allows for more readable -# documentation. See http://daringfireball.net/projects/markdown/ for details. -# The output of markdown processing is further processed by doxygen, so you can -# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in -# case of backward compatibilities issues. -# The default value is: YES. - -MARKDOWN_SUPPORT = YES - -# When the TOC_INCLUDE_HEADINGS tag is set to a non-zero value, all headings up -# to that level are automatically included in the table of contents, even if -# they do not have an id attribute. -# Note: This feature currently applies only to Markdown headings. -# Minimum value: 0, maximum value: 99, default value: 0. -# This tag requires that the tag MARKDOWN_SUPPORT is set to YES. - -TOC_INCLUDE_HEADINGS = 0 - -# When enabled doxygen tries to link words that correspond to documented -# classes, or namespaces to their corresponding documentation. Such a link can -# be prevented in individual cases by putting a % sign in front of the word or -# globally by setting AUTOLINK_SUPPORT to NO. -# The default value is: YES. - -AUTOLINK_SUPPORT = YES - -# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want -# to include (a tag file for) the STL sources as input, then you should set this -# tag to YES in order to let doxygen match functions declarations and -# definitions whose arguments contain STL classes (e.g. func(std::string); -# versus func(std::string) {}). This also make the inheritance and collaboration -# diagrams that involve STL classes more complete and accurate. -# The default value is: NO. - -BUILTIN_STL_SUPPORT = NO - -# If you use Microsoft's C++/CLI language, you should set this option to YES to -# enable parsing support. -# The default value is: NO. - -CPP_CLI_SUPPORT = NO - -# Set the SIP_SUPPORT tag to YES if your project consists of sip (see: -# https://www.riverbankcomputing.com/software/sip/intro) sources only. Doxygen -# will parse them like normal C++ but will assume all classes use public instead -# of private inheritance when no explicit protection keyword is present. -# The default value is: NO. - -SIP_SUPPORT = NO - -# For Microsoft's IDL there are propget and propput attributes to indicate -# getter and setter methods for a property. Setting this option to YES will make -# doxygen to replace the get and set methods by a property in the documentation. -# This will only work if the methods are indeed getting or setting a simple -# type. If this is not the case, or you want to show the methods anyway, you -# should set this option to NO. -# The default value is: YES. - -IDL_PROPERTY_SUPPORT = YES - -# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC -# tag is set to YES then doxygen will reuse the documentation of the first -# member in the group (if any) for the other members of the group. By default -# all members of a group must be documented explicitly. -# The default value is: NO. - -DISTRIBUTE_GROUP_DOC = YES - -# If one adds a struct or class to a group and this option is enabled, then also -# any nested class or struct is added to the same group. By default this option -# is disabled and one has to add nested compounds explicitly via \ingroup. -# The default value is: NO. - -GROUP_NESTED_COMPOUNDS = NO - -# Set the SUBGROUPING tag to YES to allow class member groups of the same type -# (for instance a group of public functions) to be put as a subgroup of that -# type (e.g. under the Public Functions section). Set it to NO to prevent -# subgrouping. Alternatively, this can be done per class using the -# \nosubgrouping command. -# The default value is: YES. - -SUBGROUPING = YES - -# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions -# are shown inside the group in which they are included (e.g. using \ingroup) -# instead of on a separate page (for HTML and Man pages) or section (for LaTeX -# and RTF). -# -# Note that this feature does not work in combination with -# SEPARATE_MEMBER_PAGES. -# The default value is: NO. - -INLINE_GROUPED_CLASSES = NO - -# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions -# with only public data fields or simple typedef fields will be shown inline in -# the documentation of the scope in which they are defined (i.e. file, -# namespace, or group documentation), provided this scope is documented. If set -# to NO, structs, classes, and unions are shown on a separate page (for HTML and -# Man pages) or section (for LaTeX and RTF). -# The default value is: NO. - -INLINE_SIMPLE_STRUCTS = NO - -# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or -# enum is documented as struct, union, or enum with the name of the typedef. So -# typedef struct TypeS {} TypeT, will appear in the documentation as a struct -# with name TypeT. When disabled the typedef will appear as a member of a file, -# namespace, or class. And the struct will be named TypeS. This can typically be -# useful for C code in case the coding convention dictates that all compound -# types are typedef'ed and only the typedef is referenced, never the tag name. -# The default value is: NO. - -TYPEDEF_HIDES_STRUCT = NO - -# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This -# cache is used to resolve symbols given their name and scope. Since this can be -# an expensive process and often the same symbol appears multiple times in the -# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small -# doxygen will become slower. If the cache is too large, memory is wasted. The -# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range -# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536 -# symbols. At the end of a run doxygen will report the cache usage and suggest -# the optimal cache size from a speed point of view. -# Minimum value: 0, maximum value: 9, default value: 0. - -LOOKUP_CACHE_SIZE = 0 - -#--------------------------------------------------------------------------- -# Build related configuration options -#--------------------------------------------------------------------------- - -# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in -# documentation are documented, even if no documentation was available. Private -# class members and static file members will be hidden unless the -# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES. -# Note: This will also disable the warnings about undocumented members that are -# normally produced when WARNINGS is set to YES. -# The default value is: NO. - -EXTRACT_ALL = NO - -# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will -# be included in the documentation. -# The default value is: NO. - -EXTRACT_PRIVATE = NO - -# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal -# scope will be included in the documentation. -# The default value is: NO. - -EXTRACT_PACKAGE = NO - -# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be -# included in the documentation. -# The default value is: NO. - -EXTRACT_STATIC = NO - -# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined -# locally in source files will be included in the documentation. If set to NO, -# only classes defined in header files are included. Does not have any effect -# for Java sources. -# The default value is: YES. - -EXTRACT_LOCAL_CLASSES = YES - -# This flag is only useful for Objective-C code. If set to YES, local methods, -# which are defined in the implementation section but not in the interface are -# included in the documentation. If set to NO, only methods in the interface are -# included. -# The default value is: NO. - -EXTRACT_LOCAL_METHODS = NO - -# If this flag is set to YES, the members of anonymous namespaces will be -# extracted and appear in the documentation as a namespace called -# 'anonymous_namespace{file}', where file will be replaced with the base name of -# the file that contains the anonymous namespace. By default anonymous namespace -# are hidden. -# The default value is: NO. - -EXTRACT_ANON_NSPACES = NO - -# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all -# undocumented members inside documented classes or files. If set to NO these -# members will be included in the various overviews, but no documentation -# section is generated. This option has no effect if EXTRACT_ALL is enabled. -# The default value is: NO. - -HIDE_UNDOC_MEMBERS = YES - -# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all -# undocumented classes that are normally visible in the class hierarchy. If set -# to NO, these classes will be included in the various overviews. This option -# has no effect if EXTRACT_ALL is enabled. -# The default value is: NO. - -HIDE_UNDOC_CLASSES = NO - -# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend -# (class|struct|union) declarations. If set to NO, these declarations will be -# included in the documentation. -# The default value is: NO. - -HIDE_FRIEND_COMPOUNDS = YES - -# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any -# documentation blocks found inside the body of a function. If set to NO, these -# blocks will be appended to the function's detailed documentation block. -# The default value is: NO. - -HIDE_IN_BODY_DOCS = NO - -# The INTERNAL_DOCS tag determines if documentation that is typed after a -# \internal command is included. If the tag is set to NO then the documentation -# will be excluded. Set it to YES to include the internal documentation. -# The default value is: NO. - -INTERNAL_DOCS = NO - -# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file -# names in lower-case letters. If set to YES, upper-case letters are also -# allowed. This is useful if you have classes or files whose names only differ -# in case and if your file system supports case sensitive file names. Windows -# and Mac users are advised to set this option to NO. -# The default value is: system dependent. - -CASE_SENSE_NAMES = NO - -# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with -# their full class and namespace scopes in the documentation. If set to YES, the -# scope will be hidden. -# The default value is: NO. - -HIDE_SCOPE_NAMES = NO - -# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will -# append additional text to a page's title, such as Class Reference. If set to -# YES the compound reference will be hidden. -# The default value is: NO. - -HIDE_COMPOUND_REFERENCE= NO - -# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of -# the files that are included by a file in the documentation of that file. -# The default value is: YES. - -SHOW_INCLUDE_FILES = NO - -# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each -# grouped member an include statement to the documentation, telling the reader -# which file to include in order to use the member. -# The default value is: NO. - -SHOW_GROUPED_MEMB_INC = NO - -# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include -# files with double quotes in the documentation rather than with sharp brackets. -# The default value is: NO. - -FORCE_LOCAL_INCLUDES = NO - -# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the -# documentation for inline members. -# The default value is: YES. - -INLINE_INFO = YES - -# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the -# (detailed) documentation of file and class members alphabetically by member -# name. If set to NO, the members will appear in declaration order. -# The default value is: YES. - -SORT_MEMBER_DOCS = YES - -# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief -# descriptions of file, namespace and class members alphabetically by member -# name. If set to NO, the members will appear in declaration order. Note that -# this will also influence the order of the classes in the class list. -# The default value is: NO. - -SORT_BRIEF_DOCS = NO - -# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the -# (brief and detailed) documentation of class members so that constructors and -# destructors are listed first. If set to NO the constructors will appear in the -# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS. -# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief -# member documentation. -# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting -# detailed member documentation. -# The default value is: NO. - -SORT_MEMBERS_CTORS_1ST = NO - -# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy -# of group names into alphabetical order. If set to NO the group names will -# appear in their defined order. -# The default value is: NO. - -SORT_GROUP_NAMES = NO - -# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by -# fully-qualified names, including namespaces. If set to NO, the class list will -# be sorted only by class name, not including the namespace part. -# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. -# Note: This option applies only to the class list, not to the alphabetical -# list. -# The default value is: NO. - -SORT_BY_SCOPE_NAME = NO - -# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper -# type resolution of all parameters of a function it will reject a match between -# the prototype and the implementation of a member function even if there is -# only one candidate or it is obvious which candidate to choose by doing a -# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still -# accept a match between prototype and implementation in such cases. -# The default value is: NO. - -STRICT_PROTO_MATCHING = NO - -# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo -# list. This list is created by putting \todo commands in the documentation. -# The default value is: YES. - -GENERATE_TODOLIST = YES - -# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test -# list. This list is created by putting \test commands in the documentation. -# The default value is: YES. - -GENERATE_TESTLIST = YES - -# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug -# list. This list is created by putting \bug commands in the documentation. -# The default value is: YES. - -GENERATE_BUGLIST = YES - -# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO) -# the deprecated list. This list is created by putting \deprecated commands in -# the documentation. -# The default value is: YES. - -GENERATE_DEPRECATEDLIST= YES - -# The ENABLED_SECTIONS tag can be used to enable conditional documentation -# sections, marked by \if ... \endif and \cond -# ... \endcond blocks. - -ENABLED_SECTIONS = - -# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the -# initial value of a variable or macro / define can have for it to appear in the -# documentation. If the initializer consists of more lines than specified here -# it will be hidden. Use a value of 0 to hide initializers completely. The -# appearance of the value of individual variables and macros / defines can be -# controlled using \showinitializer or \hideinitializer command in the -# documentation regardless of this setting. -# Minimum value: 0, maximum value: 10000, default value: 30. - -MAX_INITIALIZER_LINES = 30 - -# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at -# the bottom of the documentation of classes and structs. If set to YES, the -# list will mention the files that were used to generate the documentation. -# The default value is: YES. - -SHOW_USED_FILES = NO - -# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This -# will remove the Files entry from the Quick Index and from the Folder Tree View -# (if specified). -# The default value is: YES. - -SHOW_FILES = NO - -# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces -# page. This will remove the Namespaces entry from the Quick Index and from the -# Folder Tree View (if specified). -# The default value is: YES. - -SHOW_NAMESPACES = NO - -# The FILE_VERSION_FILTER tag can be used to specify a program or script that -# doxygen should invoke to get the current version for each file (typically from -# the version control system). Doxygen will invoke the program by executing (via -# popen()) the command command input-file, where command is the value of the -# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided -# by doxygen. Whatever the program writes to standard output is used as the file -# version. For an example see the documentation. - -FILE_VERSION_FILTER = - -# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed -# by doxygen. The layout file controls the global structure of the generated -# output files in an output format independent way. To create the layout file -# that represents doxygen's defaults, run doxygen with the -l option. You can -# optionally specify a file name after the option, if omitted DoxygenLayout.xml -# will be used as the name of the layout file. -# -# Note that if you run doxygen from a directory containing a file called -# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE -# tag is left empty. - -LAYOUT_FILE = - -# The CITE_BIB_FILES tag can be used to specify one or more bib files containing -# the reference definitions. This must be a list of .bib files. The .bib -# extension is automatically appended if omitted. This requires the bibtex tool -# to be installed. See also https://en.wikipedia.org/wiki/BibTeX for more info. -# For LaTeX the style of the bibliography can be controlled using -# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the -# search path. See also \cite for info how to create references. - -CITE_BIB_FILES = - -#--------------------------------------------------------------------------- -# Configuration options related to warning and progress messages -#--------------------------------------------------------------------------- - -# The QUIET tag can be used to turn on/off the messages that are generated to -# standard output by doxygen. If QUIET is set to YES this implies that the -# messages are off. -# The default value is: NO. - -QUIET = NO - -# The WARNINGS tag can be used to turn on/off the warning messages that are -# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES -# this implies that the warnings are on. -# -# Tip: Turn warnings on while writing the documentation. -# The default value is: YES. - -WARNINGS = YES - -# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate -# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag -# will automatically be disabled. -# The default value is: YES. - -WARN_IF_UNDOCUMENTED = YES - -# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for -# potential errors in the documentation, such as not documenting some parameters -# in a documented function, or documenting parameters that don't exist or using -# markup commands wrongly. -# The default value is: YES. - -WARN_IF_DOC_ERROR = YES - -# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that -# are documented, but have no documentation for their parameters or return -# value. If set to NO, doxygen will only warn about wrong or incomplete -# parameter documentation, but not about the absence of documentation. -# The default value is: NO. - -WARN_NO_PARAMDOC = NO - -# If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when -# a warning is encountered. -# The default value is: NO. - -WARN_AS_ERROR = NO - -# The WARN_FORMAT tag determines the format of the warning messages that doxygen -# can produce. The string should contain the $file, $line, and $text tags, which -# will be replaced by the file and line number from which the warning originated -# and the warning text. Optionally the format may contain $version, which will -# be replaced by the version of the file (if it could be obtained via -# FILE_VERSION_FILTER) -# The default value is: $file:$line: $text. - -WARN_FORMAT = "$file:$line: $text" - -# The WARN_LOGFILE tag can be used to specify a file to which warning and error -# messages should be written. If left blank the output is written to standard -# error (stderr). - -WARN_LOGFILE = - -#--------------------------------------------------------------------------- -# Configuration options related to the input files -#--------------------------------------------------------------------------- - -# The INPUT tag is used to specify the files and/or directories that contain -# documented source files. You may enter file names like myfile.cpp or -# directories like /usr/src/myproject. Separate the files or directories with -# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING -# Note: If this tag is empty the current directory is searched. - -INPUT = mainpage.md \ - specs_data.md \ - spec_hardware_info.md \ - spec_image_params.md \ - spec_imu_params.md \ - spec_image_data.md \ - spec_imu_data.md \ - specs_ctrl.md \ - spec_control_api.md \ - spec_control_channel.md \ - /usr/local/include/mynteye - -# This tag can be used to specify the character encoding of the source files -# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses -# libiconv (or the iconv built into libc) for the transcoding. See the libiconv -# documentation (see: https://www.gnu.org/software/libiconv/) for the list of -# possible encodings. -# The default value is: UTF-8. - -INPUT_ENCODING = UTF-8 - -# If the value of the INPUT tag contains directories, you can use the -# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and -# *.h) to filter out the source-files in the directories. -# -# Note that for custom extensions or not directly supported extensions you also -# need to set EXTENSION_MAPPING for the extension otherwise the files are not -# read by doxygen. -# -# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp, -# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, -# *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, -# *.m, *.markdown, *.md, *.mm, *.dox, *.py, *.pyw, *.f90, *.f95, *.f03, *.f08, -# *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf and *.qsf. - -FILE_PATTERNS = *.c \ - *.cc \ - *.cxx \ - *.cpp \ - *.c++ \ - *.java \ - *.ii \ - *.ixx \ - *.ipp \ - *.i++ \ - *.inl \ - *.idl \ - *.ddl \ - *.odl \ - *.h \ - *.hh \ - *.hxx \ - *.hpp \ - *.h++ \ - *.cs \ - *.d \ - *.php \ - *.php4 \ - *.php5 \ - *.phtml \ - *.inc \ - *.m \ - *.markdown \ - *.md \ - *.mm \ - *.dox \ - *.py \ - *.pyw \ - *.f90 \ - *.f95 \ - *.f03 \ - *.f08 \ - *.f \ - *.for \ - *.tcl \ - *.vhd \ - *.vhdl \ - *.ucf \ - *.qsf - -# The RECURSIVE tag can be used to specify whether or not subdirectories should -# be searched for input files as well. -# The default value is: NO. - -RECURSIVE = YES - -# The EXCLUDE tag can be used to specify files and/or directories that should be -# excluded from the INPUT source files. This way you can easily exclude a -# subdirectory from a directory tree whose root is specified with the INPUT tag. -# -# Note that relative paths are relative to the directory from which doxygen is -# run. - -EXCLUDE = /usr/local/include/mynteye/logger.h \ - /usr/local/include/mynteye/miniglog.h - -# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or -# directories that are symbolic links (a Unix file system feature) are excluded -# from the input. -# The default value is: NO. - -EXCLUDE_SYMLINKS = NO - -# If the value of the INPUT tag contains directories, you can use the -# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude -# certain files from those directories. -# -# Note that the wildcards are matched against the file with absolute path, so to -# exclude all test directories for example use the pattern */test/* - -EXCLUDE_PATTERNS = - -# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names -# (namespaces, classes, functions, etc.) that should be excluded from the -# output. The symbol name can be a fully qualified name, a word, or if the -# wildcard * is used, a substring. Examples: ANamespace, AClass, -# AClass::ANamespace, ANamespace::*Test -# -# Note that the wildcards are matched against the file with absolute path, so to -# exclude all test directories use the pattern */test/* - -EXCLUDE_SYMBOLS = - -# The EXAMPLE_PATH tag can be used to specify one or more files or directories -# that contain example code fragments that are included (see the \include -# command). - -EXAMPLE_PATH = - -# If the value of the EXAMPLE_PATH tag contains directories, you can use the -# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and -# *.h) to filter out the source-files in the directories. If left blank all -# files are included. - -EXAMPLE_PATTERNS = * - -# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be -# searched for input files to be used with the \include or \dontinclude commands -# irrespective of the value of the RECURSIVE tag. -# The default value is: NO. - -EXAMPLE_RECURSIVE = NO - -# The IMAGE_PATH tag can be used to specify one or more files or directories -# that contain images that are to be included in the documentation (see the -# \image command). - -IMAGE_PATH = ../static/images - -# The INPUT_FILTER tag can be used to specify a program that doxygen should -# invoke to filter for each input file. Doxygen will invoke the filter program -# by executing (via popen()) the command: -# -# -# -# where is the value of the INPUT_FILTER tag, and is the -# name of an input file. Doxygen will then use the output that the filter -# program writes to standard output. If FILTER_PATTERNS is specified, this tag -# will be ignored. -# -# Note that the filter must not add or remove lines; it is applied before the -# code is scanned, but not when the output code is generated. If lines are added -# or removed, the anchors will not be placed correctly. -# -# Note that for custom extensions or not directly supported extensions you also -# need to set EXTENSION_MAPPING for the extension otherwise the files are not -# properly processed by doxygen. - -INPUT_FILTER = - -# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern -# basis. Doxygen will compare the file name with each pattern and apply the -# filter if there is a match. The filters are a list of the form: pattern=filter -# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how -# filters are used. If the FILTER_PATTERNS tag is empty or if none of the -# patterns match the file name, INPUT_FILTER is applied. -# -# Note that for custom extensions or not directly supported extensions you also -# need to set EXTENSION_MAPPING for the extension otherwise the files are not -# properly processed by doxygen. - -FILTER_PATTERNS = - -# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using -# INPUT_FILTER) will also be used to filter the input files that are used for -# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES). -# The default value is: NO. - -FILTER_SOURCE_FILES = NO - -# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file -# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and -# it is also possible to disable source filtering for a specific pattern using -# *.ext= (so without naming a filter). -# This tag requires that the tag FILTER_SOURCE_FILES is set to YES. - -FILTER_SOURCE_PATTERNS = - -# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that -# is part of the input, its contents will be placed on the main page -# (index.html). This can be useful if you have a project on for instance GitHub -# and want to reuse the introduction page also for the doxygen output. - -USE_MDFILE_AS_MAINPAGE = - -#--------------------------------------------------------------------------- -# Configuration options related to source browsing -#--------------------------------------------------------------------------- - -# If the SOURCE_BROWSER tag is set to YES then a list of source files will be -# generated. Documented entities will be cross-referenced with these sources. -# -# Note: To get rid of all source code in the generated output, make sure that -# also VERBATIM_HEADERS is set to NO. -# The default value is: NO. - -SOURCE_BROWSER = NO - -# Setting the INLINE_SOURCES tag to YES will include the body of functions, -# classes and enums directly into the documentation. -# The default value is: NO. - -INLINE_SOURCES = NO - -# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any -# special comment blocks from generated source code fragments. Normal C, C++ and -# Fortran comments will always remain visible. -# The default value is: YES. - -STRIP_CODE_COMMENTS = YES - -# If the REFERENCED_BY_RELATION tag is set to YES then for each documented -# function all documented functions referencing it will be listed. -# The default value is: NO. - -REFERENCED_BY_RELATION = NO - -# If the REFERENCES_RELATION tag is set to YES then for each documented function -# all documented entities called/used by that function will be listed. -# The default value is: NO. - -REFERENCES_RELATION = NO - -# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set -# to YES then the hyperlinks from functions in REFERENCES_RELATION and -# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will -# link to the documentation. -# The default value is: YES. - -REFERENCES_LINK_SOURCE = YES - -# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the -# source code will show a tooltip with additional information such as prototype, -# brief description and links to the definition and documentation. Since this -# will make the HTML file larger and loading of large files a bit slower, you -# can opt to disable this feature. -# The default value is: YES. -# This tag requires that the tag SOURCE_BROWSER is set to YES. - -SOURCE_TOOLTIPS = YES - -# If the USE_HTAGS tag is set to YES then the references to source code will -# point to the HTML generated by the htags(1) tool instead of doxygen built-in -# source browser. The htags tool is part of GNU's global source tagging system -# (see https://www.gnu.org/software/global/global.html). You will need version -# 4.8.6 or higher. -# -# To use it do the following: -# - Install the latest version of global -# - Enable SOURCE_BROWSER and USE_HTAGS in the config file -# - Make sure the INPUT points to the root of the source tree -# - Run doxygen as normal -# -# Doxygen will invoke htags (and that will in turn invoke gtags), so these -# tools must be available from the command line (i.e. in the search path). -# -# The result: instead of the source browser generated by doxygen, the links to -# source code will now point to the output of htags. -# The default value is: NO. -# This tag requires that the tag SOURCE_BROWSER is set to YES. - -USE_HTAGS = NO - -# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a -# verbatim copy of the header file for each class for which an include is -# specified. Set to NO to disable this. -# See also: Section \class. -# The default value is: YES. - -VERBATIM_HEADERS = NO - -#--------------------------------------------------------------------------- -# Configuration options related to the alphabetical class index -#--------------------------------------------------------------------------- - -# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all -# compounds will be generated. Enable this if the project contains a lot of -# classes, structs, unions or interfaces. -# The default value is: YES. - -ALPHABETICAL_INDEX = YES - -# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in -# which the alphabetical index list will be split. -# Minimum value: 1, maximum value: 20, default value: 5. -# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. - -COLS_IN_ALPHA_INDEX = 5 - -# In case all classes in a project start with a common prefix, all classes will -# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag -# can be used to specify a prefix (or a list of prefixes) that should be ignored -# while generating the index headers. -# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. - -IGNORE_PREFIX = - -#--------------------------------------------------------------------------- -# Configuration options related to the HTML output -#--------------------------------------------------------------------------- - -# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output -# The default value is: YES. - -GENERATE_HTML = YES - -# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a -# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of -# it. -# The default directory is: html. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_OUTPUT = html - -# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each -# generated HTML page (for example: .htm, .php, .asp). -# The default value is: .html. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_FILE_EXTENSION = .html - -# The HTML_HEADER tag can be used to specify a user-defined HTML header file for -# each generated HTML page. If the tag is left blank doxygen will generate a -# standard header. -# -# To get valid HTML the header file that includes any scripts and style sheets -# that doxygen needs, which is dependent on the configuration options used (e.g. -# the setting GENERATE_TREEVIEW). It is highly recommended to start with a -# default header using -# doxygen -w html new_header.html new_footer.html new_stylesheet.css -# YourConfigFile -# and then modify the file new_header.html. See also section "Doxygen usage" -# for information on how to generate the default header that doxygen normally -# uses. -# Note: The header is subject to change so you typically have to regenerate the -# default header when upgrading to a newer version of doxygen. For a description -# of the possible markers and block names see the documentation. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_HEADER = - -# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each -# generated HTML page. If the tag is left blank doxygen will generate a standard -# footer. See HTML_HEADER for more information on how to generate a default -# footer and what special commands can be used inside the footer. See also -# section "Doxygen usage" for information on how to generate the default footer -# that doxygen normally uses. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_FOOTER = - -# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style -# sheet that is used by each HTML page. It can be used to fine-tune the look of -# the HTML output. If left blank doxygen will generate a default style sheet. -# See also section "Doxygen usage" for information on how to generate the style -# sheet that doxygen normally uses. -# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as -# it is more robust and this tag (HTML_STYLESHEET) will in the future become -# obsolete. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_STYLESHEET = - -# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined -# cascading style sheets that are included after the standard style sheets -# created by doxygen. Using this option one can overrule certain style aspects. -# This is preferred over using HTML_STYLESHEET since it does not replace the -# standard style sheet and is therefore more robust against future updates. -# Doxygen will copy the style sheet files to the output directory. -# Note: The order of the extra style sheet files is of importance (e.g. the last -# style sheet in the list overrules the setting of the previous ones in the -# list). For an example see the documentation. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_EXTRA_STYLESHEET = ../static/custom.css - -# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or -# other source files which should be copied to the HTML output directory. Note -# that these files will be copied to the base HTML output directory. Use the -# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these -# files. In the HTML_STYLESHEET file, use the file name only. Also note that the -# files will be copied as-is; there are no commands or markers available. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_EXTRA_FILES = - -# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen -# will adjust the colors in the style sheet and background images according to -# this color. Hue is specified as an angle on a colorwheel, see -# https://en.wikipedia.org/wiki/Hue for more information. For instance the value -# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300 -# purple, and 360 is red again. -# Minimum value: 0, maximum value: 359, default value: 220. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_COLORSTYLE_HUE = 220 - -# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors -# in the HTML output. For a value of 0 the output will use grayscales only. A -# value of 255 will produce the most vivid colors. -# Minimum value: 0, maximum value: 255, default value: 100. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_COLORSTYLE_SAT = 100 - -# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the -# luminance component of the colors in the HTML output. Values below 100 -# gradually make the output lighter, whereas values above 100 make the output -# darker. The value divided by 100 is the actual gamma applied, so 80 represents -# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not -# change the gamma. -# Minimum value: 40, maximum value: 240, default value: 80. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_COLORSTYLE_GAMMA = 80 - -# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML -# page will contain the date and time when the page was generated. Setting this -# to YES can help to show when doxygen was last run and thus if the -# documentation is up to date. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_TIMESTAMP = NO - -# If the HTML_DYNAMIC_MENUS tag is set to YES then the generated HTML -# documentation will contain a main index with vertical navigation menus that -# are dynamically created via Javascript. If disabled, the navigation index will -# consists of multiple levels of tabs that are statically embedded in every HTML -# page. Disable this option to support browsers that do not have Javascript, -# like the Qt help browser. -# The default value is: YES. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_DYNAMIC_MENUS = YES - -# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML -# documentation will contain sections that can be hidden and shown after the -# page has loaded. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_DYNAMIC_SECTIONS = NO - -# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries -# shown in the various tree structured indices initially; the user can expand -# and collapse entries dynamically later on. Doxygen will expand the tree to -# such a level that at most the specified number of entries are visible (unless -# a fully collapsed tree already exceeds this amount). So setting the number of -# entries 1 will produce a full collapsed tree by default. 0 is a special value -# representing an infinite number of entries and will result in a full expanded -# tree by default. -# Minimum value: 0, maximum value: 9999, default value: 100. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_INDEX_NUM_ENTRIES = 100 - -# If the GENERATE_DOCSET tag is set to YES, additional index files will be -# generated that can be used as input for Apple's Xcode 3 integrated development -# environment (see: https://developer.apple.com/tools/xcode/), introduced with -# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a -# Makefile in the HTML output directory. Running make will produce the docset in -# that directory and running make install will install the docset in -# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at -# startup. See https://developer.apple.com/tools/creatingdocsetswithdoxygen.html -# for more information. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_DOCSET = NO - -# This tag determines the name of the docset feed. A documentation feed provides -# an umbrella under which multiple documentation sets from a single provider -# (such as a company or product suite) can be grouped. -# The default value is: Doxygen generated docs. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_FEEDNAME = "Slightech generated docs" - -# This tag specifies a string that should uniquely identify the documentation -# set bundle. This should be a reverse domain-name style string, e.g. -# com.mycompany.MyDocSet. Doxygen will append .docset to the name. -# The default value is: org.doxygen.Project. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_BUNDLE_ID = com.slightech.mynteye - -# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify -# the documentation publisher. This should be a reverse domain-name style -# string, e.g. com.mycompany.MyDocSet.documentation. -# The default value is: org.doxygen.Publisher. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_PUBLISHER_ID = com.slightech.mynteye.documentation - -# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher. -# The default value is: Publisher. -# This tag requires that the tag GENERATE_DOCSET is set to YES. - -DOCSET_PUBLISHER_NAME = MYNT EYE S SDK - -# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three -# additional HTML index files: index.hhp, index.hhc, and index.hhk. The -# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop -# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on -# Windows. -# -# The HTML Help Workshop contains a compiler that can convert all HTML output -# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML -# files are now used as the Windows 98 help format, and will replace the old -# Windows help format (.hlp) on all Windows platforms in the future. Compressed -# HTML files also contain an index, a table of contents, and you can search for -# words in the documentation. The HTML workshop also contains a viewer for -# compressed HTML files. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_HTMLHELP = NO - -# The CHM_FILE tag can be used to specify the file name of the resulting .chm -# file. You can add a path in front of the file if the result should not be -# written to the html output directory. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -CHM_FILE = - -# The HHC_LOCATION tag can be used to specify the location (absolute path -# including file name) of the HTML help compiler (hhc.exe). If non-empty, -# doxygen will try to run the HTML help compiler on the generated index.hhp. -# The file has to be specified with full path. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -HHC_LOCATION = - -# The GENERATE_CHI flag controls if a separate .chi index file is generated -# (YES) or that it should be included in the master .chm file (NO). -# The default value is: NO. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -GENERATE_CHI = NO - -# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc) -# and project file content. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -CHM_INDEX_ENCODING = - -# The BINARY_TOC flag controls whether a binary table of contents is generated -# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it -# enables the Previous and Next buttons. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -BINARY_TOC = NO - -# The TOC_EXPAND flag can be set to YES to add extra items for group members to -# the table of contents of the HTML help documentation and to the tree view. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - -TOC_EXPAND = NO - -# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and -# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that -# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help -# (.qch) of the generated HTML documentation. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_QHP = NO - -# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify -# the file name of the resulting .qch file. The path specified is relative to -# the HTML output folder. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QCH_FILE = - -# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help -# Project output. For more information please see Qt Help Project / Namespace -# (see: http://doc.qt.io/qt-4.8/qthelpproject.html#namespace). -# The default value is: org.doxygen.Project. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_NAMESPACE = com.slightech.mynteye - -# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt -# Help Project output. For more information please see Qt Help Project / Virtual -# Folders (see: http://doc.qt.io/qt-4.8/qthelpproject.html#virtual-folders). -# The default value is: doc. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_VIRTUAL_FOLDER = doc - -# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom -# filter to add. For more information please see Qt Help Project / Custom -# Filters (see: http://doc.qt.io/qt-4.8/qthelpproject.html#custom-filters). -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_CUST_FILTER_NAME = - -# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the -# custom filter to add. For more information please see Qt Help Project / Custom -# Filters (see: http://doc.qt.io/qt-4.8/qthelpproject.html#custom-filters). -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_CUST_FILTER_ATTRS = - -# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this -# project's filter section matches. Qt Help Project / Filter Attributes (see: -# http://doc.qt.io/qt-4.8/qthelpproject.html#filter-attributes). -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHP_SECT_FILTER_ATTRS = - -# The QHG_LOCATION tag can be used to specify the location of Qt's -# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the -# generated .qhp file. -# This tag requires that the tag GENERATE_QHP is set to YES. - -QHG_LOCATION = - -# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be -# generated, together with the HTML files, they form an Eclipse help plugin. To -# install this plugin and make it available under the help contents menu in -# Eclipse, the contents of the directory containing the HTML and XML files needs -# to be copied into the plugins directory of eclipse. The name of the directory -# within the plugins directory should be the same as the ECLIPSE_DOC_ID value. -# After copying Eclipse needs to be restarted before the help appears. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_ECLIPSEHELP = NO - -# A unique identifier for the Eclipse help plugin. When installing the plugin -# the directory name containing the HTML and XML files should also have this -# name. Each documentation set should have its own identifier. -# The default value is: org.doxygen.Project. -# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES. - -ECLIPSE_DOC_ID = com.slightech.mynteye - -# If you want full control over the layout of the generated HTML pages it might -# be necessary to disable the index and replace it with your own. The -# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top -# of each HTML page. A value of NO enables the index and the value YES disables -# it. Since the tabs in the index contain the same information as the navigation -# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -DISABLE_INDEX = YES - -# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index -# structure should be generated to display hierarchical information. If the tag -# value is set to YES, a side panel will be generated containing a tree-like -# index structure (just like the one that is generated for HTML Help). For this -# to work a browser that supports JavaScript, DHTML, CSS and frames is required -# (i.e. any modern browser). Windows users are probably better off using the -# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can -# further fine-tune the look of the index. As an example, the default style -# sheet generated by doxygen has an example that shows how to put an image at -# the root of the tree instead of the PROJECT_NAME. Since the tree basically has -# the same information as the tab index, you could consider setting -# DISABLE_INDEX to YES when enabling this option. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -GENERATE_TREEVIEW = YES - -# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that -# doxygen will group on one line in the generated HTML documentation. -# -# Note that a value of 0 will completely suppress the enum values from appearing -# in the overview section. -# Minimum value: 0, maximum value: 20, default value: 4. -# This tag requires that the tag GENERATE_HTML is set to YES. - -ENUM_VALUES_PER_LINE = 4 - -# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used -# to set the initial width (in pixels) of the frame in which the tree is shown. -# Minimum value: 0, maximum value: 1500, default value: 250. -# This tag requires that the tag GENERATE_HTML is set to YES. - -TREEVIEW_WIDTH = 260 - -# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to -# external symbols imported via tag files in a separate window. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -EXT_LINKS_IN_WINDOW = NO - -# Use this tag to change the font size of LaTeX formulas included as images in -# the HTML documentation. When you change the font size after a successful -# doxygen run you need to manually remove any form_*.png images from the HTML -# output directory to force them to be regenerated. -# Minimum value: 8, maximum value: 50, default value: 10. -# This tag requires that the tag GENERATE_HTML is set to YES. - -FORMULA_FONTSIZE = 10 - -# Use the FORMULA_TRANSPARENT tag to determine whether or not the images -# generated for formulas are transparent PNGs. Transparent PNGs are not -# supported properly for IE 6.0, but are supported on all modern browsers. -# -# Note that when changing this option you need to delete any form_*.png files in -# the HTML output directory before the changes have effect. -# The default value is: YES. -# This tag requires that the tag GENERATE_HTML is set to YES. - -FORMULA_TRANSPARENT = YES - -# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see -# https://www.mathjax.org) which uses client side Javascript for the rendering -# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX -# installed or if you want to formulas look prettier in the HTML output. When -# enabled you may also need to install MathJax separately and configure the path -# to it using the MATHJAX_RELPATH option. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -USE_MATHJAX = NO - -# When MathJax is enabled you can set the default output format to be used for -# the MathJax output. See the MathJax site (see: -# http://docs.mathjax.org/en/latest/output.html) for more details. -# Possible values are: HTML-CSS (which is slower, but has the best -# compatibility), NativeMML (i.e. MathML) and SVG. -# The default value is: HTML-CSS. -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_FORMAT = HTML-CSS - -# When MathJax is enabled you need to specify the location relative to the HTML -# output directory using the MATHJAX_RELPATH option. The destination directory -# should contain the MathJax.js script. For instance, if the mathjax directory -# is located at the same level as the HTML output directory, then -# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax -# Content Delivery Network so you can quickly see the result without installing -# MathJax. However, it is strongly recommended to install a local copy of -# MathJax from https://www.mathjax.org before deployment. -# The default value is: https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/. -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_RELPATH = https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/ - -# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax -# extension names that should be enabled during MathJax rendering. For example -# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_EXTENSIONS = - -# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces -# of code that will be used on startup of the MathJax code. See the MathJax site -# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an -# example see the documentation. -# This tag requires that the tag USE_MATHJAX is set to YES. - -MATHJAX_CODEFILE = - -# When the SEARCHENGINE tag is enabled doxygen will generate a search box for -# the HTML output. The underlying search engine uses javascript and DHTML and -# should work on any modern browser. Note that when using HTML help -# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET) -# there is already a search function so this one should typically be disabled. -# For large projects the javascript based search engine can be slow, then -# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to -# search using the keyboard; to jump to the search box use + S -# (what the is depends on the OS and browser, but it is typically -# , /API 类 -* API 模块 - * \link enumerations 枚举类型\endlink - * \link datatypes 数据类型\endlink - * \link utils 工具函数\endlink - * \link calibration 内参与外参\endlink -* 设备说明 - * @subpage specs_data - * @subpage specs_ctrl diff --git a/doc/zh-Hans/spec_control_api.md b/doc/zh-Hans/spec_control_api.md deleted file mode 100644 index 6c1f9a8..0000000 --- a/doc/zh-Hans/spec_control_api.md +++ /dev/null @@ -1,27 +0,0 @@ -# 控制 API 说明 {#spec_control_api} - -控制有两种实现方式,一是通过 UVC 标准协议,二是通过 UVC 拓展通道自定义协议。 - -## 标准协议 - -| 名称 | 字段 | 字节数 | 默认值 | 最小值 | 最大值 | 是否储存 | Flash 地址 | 说明 | -| :----- | :----- | :-------- | :-------- | :-------- | :-------- | :----------- | :----------- | :----- | -| 亮度 | brightness | 2 | 192 | 0 | 255 | √ | 0x14 | 关闭自动曝光,手动设定的参数 | - -> UVC 标准协议实现的控制,有现成的 API 进行 Get & Set ,包括 Min, Max, Default 。 - -## 自定义协议 - -| 名称 | 字段 | 字节数 | 默认值 | 最小值 | 最大值 | 是否储存 | Flash 地址 | 所属通道 | 通道地址 | 说明 | -| :----- | :----- | :-------- | :-------- | :-------- | :-------- | :----------- | :----------- | :----------- | :----------- | :----- | -| 曝光模式 | exposure_mode | 1 | 0 | 0 | 1 | √ | 0x0F | XU_CAM_CTRL | 0x0100 | 0:开启自动曝光; 1:关闭 | -| 最大增益 | max_gain | 2 | 8 | 0 | 255 | √ | 0x1D | XU_CAM_CTRL | 0x0100 | 开始自动曝光,可设定的阈值 | -| 最大曝光时间 | max_exposure_time | 2 | 333 | 0 | 1000 | √ | 0x1B | XU_CAM_CTRL | 0x0100 | 开始自动曝光,可设定的阈值 | -| 期望亮度 | desired_brightness | 2 | 122 | 1 | 255 | √ | 0x19 | XU_CAM_CTRL | 0x0100 | | -| 擦除芯片 | erase_chip | | - | - | - | × | - | XU_HALF_DUPLEX | 0x0200 | | -| 最小曝光时间 | min_exposure_time | 2 | 0 | 0 | 1000 | √ | - | XU_CAM_CTRL | 0x0100 | 开始自动曝光,可设定的阈值 | -| 加速度计量程 | accelerometer_range | 2 | 12 | 6 | 48 | √ | - | XU_CAM_CTRL | 0x0100 | | -| 陀螺仪量程 | gyroscope_range | 2 | 1000 | 250 | 4000 | √ | - | XU_CAM_CTRL | 0x0100 | | -| 加速度计低通滤波 | accelerometer_low_pass_filter | 2 | 2 | 0 | 2 | √ | - | XU_CAM_CTRL | 0x0100 | | -| 陀螺仪低通滤波 | gyroscope__low_pass_filter | 2 | 64 | 23 | 64 | √ | - | XU_CAM_CTRL | 0x0100 | | - diff --git a/doc/zh-Hans/spec_control_channel.md b/doc/zh-Hans/spec_control_channel.md deleted file mode 100644 index b232943..0000000 --- a/doc/zh-Hans/spec_control_channel.md +++ /dev/null @@ -1,53 +0,0 @@ -# 拓展通道说明 {#spec_control_channel} - -| 名称 | 字段 | 地址 | 带宽 | 说明 | -| :----- | :----- | :----- | :----- | :----- | -| 相机控制通道 | XU_CAM_CTRL_CHANNEL | 1 | 3 | | -| 半双工通道 | XU_HALF_DUPLEX_CHANNEL | 2 | 20 | | -| IMU 请求通道 | XU_IMUDATA_WRITE_CHANNEL | 3 | 5 | | -| IMU 响应通道 | XU_IMUDATA_READ_CHANNEL | 4 | 2000 | | -| 文件通道 | XU_FILE_CHANNEL | 5 | 2000 | | - -## 相机控制通道 - -相机控制通道是那些需要 Get & Set & Query 的控制通道,其中 Query 细分为 Min, Max, Default 。 - -## 半双工通道 - -半双工通道是那些仅需 Set 的控制通道,如请求零漂矫正。 - -## IMU 通道 - -用来请求和响应 IMU 数据的通道,可参见 @ref spec_imu_data 。 - -## 文件通道 - -用来读写硬件信息、图像参数、 IMU 参数的通道。 - -| Name | Header | Size | File | Checksum | -| :--- | :----- | :--- | :--- | :-------- | -| 字节数 | 1 | 2 | - | 1 | -| 类型 | uint8_t | uint16_t | - | uint8_t | -| 描述 | 标识 | 文件内容大小 | 文件内容 | 校验码(文件内容所有字节异或) | - -| Header Bit Subscript | Description | -| :------------------- | :---------- | -| 0 | 硬件信息 | -| 1 | 图像参数 | -| 2 | IMU 参数 | -| 3~6 | 未定义 | -| 7 | 0: Get; 1: Set | - -### 文件内容包 - -| Name | ID | Size | Content | -| :--- | :- | :--- | :------ | -| 字节数 | 1 | 2 | - | -| 类型 | uint8_t | uint16_t | - | -| 描述 | 内容 ID | 内容大小 | 内容 | - -| File | ID | Max Size | -| :--- | :- | :------- | -| 硬件信息 | 1 | 250 | -| 图像参数 | 2 | 404 | -| IMU 参数 | 4 | 500 | diff --git a/doc/zh-Hans/spec_hardware_info.md b/doc/zh-Hans/spec_hardware_info.md deleted file mode 100644 index ba2dd41..0000000 --- a/doc/zh-Hans/spec_hardware_info.md +++ /dev/null @@ -1,19 +0,0 @@ -# 硬件信息说明 {#spec_hardware_info} - -| 名称 | 字段 | 固定值 | 描述符获取 | 拓展通道获取 | 字节数 | 说明 | -| :----- | :----- | :-------- | :-------------- | :----------------- | :-------- | :----- | -| VID | vid | 0x04B4 | √ | × | 2 | | -| PID | pid | 0x00F9 | √ | × | 2 | | -| 设备名称 | name | MYNT-EYE-? | √ | √ Get | 16 | MYNT-EYE-S1000 | -| 序列号 | serial_number | - | √ | √ Get | 16 | | -| 固件版本 | firmware_version | - | √ | √ Get | 2 | major,minor | -| 硬件版本 | hardware_version | - | × | √ Get | 3 | major,minor,flag | -| 协议版本 | spec_version | - | × | √ Get | 2 | major,minor | -| 镜头类型 | lens_type | - | × | √ Get/Set | 4 | vendor(2),product(2) ,未 Set 默认 0 | -| IMU 类型 | imu_type | - | × | √ Get/Set | 4 | vendor(2),product(2) ,未 Set 默认 0 | -| 基线长度 | nominal_baseline | - | × | √ Get/Set | 2 | 单位 mm ,未 set 默认 0 | -| 辅助芯片版本 | auxiliary_chip_version | - | × | √ Get | 2 | major,minor | -| ISP版本 | isp_version | - | × | √ Get | 2 | major,minor | - -* 描述符获取:指通用 USB 设备信息,可用工具查看。 -* 拓展通道获取:指通过拓展通道(UVC Extension Unit)问硬件获取到的信息,需要读取。 diff --git a/doc/zh-Hans/spec_image_data.md b/doc/zh-Hans/spec_image_data.md deleted file mode 100644 index bb5261d..0000000 --- a/doc/zh-Hans/spec_image_data.md +++ /dev/null @@ -1,21 +0,0 @@ -# 图像数据说明 {#spec_image_data} - -| 名称 | 字段 | 单位 | 字节数 | 说明 | -| :----- | :----- | :----- | :-------- | :----- | -| 帧 ID | frame_id | - | 2 | uint16_t; [0,65535] | -| 时间戳 | timestamp | 1 us | 8 | uint64_t | -| 曝光时间 | exposure_time | 1 us | 2 | uint16_t | - -> 图像数据传输方式:倒序排在图像尾部。 - -## 图像数据包 - -| Name | Header | Size | FrameID | Timestamp | ExposureTime | Checksum | -| :--- | :----- | :--- | :------ | :-------- | :----------- | :------- | -| 字节数 | 1 | 1 | 2 | 8 | 2 | 1 | -| 类型 | uint8_t | uint8_t | uint16_t | uint64_t | uint16_t | uint8_t | -| 描述 | 0x3B | 0x10 (数据内容大小) | 帧 ID | 时间戳 | 曝光时间 | 校验码(数据内容所有字节异或) | - -* 数据包校验不过,会丢弃该帧。 -* 时间的单位精度为: 1 us 。 -* 时间累计是从上电时从开始,而不是从打开时开始。 diff --git a/doc/zh-Hans/spec_image_params.md b/doc/zh-Hans/spec_image_params.md deleted file mode 100644 index dad04f8..0000000 --- a/doc/zh-Hans/spec_image_params.md +++ /dev/null @@ -1,25 +0,0 @@ -# 图像参数说明 {#spec_image_params} - -## 图像内参 - -| 名称 | 字段 | 单位 | 字节数 | 说明 | -| :----- | :----- | :----- | :-------- | :----- | -| 宽度 | width | px | 2 | uint16_t; [0,65535] | -| 高度 | height | px | 2 | uint16_t; [0,65535] | -| 焦距 | fx | - | 8 | double | -| ^ | fy | - | 8 | double | -| 图像中心 | cx | - | 8 | double | -| ^ | cy | - | 8 | double | -| 畸变模型 | model | - | 1 | uint8_t; pinhole,... | -| 畸变参数 | coeffs[5] | - | 40 | double; k1,k2,p1,p2,k3 | - -> 图像分辨率不同,内参不同。多分辨率的话,需有多个内参。 - -## 图像外参 - -Left Image 到 Right Image 的变换矩阵。 - -| 名称 | 字段 | 单位 | 字节数 | 说明 | -| :----- | :----- | :----- | :-------- | :----- | -| 旋转矩阵 | rotation[3][3] | - | 72 | double | -| 平移矩阵 | translation[3] | - | 24 | double | diff --git a/doc/zh-Hans/spec_imu_data.md b/doc/zh-Hans/spec_imu_data.md deleted file mode 100644 index 34f3490..0000000 --- a/doc/zh-Hans/spec_imu_data.md +++ /dev/null @@ -1,42 +0,0 @@ -# IMU 数据说明 {#spec_imu_data} - -## IMU 请求数据包 - -| Name | Header | Serial Number | -| :--- | :----- | :------------ | -| 字节数 | 1 | 4 | -| 类型 | uint8_t | uint32_t | -| 描述 | 0x5A | 首次请求写 0 ,不然写上次响应数据包最后一个 IMU 包的序列号 | - -## IMU 响应数据包 - -IMU 响应数据包里会包含1个 IMU 包,而每个 IMU 包又带有多个 IMU 段。 - -| Name | Header | State | Size | IMU Packets | Checksum | -| :--- | :----- | :---- | :--- | :---------- | :------- | -| 字节数 | 1 | 1 | 2 | ... | 1 | -| 类型 | uint8_t | uint8_t | uint16_t | - | uint8_t | -| 描述 | 0x5B | 正常状态为 0 ,否则错误 | 数据内容大小 | 所包含的 IMU 包 | 校验码(数据内容所有字节异或) | - -### IMU 包 - -IMU 包/小包,是一组 IMU 数据。 - -| Name | Count | IMU Datas | -| :--- | :-----| :-------- | -| 字节数 | 2 | ... | -| 类型 | uint16_t | - | -| 描述 | IMU 段数量 | 所包含的 IMU 段 | - -### IMU 段 - -| Name | Serial Number | Timestamp | flag | Temperature | Accelerometer or Gyroscope | -| :--- | :------------ | :-------- | :----| :----------- | :------------------------- | -| 字节数 | 4 | 8 | 1 | 2 | 6 | -| 类型 | uint32_t | uint64_t | int8_t | int16_t | int16_t * 3 | -| Description | 序列号 | 时间戳 | 指定传感器类型 | IMU 的温度 | 陀螺仪或陀螺仪 x y z 三轴的值 | - -* 加速度计和陀螺仪的计量值换算成物理值公式: **real = data * range / 0x10000** 。 - * 加速度计量程默认值为 **12 g** ,陀螺仪量程默认值为 **1000 deg/s** 。 -* 温度计量值换算成物理值公式: **real = data / ratio + offset** 。 - * ``ratio`` 默认值为 **326.8** , ``offset`` 默认值为 **25℃** 。 diff --git a/doc/zh-Hans/spec_imu_params.md b/doc/zh-Hans/spec_imu_params.md deleted file mode 100644 index 18dbc66..0000000 --- a/doc/zh-Hans/spec_imu_params.md +++ /dev/null @@ -1,23 +0,0 @@ -# IMU 参数说明 {#spec_imu_params} - -## IMU 内参 - -| 名称 | 字段 | 单位 | 字节数 | 说明 | -| :----- | :----- | :----- | :-------- | :----- | -| 比例因子 | acc_scale[3][3] | - | 72 | double | -| ^ | gyro_scale[3][3] | - | 72 | double | -| 零漂 | acc_drift[3] | - | 24 | double | -| ^ | gyro_drift[3] | - | 24 | double | -| 噪声密度 | acc_noise[3] | - | 24 | double | -| ^ | gyro_noise[3] | - | 24 | double | -| 随机游走 | acc_bias[3] | - | 24 | double | -| ^ | gyro_bias[3] | - | 24 | double | - -## IMU 外参 - -Left Image 到 IMU 的变换矩阵。 - -| 名称 | 字段 | 单位 | 字节数 | 说明 | -| :----- | :----- | :----- | :-------- | :----- | -| 旋转矩阵 | rotation[3][3] | - | 72 | double | -| 平移矩阵 | translation[3] | - | 24 | double | diff --git a/doc/zh-Hans/specs_ctrl.md b/doc/zh-Hans/specs_ctrl.md deleted file mode 100644 index 8232e93..0000000 --- a/doc/zh-Hans/specs_ctrl.md +++ /dev/null @@ -1,4 +0,0 @@ -# 设备控制说明 {#specs_ctrl} - -* @subpage spec_control_api -* @subpage spec_control_channel diff --git a/doc/zh-Hans/specs_data.md b/doc/zh-Hans/specs_data.md deleted file mode 100644 index a963b6b..0000000 --- a/doc/zh-Hans/specs_data.md +++ /dev/null @@ -1,7 +0,0 @@ -# 设备数据说明 {#specs_data} - -* @subpage spec_hardware_info -* @subpage spec_image_params -* @subpage spec_imu_params -* @subpage spec_image_data -* @subpage spec_imu_data diff --git a/doc/en/api.doxyfile b/docs/Doxyfile similarity index 99% rename from doc/en/api.doxyfile rename to docs/Doxyfile index 72e3fd4..745eed7 100644 --- a/doc/en/api.doxyfile +++ b/docs/Doxyfile @@ -38,27 +38,27 @@ PROJECT_NAME = "MYNT EYE S SDK" # could be handy for archiving the generated documentation or if some version # control system is used. -PROJECT_NUMBER = 2.3.3 +PROJECT_NUMBER = 2.3.4 # Using the PROJECT_BRIEF tag one can provide an optional one line description # for a project that appears at the top of each page and should give viewer a # quick idea about the purpose of the project. Keep the description short. -PROJECT_BRIEF = http://www.myntai.com/mynteye/standard +PROJECT_BRIEF = https://www.myntai.com/mynteye/standard # With the PROJECT_LOGO tag one can specify a logo or an icon that is included # in the documentation. The maximum height of the logo should not exceed 55 # pixels and the maximum width should not exceed 200 pixels. Doxygen will copy # the logo to the output directory. -PROJECT_LOGO = ../static/images/icon.png +PROJECT_LOGO = # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path # into which the generated documentation will be written. If a relative path is # entered, it will be relative to the location where doxygen was started. If # left blank the current directory will be used. -OUTPUT_DIRECTORY = ../_output/en +OUTPUT_DIRECTORY = _doxygen # If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub- # directories (in 2 levels) under the output directory of each output format and @@ -791,17 +791,7 @@ WARN_LOGFILE = # spaces. See also FILE_PATTERNS and EXTENSION_MAPPING # Note: If this tag is empty the current directory is searched. -INPUT = mainpage.md \ - specs_data.md \ - spec_hardware_info.md \ - spec_image_params.md \ - spec_imu_params.md \ - spec_image_data.md \ - spec_imu_data.md \ - specs_ctrl.md \ - spec_control_api.md \ - spec_control_channel.md \ - /usr/local/include/mynteye +INPUT = ../include/mynteye # This tag can be used to specify the character encoding of the source files # that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses @@ -938,7 +928,7 @@ EXAMPLE_RECURSIVE = NO # that contain images that are to be included in the documentation (see the # \image command). -IMAGE_PATH = ../static/images +IMAGE_PATH = # The INPUT_FILTER tag can be used to specify a program that doxygen should # invoke to filter for each input file. Doxygen will invoke the filter program @@ -1115,7 +1105,7 @@ IGNORE_PREFIX = # If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output # The default value is: YES. -GENERATE_HTML = YES +GENERATE_HTML = NO # The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a # relative path is entered the value of OUTPUT_DIRECTORY will be put in front of @@ -1185,7 +1175,7 @@ HTML_STYLESHEET = # list). For an example see the documentation. # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_EXTRA_STYLESHEET = ../static/custom.css +HTML_EXTRA_STYLESHEET = # The HTML_EXTRA_FILES tag can be used to specify one or more extra images or # other source files which should be copied to the HTML output directory. Note @@ -1667,7 +1657,7 @@ EXTRA_SEARCH_MAPPINGS = # If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output. # The default value is: YES. -GENERATE_LATEX = YES +GENERATE_LATEX = NO # The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a # relative path is entered the value of OUTPUT_DIRECTORY will be put in front of @@ -1947,7 +1937,7 @@ MAN_LINKS = NO # captures the structure of the code including all documentation. # The default value is: NO. -GENERATE_XML = NO +GENERATE_XML = YES # The XML_OUTPUT tag is used to specify where the XML pages will be put. If a # relative path is entered the value of OUTPUT_DIRECTORY will be put in front of @@ -2102,7 +2092,8 @@ INCLUDE_FILE_PATTERNS = PREDEFINED = DOXYGEN_WORKING \ "MYNTEYE_BEGIN_NAMESPACE=namespace mynteye {" \ - "MYNTEYE_END_NAMESPACE=}" + "MYNTEYE_END_NAMESPACE=}" \ + "MYNTEYE_API=" "LAST=" # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this # tag can be used to specify a list of macro names that should be expanded. The diff --git a/docs/Makefile b/docs/Makefile new file mode 100644 index 0000000..298ea9e --- /dev/null +++ b/docs/Makefile @@ -0,0 +1,19 @@ +# Minimal makefile for Sphinx documentation +# + +# You can set these variables from the command line. +SPHINXOPTS = +SPHINXBUILD = sphinx-build +SOURCEDIR = . +BUILDDIR = _build + +# Put it first so that "make" without argument is like "make help". +help: + @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) + +.PHONY: help Makefile + +# Catch-all target: route all unknown targets to Sphinx using the new +# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). +%: Makefile + @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) \ No newline at end of file diff --git a/docs/api/api.rst b/docs/api/api.rst new file mode 100644 index 0000000..aebeac5 --- /dev/null +++ b/docs/api/api.rst @@ -0,0 +1,23 @@ +API +=== + +API +--- + +.. doxygenclass:: mynteye::API + :project: mynteyes + :members: + +api::StreamData +--------------- + +.. doxygenstruct:: mynteye::api::StreamData + :project: mynteyes + :members: + +api::MotionData +--------------- + +.. doxygenstruct:: mynteye::api::MotionData + :project: mynteyes + :members: diff --git a/docs/api/device.rst b/docs/api/device.rst new file mode 100644 index 0000000..bb4e193 --- /dev/null +++ b/docs/api/device.rst @@ -0,0 +1,30 @@ +Device +====== + +Device +------ + +.. doxygenclass:: mynteye::Device + :project: mynteyes + :members: + +device::Frame +------------- + +.. doxygenclass:: mynteye::device::Frame + :project: mynteyes + :members: + +device::StreamData +------------------ + +.. doxygenstruct:: mynteye::device::StreamData + :project: mynteyes + :members: + +device::MotionData +------------------ + +.. doxygenstruct:: mynteye::device::MotionData + :project: mynteyes + :members: diff --git a/docs/api/enums.rst b/docs/api/enums.rst new file mode 100644 index 0000000..29e02da --- /dev/null +++ b/docs/api/enums.rst @@ -0,0 +1,67 @@ +Enums +===== + +.. + .. doxygengroup:: enumerations + :project: mynteyes + +Model +----- + +.. doxygenenum:: mynteye::Model + :project: mynteyes + +Stream +------ + +.. doxygenenum:: mynteye::Stream + :project: mynteyes + + +Capabilities +------------ + +.. doxygenenum:: mynteye::Capabilities + :project: mynteyes + +Info +---- + +.. doxygenenum:: mynteye::Info + :project: mynteyes + +Option +------ + +.. doxygenenum:: mynteye::Option + :project: mynteyes + +Source +------ + +.. doxygenenum:: mynteye::Source + :project: mynteyes + +AddOns +------ + +.. doxygenenum:: mynteye::AddOns + :project: mynteyes + +Format +------ + +.. doxygenenum:: mynteye::Format + :project: mynteyes + +CalibrationModel +---------------- + +.. doxygenenum:: mynteye::CalibrationModel + :project: mynteyes + +DisparityComputingMethod +------------------------ + +.. doxygenenum:: mynteye::DisparityComputingMethod + :project: mynteyes diff --git a/docs/api/types.rst b/docs/api/types.rst new file mode 100644 index 0000000..3fa342a --- /dev/null +++ b/docs/api/types.rst @@ -0,0 +1,75 @@ +Types +===== + +OptionInfo +---------- + +.. doxygenstruct:: mynteye::OptionInfo + :project: mynteyes + :members: + +Resolution +---------- + +.. doxygenstruct:: mynteye::Resolution + :project: mynteyes + :members: + +StreamRequest +------------- + +.. doxygenstruct:: mynteye::StreamRequest + :project: mynteyes + :members: + +Intrinsics +---------- + +IntrinsicsPinhole +~~~~~~~~~~~~~~~~~ + +.. doxygenstruct:: mynteye::IntrinsicsPinhole + :project: mynteyes + :members: + +IntrinsicsEquidistant +~~~~~~~~~~~~~~~~~~~~~ + +.. doxygenstruct:: mynteye::IntrinsicsEquidistant + :project: mynteyes + :members: + +ImuIntrinsics +~~~~~~~~~~~~~ + +.. doxygenstruct:: mynteye::ImuIntrinsics + :project: mynteyes + :members: + +MotionIntrinsics +~~~~~~~~~~~~~~~~~ + +.. doxygenstruct:: mynteye::MotionIntrinsics + :project: mynteyes + :members: + +Extrinsics +---------- + +.. doxygenstruct:: mynteye::Extrinsics + :project: mynteyes + :members: + +ImgData +------- + +.. doxygenstruct:: mynteye::ImgData + :project: mynteyes + :members: + +ImuData +------- + +.. doxygenstruct:: mynteye::ImuData + :project: mynteyes + :members: diff --git a/docs/api/utils.rst b/docs/api/utils.rst new file mode 100644 index 0000000..443278e --- /dev/null +++ b/docs/api/utils.rst @@ -0,0 +1,32 @@ +Utils +===== + +select +------ + +.. doxygenfunction:: select + :project: mynteyes + +select_request +-------------- + +.. doxygenfunction:: select_request + :project: mynteyes + +get_real_exposure_time +---------------------- + +.. doxygenfunction:: get_real_exposure_time + :project: mynteyes + +get_sdk_root_dir +---------------- + +.. doxygenfunction:: get_sdk_root_dir + :project: mynteyes + +get_sdk_install_dir +------------------- + +.. doxygenfunction:: get_sdk_install_dir + :project: mynteyes diff --git a/doc/arch.graphml b/docs/arch.graphml similarity index 100% rename from doc/arch.graphml rename to docs/arch.graphml diff --git a/doc/arch.jpg b/docs/arch.jpg similarity index 100% rename from doc/arch.jpg rename to docs/arch.jpg diff --git a/docs/conf.py b/docs/conf.py new file mode 100644 index 0000000..3312174 --- /dev/null +++ b/docs/conf.py @@ -0,0 +1,194 @@ +# -*- coding: utf-8 -*- +# +# Configuration file for the Sphinx documentation builder. +# +# This file does only contain a selection of the most common options. For a +# full list see the documentation: +# http://www.sphinx-doc.org/en/master/config + +# -- Path setup -------------------------------------------------------------- + +# If extensions (or modules to document with autodoc) are in another directory, +# add these directories to sys.path here. If the directory is relative to the +# documentation root, use os.path.abspath to make it absolute, like shown here. +# +# import os +# import sys +# sys.path.insert(0, os.path.abspath('.')) + + +# -- Project information ----------------------------------------------------- + +project = 'MYNT® EYE S SDK' +copyright = '2018, MYNTAI' +author = 'MYNTAI' + +# The short X.Y version +version = '2.3.4' +# The full version, including alpha/beta/rc tags +release = version + + +# -- General configuration --------------------------------------------------- + +# If your documentation needs a minimal Sphinx version, state it here. +# +# needs_sphinx = '1.0' + +# Add any Sphinx extension module names here, as strings. They can be +# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom +# ones. +extensions = [ + 'breathe', +] + +# Add any paths that contain templates here, relative to this directory. +templates_path = ['_templates'] + +# The suffix(es) of source filenames. +# You can specify multiple suffix as a list of string: +# +# source_suffix = ['.rst', '.md'] +source_suffix = '.rst' + +# The master toctree document. +master_doc = 'index' + +# The language for content autogenerated by Sphinx. Refer to documentation +# for a list of supported languages. +# +# This is also used if you do content translation via gettext catalogs. +# Usually you set "language" from the command line for these cases. +language = 'en' + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +# This pattern also affects html_static_path and html_extra_path. +exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store'] + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = None + + +# on_rtd is whether we are on readthedocs.org +import os +on_rtd = os.environ.get('READTHEDOCS', None) == 'True' + +import subprocess +subprocess.call('doxygen', shell=True) + + +# -- Options for HTML output ------------------------------------------------- + +if not on_rtd: # only import and set the theme if we're building docs locally + import sphinx_rtd_theme + + # The theme to use for HTML and HTML Help pages. See the documentation for + # a list of builtin themes. + # + # html_theme = 'alabaster' + html_theme = 'sphinx_rtd_theme' + html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] + + # Theme options are theme-specific and customize the look and feel of a theme + # further. For a list of options available for each theme, see the + # documentation. + # + # html_theme_options = {} + + # Add any paths that contain custom static files (such as style sheets) here, + # relative to this directory. They are copied after the builtin static files, + # so a file named "default.css" will overwrite the builtin "default.css". + # html_static_path = ['_static'] + + # Custom sidebar templates, must be a dictionary that maps document names + # to template names. + # + # The default sidebars (for documents that don't match any pattern) are + # defined by theme itself. Builtin themes are using these templates by + # default: ``['localtoc.html', 'relations.html', 'sourcelink.html', + # 'searchbox.html']``. + # + # html_sidebars = {} + +# otherwise, readthedocs.org uses their theme by default, so no need to specify it + + +# -- Options for HTMLHelp output --------------------------------------------- + +# Output file base name for HTML help builder. +htmlhelp_basename = 'MYNTEYESSDKdoc' + + +# -- Options for LaTeX output ------------------------------------------------ + +latex_elements = { + # The paper size ('letterpaper' or 'a4paper'). + # + # 'papersize': 'letterpaper', + + # The font size ('10pt', '11pt' or '12pt'). + # + # 'pointsize': '10pt', + + # Additional stuff for the LaTeX preamble. + # + # 'preamble': '', + + # Latex figure (float) alignment + # + # 'figure_align': 'htbp', +} + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, +# author, documentclass [howto, manual, or own class]). +latex_documents = [ + (master_doc, 'MYNTEYESSDK.tex', 'MYNT® EYE S SDK Documentation', + 'MYNTAI', 'manual'), +] + + +# -- Options for manual page output ------------------------------------------ + +# One entry per manual page. List of tuples +# (source start file, name, description, authors, manual section). +man_pages = [ + (master_doc, 'mynteyessdk', 'MYNT® EYE S SDK Documentation', + [author], 1) +] + + +# -- Options for Texinfo output ---------------------------------------------- + +# Grouping the document tree into Texinfo files. List of tuples +# (source start file, target name, title, author, +# dir menu entry, description, category) +texinfo_documents = [ + (master_doc, 'MYNTEYESSDK', 'MYNT® EYE S SDK Documentation', + author, 'MYNTEYESSDK', 'One line description of project.', + 'Miscellaneous'), +] + + +# -- Options for Epub output ------------------------------------------------- + +# Bibliographic Dublin Core info. +epub_title = project + +# The unique identifier of the text. This can be a ISBN number +# or the project homepage. +# +# epub_identifier = '' + +# A unique identification for the text. +# +# epub_uid = '' + +# A list of files that should not be packed into the epub file. +epub_exclude_files = ['search.html'] + + +# -- Extension configuration ------------------------------------------------- + +breathe_projects = { 'mynteyes': '_doxygen/xml' } diff --git a/docs/index.rst b/docs/index.rst new file mode 100644 index 0000000..4dfd886 --- /dev/null +++ b/docs/index.rst @@ -0,0 +1,25 @@ +.. MYNT® EYE S SDK documentation master file, created by + sphinx-quickstart on Mon Mar 11 08:59:35 2019. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +MYNT® EYE S SDK +=============== + +.. toctree:: + :caption: API REFERENCE + :maxdepth: 2 + + api/api + api/device + api/enums + api/types + api/utils + +.. + Indices and tables + ================== + + * :ref:`genindex` + * :ref:`modindex` + * :ref:`search` diff --git a/docs/make.bat b/docs/make.bat new file mode 100644 index 0000000..7893348 --- /dev/null +++ b/docs/make.bat @@ -0,0 +1,35 @@ +@ECHO OFF + +pushd %~dp0 + +REM Command file for Sphinx documentation + +if "%SPHINXBUILD%" == "" ( + set SPHINXBUILD=sphinx-build +) +set SOURCEDIR=. +set BUILDDIR=_build + +if "%1" == "" goto help + +%SPHINXBUILD% >NUL 2>NUL +if errorlevel 9009 ( + echo. + echo.The 'sphinx-build' command was not found. Make sure you have Sphinx + echo.installed, then set the SPHINXBUILD environment variable to point + echo.to the full path of the 'sphinx-build' executable. Alternatively you + echo.may add the Sphinx directory to PATH. + echo. + echo.If you don't have Sphinx installed, grab it from + echo.http://sphinx-doc.org/ + exit /b 1 +) + +%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% +goto end + +:help +%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% + +:end +popd diff --git a/docs/requirements.txt b/docs/requirements.txt new file mode 100644 index 0000000..f3eb52c --- /dev/null +++ b/docs/requirements.txt @@ -0,0 +1,5 @@ +breathe>=4.11.1 +restructuredtext-lint>=1.1.3 +Sphinx>=1.8.1 +sphinx-intl>=0.9.11 +sphinx-rtd-theme>=0.4.2 diff --git a/include/mynteye/types.h b/include/mynteye/types.h index adf52c8..27a4358 100644 --- a/include/mynteye/types.h +++ b/include/mynteye/types.h @@ -137,109 +137,125 @@ enum class Info : std::uint8_t { enum class Option : std::uint8_t { /** * Image gain, valid if manual-exposure - * + *

* range: [0,48], default: 24 + *

*/ GAIN, /** * Image brightness, valid if manual-exposure - * + *

* range: [0,240], default: 120 + *

*/ BRIGHTNESS, /** * Image contrast, valid if manual-exposure - * + *

* range: [0,255], default: 127 + *

*/ CONTRAST, /** * Image frame rate, must set IMU_FREQUENCY together - * + *

* values: {10,15,20,25,30,35,40,45,50,55,60}, default: 25 + *

*/ FRAME_RATE, /** * IMU frequency, must set FRAME_RATE together - * + *

* values: {100,200,250,333,500}, default: 200 + *

*/ IMU_FREQUENCY, /** * Exposure mode - * - * 0: enable auto-exposure + *

+ * 0: enable auto-exposure
* 1: disable auto-exposure (manual-exposure) + *

*/ EXPOSURE_MODE, /** * Max gain, valid if auto-exposure - * - * range of standard 1: [0,48], default: 48 + *

+ * range of standard 1: [0,48], default: 48
* range of standard 2: [0,255], default: 8 + *

*/ MAX_GAIN, /** * Max exposure time, valid if auto-exposure - * - * range of standard 1: [0,240], default: 240 + *

+ * range of standard 1: [0,240], default: 240
* range of standard 2: [0,1000], default: 333 + *

*/ MAX_EXPOSURE_TIME, /** * min exposure time, valid if auto-exposure - * - * range: [0,1000], default: 0 + *

+ * range: [0,1000], default: 0
+ *

*/ MIN_EXPOSURE_TIME, /** * Desired brightness, valid if auto-exposure - * - * range of standard 1: [0,255], default: 192 + *

+ * range of standard 1: [0,255], default: 192
* range of standard 2: [1,255], default: 122 + *

*/ DESIRED_BRIGHTNESS, /** * IR control - * - * range: [0,160], default: 0 + *

+ * range: [0,160], default: 0
+ *

*/ IR_CONTROL, /** * HDR mode - * - * 0: 10-bit + *

+ * 0: 10-bit
* 1: 12-bit + *

*/ HDR_MODE, /** * The range of accelerometer - * - * value of standard 1: {4,8,16,32}, default: 8 + *

+ * value of standard 1: {4,8,16,32}, default: 8
* value of standard 2: {6,12,24,48}, default: 12 + *

*/ ACCELEROMETER_RANGE, /** * The range of gyroscope - * - * value of standard 1: {500,1000,2000,4000}, default: 1000 + *

+ * value of standard 1: {500,1000,2000,4000}, default: 1000
* value of standard 2: {250,500,1000,2000,4000}, default: 1000 + *

*/ GYROSCOPE_RANGE, /** * The parameter of accelerometer low pass filter - * + *

* values: {0,1,2}, default: 2 + *

*/ ACCELEROMETER_LOW_PASS_FILTER, /** * The parameter of gyroscope low pass filter - * + *

* values: {23,64}, default: 64 + *

*/ GYROSCOPE_LOW_PASS_FILTER, @@ -608,10 +624,11 @@ struct MYNTEYE_API ImuData { std::uint32_t frame_id; /** * IMU accel or gyro flag - * - * 0: accel and gyro are both valid - * 1: accel is valid + *

+ * 0: accel and gyro are both valid
+ * 1: accel is valid
* 2: gyro is valid + *

*/ std::uint8_t flag; /** IMU timestamp in 1us */