DemyICA commited on
Commit
7ea01a3
·
1 Parent(s): eb446b9

update SDK to dev

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. accerionsdk/CHANGELOG.md +9 -0
  2. accerionsdk/CMakeLists.txt +0 -73
  3. accerionsdk/Doxyfile +0 -0
  4. accerionsdk/LICENSE +0 -201
  5. accerionsdk/cov.txt +0 -1
  6. accerionsdk/coverage.py +0 -218
  7. accerionsdk/tools/python/sdk/__pycache__/__init__.cpython-311.pyc +0 -0
  8. accerionsdk/tools/python/sdk/__pycache__/__init__.cpython-38.pyc +0 -0
  9. accerionsdk/tools/python/sdk/arams/__pycache__/__init__.cpython-38.pyc +0 -0
  10. accerionsdk/tools/python/sdk/arams/__pycache__/_log_file.cpython-38.pyc +0 -0
  11. accerionsdk/tools/python/sdk/arams/__pycache__/arams.cpython-38.pyc +0 -0
  12. accerionsdk/tools/python/sdk/arams/__pycache__/filter.cpython-38.pyc +0 -0
  13. accerionsdk/tools/python/sdk/arams/__pycache__/migrations.cpython-38.pyc +0 -0
  14. accerionsdk/tools/python/sdk/arams/__pycache__/modifications.cpython-38.pyc +0 -0
  15. accerionsdk/tools/python/sdk/arams/__pycache__/utils.cpython-38.pyc +0 -0
  16. accerionsdk/tools/python/sdk/arams/filter/__pycache__/__init__.cpython-38.pyc +0 -0
  17. accerionsdk/tools/python/sdk/arams/filter/__pycache__/initial_correction.cpython-38.pyc +0 -0
  18. accerionsdk/tools/python/sdk/arams/filter/__pycache__/initial_record.cpython-38.pyc +0 -0
  19. accerionsdk/tools/python/sdk/arams/filter/__pycache__/power_cycle.cpython-38.pyc +0 -0
  20. accerionsdk/tools/python/sdk/arams/filter/__pycache__/power_cycle_legacy.cpython-38.pyc +0 -0
  21. accerionsdk/tools/python/sdk/arams/filter/__pycache__/region.cpython-38.pyc +0 -0
  22. accerionsdk/tools/python/sdk/arams/filter/__pycache__/time_interval.cpython-38.pyc +0 -0
  23. accerionsdk/tools/python/sdk/arams/filter/__pycache__/time_interval_legacy.cpython-38.pyc +0 -0
  24. accerionsdk/tools/python/sdk/arams/filter/__pycache__/utils.cpython-38.pyc +0 -0
  25. accerionsdk/tools/python/sdk/arams/versions/__pycache__/__init__.cpython-38.pyc +0 -0
  26. accerionsdk/tools/python/sdk/arams/versions/__pycache__/base.cpython-38.pyc +0 -0
  27. accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v5.cpython-38.pyc +0 -0
  28. accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v6.cpython-38.pyc +0 -0
  29. accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v61.cpython-38.pyc +0 -0
  30. accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v615.cpython-38.pyc +0 -0
  31. accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v616.cpython-38.pyc +0 -0
  32. accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v700.cpython-38.pyc +0 -0
  33. accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v70010.cpython-38.pyc +0 -0
  34. accerionsdk/tools/python/sdk/arams/versions/__pycache__/version_modules.cpython-38.pyc +0 -0
  35. accerionsdk/tools/python/sdk/arams/versions/_file_specifications_v616.py +0 -62
  36. accerionsdk/tools/python/sdk/csv/__pycache__/__init__.cpython-38.pyc +0 -0
  37. accerionsdk/tools/python/sdk/csv/__pycache__/reader.cpython-38.pyc +0 -0
  38. accerionsdk/tools/python/sdk/csv/versions/__pycache__/__init__.cpython-38.pyc +0 -0
  39. accerionsdk/tools/python/sdk/csv/versions/__pycache__/base.cpython-38.pyc +0 -0
  40. accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v6.cpython-38.pyc +0 -0
  41. accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v61.cpython-38.pyc +0 -0
  42. accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v615.cpython-38.pyc +0 -0
  43. accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v700.cpython-38.pyc +0 -0
  44. accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v710.cpython-38.pyc +0 -0
  45. accerionsdk/tools/python/sdk/csv/versions/__pycache__/version_modules.cpython-38.pyc +0 -0
  46. accerionsdk/tools/python/sdk/data/__pycache__/__init__.cpython-38.pyc +0 -0
  47. accerionsdk/tools/python/sdk/data/__pycache__/data_container.cpython-38.pyc +0 -0
  48. accerionsdk/tools/python/sdk/data/__pycache__/pose.cpython-38.pyc +0 -0
  49. accerionsdk/tools/python/sdk/data/__pycache__/signature.cpython-38.pyc +0 -0
  50. accerionsdk/tools/python/sdk/data/__pycache__/signature_reader.cpython-38.pyc +0 -0
accerionsdk/CHANGELOG.md CHANGED
@@ -19,11 +19,20 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
19
  - Method to combine(with update strategy) two maps
20
  - Search radius is shown in plot_external_reference_timeseries
21
  - Configuration param 'velocity interval' for correction count plots
 
 
22
  ### Fixed
23
  - Python map plots that use 'add_input_poses' (via 'overlay input poses' param) uses external reference logs (LER)
24
  - Time interval not in right units (ms) for ARAMS logs pre v7.1
25
  - Mean residual heading error not in right units (m instead of deg)
26
  - Eigen version now set to 3.4.1
 
 
 
 
 
 
 
27
 
28
  ## [7.1.1]
29
  - No changes, please refer to the official release notes
 
19
  - Method to combine(with update strategy) two maps
20
  - Search radius is shown in plot_external_reference_timeseries
21
  - Configuration param 'velocity interval' for correction count plots
22
+ - MapMerge utility function in AccerionMapManagement library
23
+ - CombineMap tool to merge or update db files
24
  ### Fixed
25
  - Python map plots that use 'add_input_poses' (via 'overlay input poses' param) uses external reference logs (LER)
26
  - Time interval not in right units (ms) for ARAMS logs pre v7.1
27
  - Mean residual heading error not in right units (m instead of deg)
28
  - Eigen version now set to 3.4.1
29
+ - plot_external_reference_timeseries would not run if dataset contained no drift corrections
30
+ ### Changed
31
+ - (Multi)Area functionality is now (Multi)Map and uses a string as an identifier instead of an integer
32
+ - Added functionality in CLI to create and rename maps
33
+ - GetPoses application now also plots external reference pose
34
+ ### Removed
35
+ - max_page_count pragma check in validation
36
 
37
  ## [7.1.1]
38
  - No changes, please refer to the official release notes
accerionsdk/CMakeLists.txt DELETED
@@ -1,73 +0,0 @@
1
- cmake_minimum_required(VERSION 3.10)
2
-
3
- option(BUILD_SHARED_LIBS "Build using shared libraries" OFF)
4
-
5
- option(DATABASE_HANDLING "Include the build of database handling" ON)
6
- option(MAP "Include the build of map" ON)
7
- option(MAP_MANAGEMENT "Include the build of map management" ON)
8
- option(PGO "Include the build of pgo" ON)
9
- option(POSE_MANAGER "Include the build of the pose manager" ON)
10
- option(UTILITIES "Include the build of the pose manager" ON)
11
- option(TOOLS "Include the build of the tools" ON)
12
- option(EXAMPLES "Include the build of the examples" OFF)
13
- option(UNIT_TESTS "Include the build of the unit tests" OFF)
14
-
15
- # Dependent option/variable
16
- if(NOT UTILITIES AND (${EXAMPLES} OR ${TOOLS}))
17
- set(UTILITIES ON)
18
- endif()
19
-
20
- set(DEBUGMODE OFF)
21
-
22
- if(NOT CMAKE_CXX_STANDARD)
23
- set(CMAKE_CXX_STANDARD 17)
24
- set(CMAKE_CXX_STANDARD_REQUIRED TRUE)
25
- endif()
26
-
27
- add_subdirectory(accerionsensorapi)
28
-
29
- include(cmake/Base.cmake)
30
-
31
- if(DATABASE_HANDLING)
32
- if(UNIT_TESTS)
33
- set(UTILITIES ON)
34
- endif()
35
- include(cmake/BuildAccerionDatabaseHandling.cmake)
36
- endif()
37
-
38
- if(MAP)
39
- include(cmake/BuildAccerionMap.cmake)
40
- endif()
41
-
42
- if(MAP_MANAGEMENT)
43
- include(cmake/BuildAccerionMapManagement.cmake)
44
- endif()
45
-
46
- if(PGO)
47
- include(cmake/BuildAccerionPgo.cmake)
48
- endif()
49
-
50
- if(POSE_MANAGER)
51
- include(cmake/BuildAccerionPoseManager.cmake)
52
- endif()
53
-
54
- if(UTILITIES)
55
- include(cmake/BuildAccerionUtilities.cmake)
56
- endif()
57
-
58
- # Dummy project without a target, but
59
- # - it prevents a cmake warning, and
60
- # - it will be the name of the windows solution file used for the continuous integration build for windows
61
- project(SDK)
62
-
63
- if(TOOLS)
64
- add_subdirectory(tools/command-line-interface)
65
- endif()
66
-
67
- if(EXAMPLES)
68
- add_subdirectory(examples)
69
- endif()
70
-
71
- if(UNIT_TESTS)
72
- add_subdirectory(tests)
73
- endif()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
accerionsdk/Doxyfile DELETED
The diff for this file is too large to render. See raw diff
 
accerionsdk/LICENSE DELETED
@@ -1,201 +0,0 @@
1
- Apache License
2
- Version 2.0, January 2004
3
- http://www.apache.org/licenses/
4
-
5
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6
-
7
- 1. Definitions.
8
-
9
- "License" shall mean the terms and conditions for use, reproduction,
10
- and distribution as defined by Sections 1 through 9 of this document.
11
-
12
- "Licensor" shall mean the copyright owner or entity authorized by
13
- the copyright owner that is granting the License.
14
-
15
- "Legal Entity" shall mean the union of the acting entity and all
16
- other entities that control, are controlled by, or are under common
17
- control with that entity. For the purposes of this definition,
18
- "control" means (i) the power, direct or indirect, to cause the
19
- direction or management of such entity, whether by contract or
20
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
21
- outstanding shares, or (iii) beneficial ownership of such entity.
22
-
23
- "You" (or "Your") shall mean an individual or Legal Entity
24
- exercising permissions granted by this License.
25
-
26
- "Source" form shall mean the preferred form for making modifications,
27
- including but not limited to software source code, documentation
28
- source, and configuration files.
29
-
30
- "Object" form shall mean any form resulting from mechanical
31
- transformation or translation of a Source form, including but
32
- not limited to compiled object code, generated documentation,
33
- and conversions to other media types.
34
-
35
- "Work" shall mean the work of authorship, whether in Source or
36
- Object form, made available under the License, as indicated by a
37
- copyright notice that is included in or attached to the work
38
- (an example is provided in the Appendix below).
39
-
40
- "Derivative Works" shall mean any work, whether in Source or Object
41
- form, that is based on (or derived from) the Work and for which the
42
- editorial revisions, annotations, elaborations, or other modifications
43
- represent, as a whole, an original work of authorship. For the purposes
44
- of this License, Derivative Works shall not include works that remain
45
- separable from, or merely link (or bind by name) to the interfaces of,
46
- the Work and Derivative Works thereof.
47
-
48
- "Contribution" shall mean any work of authorship, including
49
- the original version of the Work and any modifications or additions
50
- to that Work or Derivative Works thereof, that is intentionally
51
- submitted to Licensor for inclusion in the Work by the copyright owner
52
- or by an individual or Legal Entity authorized to submit on behalf of
53
- the copyright owner. For the purposes of this definition, "submitted"
54
- means any form of electronic, verbal, or written communication sent
55
- to the Licensor or its representatives, including but not limited to
56
- communication on electronic mailing lists, source code control systems,
57
- and issue tracking systems that are managed by, or on behalf of, the
58
- Licensor for the purpose of discussing and improving the Work, but
59
- excluding communication that is conspicuously marked or otherwise
60
- designated in writing by the copyright owner as "Not a Contribution."
61
-
62
- "Contributor" shall mean Licensor and any individual or Legal Entity
63
- on behalf of whom a Contribution has been received by Licensor and
64
- subsequently incorporated within the Work.
65
-
66
- 2. Grant of Copyright License. Subject to the terms and conditions of
67
- this License, each Contributor hereby grants to You a perpetual,
68
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
69
- copyright license to reproduce, prepare Derivative Works of,
70
- publicly display, publicly perform, sublicense, and distribute the
71
- Work and such Derivative Works in Source or Object form.
72
-
73
- 3. Grant of Patent License. Subject to the terms and conditions of
74
- this License, each Contributor hereby grants to You a perpetual,
75
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
76
- (except as stated in this section) patent license to make, have made,
77
- use, offer to sell, sell, import, and otherwise transfer the Work,
78
- where such license applies only to those patent claims licensable
79
- by such Contributor that are necessarily infringed by their
80
- Contribution(s) alone or by combination of their Contribution(s)
81
- with the Work to which such Contribution(s) was submitted. If You
82
- institute patent litigation against any entity (including a
83
- cross-claim or counterclaim in a lawsuit) alleging that the Work
84
- or a Contribution incorporated within the Work constitutes direct
85
- or contributory patent infringement, then any patent licenses
86
- granted to You under this License for that Work shall terminate
87
- as of the date such litigation is filed.
88
-
89
- 4. Redistribution. You may reproduce and distribute copies of the
90
- Work or Derivative Works thereof in any medium, with or without
91
- modifications, and in Source or Object form, provided that You
92
- meet the following conditions:
93
-
94
- (a) You must give any other recipients of the Work or
95
- Derivative Works a copy of this License; and
96
-
97
- (b) You must cause any modified files to carry prominent notices
98
- stating that You changed the files; and
99
-
100
- (c) You must retain, in the Source form of any Derivative Works
101
- that You distribute, all copyright, patent, trademark, and
102
- attribution notices from the Source form of the Work,
103
- excluding those notices that do not pertain to any part of
104
- the Derivative Works; and
105
-
106
- (d) If the Work includes a "NOTICE" text file as part of its
107
- distribution, then any Derivative Works that You distribute must
108
- include a readable copy of the attribution notices contained
109
- within such NOTICE file, excluding those notices that do not
110
- pertain to any part of the Derivative Works, in at least one
111
- of the following places: within a NOTICE text file distributed
112
- as part of the Derivative Works; within the Source form or
113
- documentation, if provided along with the Derivative Works; or,
114
- within a display generated by the Derivative Works, if and
115
- wherever such third-party notices normally appear. The contents
116
- of the NOTICE file are for informational purposes only and
117
- do not modify the License. You may add Your own attribution
118
- notices within Derivative Works that You distribute, alongside
119
- or as an addendum to the NOTICE text from the Work, provided
120
- that such additional attribution notices cannot be construed
121
- as modifying the License.
122
-
123
- You may add Your own copyright statement to Your modifications and
124
- may provide additional or different license terms and conditions
125
- for use, reproduction, or distribution of Your modifications, or
126
- for any such Derivative Works as a whole, provided Your use,
127
- reproduction, and distribution of the Work otherwise complies with
128
- the conditions stated in this License.
129
-
130
- 5. Submission of Contributions. Unless You explicitly state otherwise,
131
- any Contribution intentionally submitted for inclusion in the Work
132
- by You to the Licensor shall be under the terms and conditions of
133
- this License, without any additional terms or conditions.
134
- Notwithstanding the above, nothing herein shall supersede or modify
135
- the terms of any separate license agreement you may have executed
136
- with Licensor regarding such Contributions.
137
-
138
- 6. Trademarks. This License does not grant permission to use the trade
139
- names, trademarks, service marks, or product names of the Licensor,
140
- except as required for reasonable and customary use in describing the
141
- origin of the Work and reproducing the content of the NOTICE file.
142
-
143
- 7. Disclaimer of Warranty. Unless required by applicable law or
144
- agreed to in writing, Licensor provides the Work (and each
145
- Contributor provides its Contributions) on an "AS IS" BASIS,
146
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
147
- implied, including, without limitation, any warranties or conditions
148
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
149
- PARTICULAR PURPOSE. You are solely responsible for determining the
150
- appropriateness of using or redistributing the Work and assume any
151
- risks associated with Your exercise of permissions under this License.
152
-
153
- 8. Limitation of Liability. In no event and under no legal theory,
154
- whether in tort (including negligence), contract, or otherwise,
155
- unless required by applicable law (such as deliberate and grossly
156
- negligent acts) or agreed to in writing, shall any Contributor be
157
- liable to You for damages, including any direct, indirect, special,
158
- incidental, or consequential damages of any character arising as a
159
- result of this License or out of the use or inability to use the
160
- Work (including but not limited to damages for loss of goodwill,
161
- work stoppage, computer failure or malfunction, or any and all
162
- other commercial damages or losses), even if such Contributor
163
- has been advised of the possibility of such damages.
164
-
165
- 9. Accepting Warranty or Additional Liability. While redistributing
166
- the Work or Derivative Works thereof, You may choose to offer,
167
- and charge a fee for, acceptance of support, warranty, indemnity,
168
- or other liability obligations and/or rights consistent with this
169
- License. However, in accepting such obligations, You may act only
170
- on Your own behalf and on Your sole responsibility, not on behalf
171
- of any other Contributor, and only if You agree to indemnify,
172
- defend, and hold each Contributor harmless for any liability
173
- incurred by, or claims asserted against, such Contributor by reason
174
- of your accepting any such warranty or additional liability.
175
-
176
- END OF TERMS AND CONDITIONS
177
-
178
- APPENDIX: How to apply the Apache License to your work.
179
-
180
- To apply the Apache License to your work, attach the following
181
- boilerplate notice, with the fields enclosed by brackets "{}"
182
- replaced with your own identifying information. (Don't include
183
- the brackets!) The text should be enclosed in the appropriate
184
- comment syntax for the file format. We also recommend that a
185
- file or class name and description of purpose be included on the
186
- same "printed page" as the copyright notice for easier
187
- identification within third-party archives.
188
-
189
- Copyright 2019 Accerion
190
-
191
- Licensed under the Apache License, Version 2.0 (the "License");
192
- you may not use this file except in compliance with the License.
193
- You may obtain a copy of the License at
194
-
195
- http://www.apache.org/licenses/LICENSE-2.0
196
-
197
- Unless required by applicable law or agreed to in writing, software
198
- distributed under the License is distributed on an "AS IS" BASIS,
199
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
200
- See the License for the specific language governing permissions and
201
- limitations under the License.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
accerionsdk/cov.txt DELETED
@@ -1 +0,0 @@
1
- 100
 
 
accerionsdk/coverage.py DELETED
@@ -1,218 +0,0 @@
1
- #!/usr/bin/env python
2
- # -*- mode: python; coding: utf-8 -*-
3
-
4
- # All files in doxy-coverage are Copyright 2014 Alvaro Lopez Ortega.
5
- #
6
- # Authors:
7
- # * Alvaro Lopez Ortega <alvaro@gnu.org>
8
- #
9
- # Redistribution and use in source and binary forms, with or without
10
- # modification, are permitted provided that the following conditions
11
- # are met:
12
- #
13
- # * Redistributions of source code must retain the above copyright
14
- # notice, this list of conditions and the following disclaimer.
15
- #
16
- # * Redistributions in binary form must reproduce the above
17
- # copyright notice, this list of conditions and the following
18
- # disclaimer in the documentation and/or other materials provided
19
- # with the distribution.
20
- #
21
- # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22
- # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23
- # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24
- # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25
- # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26
- # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27
- # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28
- # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29
- # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30
- # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31
- # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32
-
33
- from __future__ import print_function
34
-
35
- __author__ = "Alvaro Lopez Ortega"
36
- __email__ = "alvaro@alobbs.com"
37
- __copyright__ = "Copyright (C) 2014 Alvaro Lopez Ortega"
38
-
39
- import os
40
- import sys
41
- import argparse
42
- import xml.etree.ElementTree as ET
43
-
44
- # Defaults
45
- ACCEPTABLE_COVERAGE = 80
46
-
47
- # Global
48
- ns = None
49
- cov = 0
50
-
51
- def ERROR(*objs):
52
- print("ERROR: ", *objs, end='\n', file=sys.stderr)
53
-
54
- def FATAL(*objs):
55
- ERROR (*objs)
56
- sys.exit((1,0)[ns.noerror])
57
-
58
- def parse_file(fullpath):
59
- tree = ET.parse(fullpath)
60
-
61
- sourcefile = None
62
- definitions = {}
63
-
64
- for definition in tree.findall("./compounddef//memberdef"):
65
- # Should it be documented
66
- if (definition.get('kind') == 'function' and
67
- definition.get('static') == 'yes'):
68
- continue
69
-
70
- # Is the definition documented?
71
- documented = False
72
- for k in ('briefdescription', 'detaileddescription', 'inbodydescription'):
73
- if definition.findall("./%s/"%(k)):
74
- documented = True
75
- break
76
-
77
- # Name
78
- d_def = definition.find('./definition')
79
- d_nam = definition.find('./name')
80
-
81
- if not sourcefile:
82
- l = definition.find('./location')
83
- if l is not None:
84
- sourcefile = l.get('file')
85
-
86
- if d_def is not None:
87
- name = d_def.text
88
- elif d_nam is not None:
89
- name = d_nam.text
90
- else:
91
- name = definition.get('id')
92
-
93
- # Aggregate
94
- definitions[name] = documented
95
-
96
- if not sourcefile:
97
- sourcefile = fullpath
98
-
99
- return (sourcefile, definitions)
100
-
101
-
102
- def parse(path):
103
- index_fp = os.path.join (path, "index.xml")
104
- if not os.path.exists (index_fp):
105
- FATAL ("Documentation not present. Exiting.", index_fp)
106
-
107
- tree = ET.parse(index_fp)
108
-
109
- files = {}
110
- for entry in tree.findall('compound'):
111
- if entry.get('kind') in ('dir'):
112
- continue
113
-
114
- file_fp = os.path.join (path, "%s.xml" %(entry.get('refid')))
115
- tmp = parse_file (file_fp)
116
- files[tmp[0]] = tmp[1]
117
-
118
- return files
119
-
120
- def get_cur():
121
- file = open("cov.txt", "r")
122
- current = file.readline()
123
- try:
124
- current = int(current)
125
- except ValueError:
126
- current = int(0)
127
- file.close()
128
- return current
129
-
130
- def report (files, exclude_dirs):
131
- def get_coverage (f):
132
- defs = files[f]
133
- if not defs:
134
- return 100
135
-
136
- doc_yes = len([d for d in defs.values() if d])
137
- doc_no = len([d for d in defs.values() if not d])
138
- return (doc_yes * 100.0 / (doc_yes + doc_no))
139
-
140
- def file_cmp (a,b):
141
- return cmp(get_coverage(a), get_coverage(b))
142
-
143
- files_sorted = files.keys()
144
- files_sorted.sort(file_cmp)
145
- files_sorted.reverse()
146
-
147
- total_yes = 0
148
- total_no = 0
149
-
150
- for f in files_sorted:
151
- skip = False
152
- for exclude_dir in exclude_dirs:
153
- if exclude_dir in f:
154
- skip = True
155
- break
156
- if skip:
157
- continue
158
-
159
- defs = files[f]
160
- if not defs:
161
- continue
162
-
163
- doc_yes = len([d for d in defs.values() if d])
164
- doc_no = len([d for d in defs.values() if not d])
165
- doc_per = doc_yes * 100.0 / (doc_yes + doc_no)
166
-
167
- total_yes += doc_yes
168
- total_no += doc_no
169
-
170
- print ('%3d%% - %s - (%d of %d)'%(doc_per, f, doc_yes, (doc_yes + doc_no)))
171
-
172
- defs_sorted = defs.keys()
173
- defs_sorted.sort()
174
- for d in defs_sorted:
175
- if not defs[d]:
176
- print ("\t", d)
177
-
178
- total_all = total_yes + total_no
179
- total_per = total_yes * 100 / total_all
180
- print()
181
- print("%d%% API documentation coverage" % (total_per))
182
- current = get_cur()
183
- print("%d%% previously known coverage" % (current))
184
- returnvalue = (ns.threshold - total_per, 0)[total_per > ns.threshold]
185
- if current == '' or current <= total_per:
186
- file = open("cov.txt", "w")
187
- file.write('%d' % total_per)
188
- returnvalue = 0
189
- return returnvalue
190
-
191
- def main():
192
- # Arguments
193
- parser = argparse.ArgumentParser()
194
- parser.add_argument ("dir", action="store", help="Path to Doxygen's XML doc directory")
195
- parser.add_argument ("--noerror", action="store_true", help="Do not return error code after execution")
196
- parser.add_argument ("--threshold", action="store", help="Min acceptable coverage percentage (Default: %s)"%(ACCEPTABLE_COVERAGE), default=ACCEPTABLE_COVERAGE, type=int)
197
- parser.add_argument("--excludedirs", nargs='+', help="List of directories to be excluded from coverage analysis", type=str, default=[])
198
-
199
-
200
- global ns
201
- ns = parser.parse_args()
202
- if not ns:
203
- FATAL ("ERROR: Couldn't parse parameters")
204
-
205
- # Parse
206
- files = parse (ns.dir)
207
-
208
- # Print report
209
- err = report (files, ns.excludedirs)
210
- if ns.noerror:
211
- return
212
-
213
- sys.exit(err)
214
-
215
-
216
- if __name__ == "__main__":
217
- main()
218
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
accerionsdk/tools/python/sdk/__pycache__/__init__.cpython-311.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/__pycache__/__init__.cpython-311.pyc and b/accerionsdk/tools/python/sdk/__pycache__/__init__.cpython-311.pyc differ
 
accerionsdk/tools/python/sdk/__pycache__/__init__.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/__pycache__/__init__.cpython-38.pyc and b/accerionsdk/tools/python/sdk/__pycache__/__init__.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/__pycache__/__init__.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/__pycache__/__init__.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/__pycache__/__init__.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/__pycache__/_log_file.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/__pycache__/_log_file.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/__pycache__/_log_file.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/__pycache__/arams.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/__pycache__/arams.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/__pycache__/arams.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/__pycache__/filter.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/__pycache__/filter.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/__pycache__/filter.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/__pycache__/migrations.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/__pycache__/migrations.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/__pycache__/migrations.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/__pycache__/modifications.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/__pycache__/modifications.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/__pycache__/modifications.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/__pycache__/utils.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/__pycache__/utils.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/__pycache__/utils.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/filter/__pycache__/__init__.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/filter/__pycache__/__init__.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/filter/__pycache__/__init__.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/filter/__pycache__/initial_correction.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/filter/__pycache__/initial_correction.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/filter/__pycache__/initial_correction.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/filter/__pycache__/initial_record.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/filter/__pycache__/initial_record.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/filter/__pycache__/initial_record.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/filter/__pycache__/power_cycle.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/filter/__pycache__/power_cycle.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/filter/__pycache__/power_cycle.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/filter/__pycache__/power_cycle_legacy.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/filter/__pycache__/power_cycle_legacy.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/filter/__pycache__/power_cycle_legacy.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/filter/__pycache__/region.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/filter/__pycache__/region.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/filter/__pycache__/region.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/filter/__pycache__/time_interval.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/filter/__pycache__/time_interval.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/filter/__pycache__/time_interval.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/filter/__pycache__/time_interval_legacy.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/filter/__pycache__/time_interval_legacy.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/filter/__pycache__/time_interval_legacy.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/filter/__pycache__/utils.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/filter/__pycache__/utils.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/filter/__pycache__/utils.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/versions/__pycache__/__init__.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/versions/__pycache__/__init__.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/versions/__pycache__/__init__.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/versions/__pycache__/base.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/versions/__pycache__/base.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/versions/__pycache__/base.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v5.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v5.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v5.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v6.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v6.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v6.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v61.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v61.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v61.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v615.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v615.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v615.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v616.cpython-38.pyc DELETED
Binary file (1.68 kB)
 
accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v700.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v700.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v700.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/versions/__pycache__/file_specifications_v70010.cpython-38.pyc DELETED
Binary file (2.27 kB)
 
accerionsdk/tools/python/sdk/arams/versions/__pycache__/version_modules.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/arams/versions/__pycache__/version_modules.cpython-38.pyc and b/accerionsdk/tools/python/sdk/arams/versions/__pycache__/version_modules.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/arams/versions/_file_specifications_v616.py DELETED
@@ -1,62 +0,0 @@
1
- #!/usr/bin/env python3
2
- """
3
- Copyright (c) 2024, Accerion (Unconstrained Robotics B.V.)
4
- * All rights reserved.
5
- *
6
- * This Source Code Form is subject to the terms of the Mozilla Public
7
- * License, v. 2.0. If a copy of the MPL was not distributed with this
8
- * file, You can obtain one at https://mozilla.org/MPL/2.0/.
9
- """
10
-
11
- from enum import Enum
12
- from sdk.arams.versions.file_specifications_v61 import ARAMS_INDEX, ARAMS_TIME, FMC, LRT, LSD
13
-
14
-
15
- # Log drift corrections .csv file column headers used
16
- class LDC(Enum):
17
- INDEX = ARAMS_INDEX
18
- TIME = ARAMS_TIME
19
-
20
- NEW_XPOS = "sensor_pos_x[m]"
21
- NEW_YPOS = "sensor_pos_y[m]"
22
- NEW_THETA = "sensor_pos_theta[deg]"
23
- ERROR_X = "error_x[m]"
24
- ERROR_Y = "error_y[m]"
25
- ERROR_THETA = "error_theta[deg]"
26
- CUMU_DIST = "cumulative_distance[m]"
27
- CUMU_YAW = "cumulative_yaw[deg]"
28
- ERROR_PERC = "error_percentage[%]"
29
- CLUSTER_ID = "cluster_id"
30
- SIGNATURE_ID = "signature_id"
31
-
32
-
33
- @staticmethod
34
- def CanParse(file_name: str):
35
- if file_name.startswith("logDriftCorrections.") and file_name.endswith(".csv"):
36
- return True
37
- return False
38
-
39
- class LER(Enum):
40
- TIME = ARAMS_TIME
41
-
42
- TIME_OFFSET = "time_offset(s)"
43
- INPUT_POS_X = "input_pos_x[m]"
44
- INPUT_POS_Y = "input_pos_y[m]"
45
- INPUT_POS_THETA = "input_pos_theta[deg]"
46
- RAW_OUTPUT_VEL_X = "raw_output_vel_x[m/s]"
47
- RAW_OUTPUT_VEL_Y = "raw_output_vel_y[m/s]"
48
- RAW_OUTPUT_VEL_TH = "raw_output_vel_theta[deg/s]"
49
- STD_DEV_POS_X = "std_dev_pos_x[m]"
50
- STD_DEV_POS_Y = "std_dev_pos_y[m]"
51
- STD_DEV_POS_THETA = "std_dev_pos_theta[deg]"
52
-
53
- @staticmethod
54
- def CanParse(file_name: str):
55
- if file_name.startswith("logExtRefInputFast") and file_name.endswith(".csv"):
56
- return True
57
- return False
58
-
59
-
60
- # List of supported ARAMS files
61
- FILES_SUPPORTED = [FMC, LRT, LDC, LER, LSD]
62
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
accerionsdk/tools/python/sdk/csv/__pycache__/__init__.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/csv/__pycache__/__init__.cpython-38.pyc and b/accerionsdk/tools/python/sdk/csv/__pycache__/__init__.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/csv/__pycache__/reader.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/csv/__pycache__/reader.cpython-38.pyc and b/accerionsdk/tools/python/sdk/csv/__pycache__/reader.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/csv/versions/__pycache__/__init__.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/csv/versions/__pycache__/__init__.cpython-38.pyc and b/accerionsdk/tools/python/sdk/csv/versions/__pycache__/__init__.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/csv/versions/__pycache__/base.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/csv/versions/__pycache__/base.cpython-38.pyc and b/accerionsdk/tools/python/sdk/csv/versions/__pycache__/base.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v6.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v6.cpython-38.pyc and b/accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v6.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v61.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v61.cpython-38.pyc and b/accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v61.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v615.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v615.cpython-38.pyc and b/accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v615.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v700.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v700.cpython-38.pyc and b/accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v700.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v710.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v710.cpython-38.pyc and b/accerionsdk/tools/python/sdk/csv/versions/__pycache__/file_specifications_v710.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/csv/versions/__pycache__/version_modules.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/csv/versions/__pycache__/version_modules.cpython-38.pyc and b/accerionsdk/tools/python/sdk/csv/versions/__pycache__/version_modules.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/data/__pycache__/__init__.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/data/__pycache__/__init__.cpython-38.pyc and b/accerionsdk/tools/python/sdk/data/__pycache__/__init__.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/data/__pycache__/data_container.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/data/__pycache__/data_container.cpython-38.pyc and b/accerionsdk/tools/python/sdk/data/__pycache__/data_container.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/data/__pycache__/pose.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/data/__pycache__/pose.cpython-38.pyc and b/accerionsdk/tools/python/sdk/data/__pycache__/pose.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/data/__pycache__/signature.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/data/__pycache__/signature.cpython-38.pyc and b/accerionsdk/tools/python/sdk/data/__pycache__/signature.cpython-38.pyc differ
 
accerionsdk/tools/python/sdk/data/__pycache__/signature_reader.cpython-38.pyc CHANGED
Binary files a/accerionsdk/tools/python/sdk/data/__pycache__/signature_reader.cpython-38.pyc and b/accerionsdk/tools/python/sdk/data/__pycache__/signature_reader.cpython-38.pyc differ