placo 0.3.5__tar.gz → 0.3.7__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of placo might be problematic. Click here for more details.
- {placo-0.3.5 → placo-0.3.7}/.gitignore +1 -0
- placo-0.3.7/.readthedocs.yaml +22 -0
- {placo-0.3.5 → placo-0.3.7}/CMakeLists.txt +1 -0
- {placo-0.3.5 → placo-0.3.7}/PKG-INFO +2 -1
- {placo-0.3.5 → placo-0.3.7}/bindings/expose-dynamics.cpp +3 -3
- {placo-0.3.5 → placo-0.3.7}/bindings/expose-kinematics.cpp +16 -3
- {placo-0.3.5 → placo-0.3.7}/doxygen_parse.py +13 -6
- {placo-0.3.5 → placo-0.3.7}/placo.pyi +610 -232
- {placo-0.3.5 → placo-0.3.7}/pyproject.toml +2 -1
- placo-0.3.7/python/placo_utils/__init__.py +4 -0
- {placo-0.3.5 → placo-0.3.7}/python/placo_utils/visualization.py +88 -16
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/kinematics_solver.cpp +5 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/kinematics_solver.h +10 -0
- placo-0.3.7/src/placo/kinematics/wheel_task.cpp +58 -0
- placo-0.3.7/src/placo/kinematics/wheel_task.h +40 -0
- {placo-0.3.5 → placo-0.3.7}/.clang-format +0 -0
- {placo-0.3.5 → placo-0.3.7}/.gitattributes +0 -0
- {placo-0.3.5 → placo-0.3.7}/Doxyfile +0 -0
- {placo-0.3.5 → placo-0.3.7}/LICENSE +0 -0
- {placo-0.3.5 → placo-0.3.7}/Makefile +0 -0
- {placo-0.3.5 → placo-0.3.7}/README.md +0 -0
- {placo-0.3.5 → placo-0.3.7}/bindings/expose-eigen.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/bindings/expose-footsteps.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/bindings/expose-parameters.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/bindings/expose-problem.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/bindings/expose-robot-wrapper.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/bindings/expose-tools.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/bindings/expose-trajectory.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/bindings/expose-utils.hpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/bindings/expose-walk-pattern-generator.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/bindings/module.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/bindings/module.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/bindings/registry.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/bindings/registry.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/python/Makefile +0 -0
- {placo-0.3.5 → placo-0.3.7}/python/placo_utils/tf.py +0 -0
- {placo-0.3.5 → placo-0.3.7}/python/run_tests.sh +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/avoid_self_collisions_constraint.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/avoid_self_collisions_constraint.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/com_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/com_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/constraint.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/constraint.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/contacts.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/contacts.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/dynamics_solver.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/dynamics_solver.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/frame_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/frame_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/gear_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/gear_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/joints_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/joints_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/orientation_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/orientation_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/position_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/position_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/reaction_ratio_constraint.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/reaction_ratio_constraint.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/relative_frame_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/relative_frame_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/relative_orientation_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/relative_orientation_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/relative_position_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/relative_position_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/dynamics/task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/footsteps/footsteps_planner.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/footsteps/footsteps_planner.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/footsteps/footsteps_planner_naive.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/footsteps/footsteps_planner_naive.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/footsteps/footsteps_planner_repetitive.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/footsteps/footsteps_planner_repetitive.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/avoid_self_collisions_constraint.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/avoid_self_collisions_constraint.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/centroidal_momentum_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/centroidal_momentum_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/com_polygon_constraint.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/com_polygon_constraint.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/com_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/com_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/constraint.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/constraint.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/distance_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/distance_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/frame_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/frame_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/gear_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/gear_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/joints_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/joints_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/orientation_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/orientation_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/position_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/position_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/regularization_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/regularization_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/relative_frame_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/relative_frame_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/relative_orientation_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/relative_orientation_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/relative_position_task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/relative_position_task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/task.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/kinematics/task.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/model/humanoid_parameters.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/model/humanoid_parameters.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/model/humanoid_robot.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/model/humanoid_robot.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/model/robot_wrapper.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/model/robot_wrapper.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/planning/lipm.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/planning/lipm.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/planning/walk_pattern_generator.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/planning/walk_pattern_generator.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/planning/walk_tasks.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/planning/walk_tasks.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/problem/constraint.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/problem/constraint.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/problem/expression.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/problem/expression.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/problem/integrator.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/problem/integrator.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/problem/polygon_constraint.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/problem/polygon_constraint.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/problem/problem.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/problem/problem.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/problem/qp_error.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/problem/qp_error.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/problem/sparsity.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/problem/sparsity.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/problem/variable.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/problem/variable.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/tools/axises_mask.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/tools/axises_mask.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/tools/prioritized.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/tools/prioritized.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/tools/utils.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/tools/utils.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/trajectory/cubic_spline.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/trajectory/cubic_spline.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/trajectory/cubic_spline_3d.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/trajectory/cubic_spline_3d.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/trajectory/foot_trajectory.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/trajectory/foot_trajectory.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/trajectory/kick.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/trajectory/kick.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/trajectory/swing_foot.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/trajectory/swing_foot.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/trajectory/swing_foot_cubic.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/trajectory/swing_foot_cubic.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/trajectory/swing_foot_quintic.cpp +0 -0
- {placo-0.3.5 → placo-0.3.7}/src/placo/trajectory/swing_foot_quintic.h +0 -0
- {placo-0.3.5 → placo-0.3.7}/stubs.py +0 -0
- {placo-0.3.5 → placo-0.3.7}/tweak_sdist.sh +0 -0
- {placo-0.3.5 → placo-0.3.7}/wks.yml +0 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# .readthedocs.yaml
|
|
2
|
+
# Read the Docs configuration file
|
|
3
|
+
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
|
|
4
|
+
|
|
5
|
+
# Required
|
|
6
|
+
version: 2
|
|
7
|
+
|
|
8
|
+
# Set the version of Python and other tools you might need
|
|
9
|
+
build:
|
|
10
|
+
os: ubuntu-22.04
|
|
11
|
+
tools:
|
|
12
|
+
python: "3.11"
|
|
13
|
+
|
|
14
|
+
# Build documentation in the docs/ directory with Sphinx
|
|
15
|
+
sphinx:
|
|
16
|
+
configuration: docs/conf.py
|
|
17
|
+
|
|
18
|
+
# We recommend specifying your dependencies to enable reproducible builds:
|
|
19
|
+
# https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html
|
|
20
|
+
python:
|
|
21
|
+
install:
|
|
22
|
+
- requirements: docs/requirements.txt
|
|
@@ -69,6 +69,7 @@ add_library(libplaco SHARED
|
|
|
69
69
|
src/placo/kinematics/distance_task.cpp
|
|
70
70
|
src/placo/kinematics/joints_task.cpp
|
|
71
71
|
src/placo/kinematics/gear_task.cpp
|
|
72
|
+
src/placo/kinematics/wheel_task.cpp
|
|
72
73
|
src/placo/kinematics/regularization_task.cpp
|
|
73
74
|
src/placo/kinematics/constraint.cpp
|
|
74
75
|
src/placo/kinematics/avoid_self_collisions_constraint.cpp
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: placo
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.7
|
|
4
4
|
Summary: PlaCo: Rhoban Planning and Control
|
|
5
5
|
Requires-Python: >= 3.8
|
|
6
6
|
License-Expression: MIT
|
|
@@ -14,6 +14,7 @@ Requires-Dist: pin >= 2.6.18, < 3
|
|
|
14
14
|
Requires-Dist: rhoban-cmeel-jsoncpp
|
|
15
15
|
Requires-Dist: meshcat
|
|
16
16
|
Requires-Dist: numpy
|
|
17
|
+
Requires-Dist: ischedule
|
|
17
18
|
Provides-Extra: build
|
|
18
19
|
Requires-Dist: pin[build] >= 2.6.18, < 3 ; extra == "build"
|
|
19
20
|
Requires-Dist: cmeel-urdfdom[build] ; extra == "build"
|
|
@@ -135,8 +135,8 @@ void exposeDynamics()
|
|
|
135
135
|
&DynamicsSolver::add_frame_task);
|
|
136
136
|
|
|
137
137
|
class__<Task, bases<tools::Prioritized>, boost::noncopyable>("DynamicsTask", no_init)
|
|
138
|
-
.add_property("A", &
|
|
139
|
-
.add_property("b", &
|
|
138
|
+
.add_property("A", +[](const Task& task) { return task.A; })
|
|
139
|
+
.add_property("b", +[](const Task& task) { return task.b; })
|
|
140
140
|
.add_property("kp", &Task::kp, &Task::kp)
|
|
141
141
|
.add_property("kd", &Task::kd, &Task::kd)
|
|
142
142
|
.add_property("critically_damped", &Task::critically_damped, &Task::critically_damped)
|
|
@@ -229,7 +229,7 @@ void exposeDynamics()
|
|
|
229
229
|
|
|
230
230
|
class__<Constraint, bases<tools::Prioritized>, boost::noncopyable>("DynamicsConstraint", no_init);
|
|
231
231
|
|
|
232
|
-
class__<AvoidSelfCollisionsConstraint, bases<Constraint>>("
|
|
232
|
+
class__<AvoidSelfCollisionsConstraint, bases<Constraint>>("AvoidSelfCollisionsDynamicsConstraint", init<>())
|
|
233
233
|
.def_readwrite("self_collisions_margin", &AvoidSelfCollisionsConstraint::self_collisions_margin)
|
|
234
234
|
.def_readwrite("self_collisions_trigger", &AvoidSelfCollisionsConstraint::self_collisions_trigger);
|
|
235
235
|
|
|
@@ -55,6 +55,10 @@ void exposeKinematics()
|
|
|
55
55
|
.def<GearTask& (KinematicsSolver::*)(void)>("add_gear_task", &KinematicsSolver::add_gear_task,
|
|
56
56
|
return_internal_reference<>())
|
|
57
57
|
|
|
58
|
+
// Wheel task
|
|
59
|
+
.def<WheelTask& (KinematicsSolver::*)(std::string, double, bool)>(
|
|
60
|
+
"add_wheel_task", &KinematicsSolver::add_wheel_task, return_internal_reference<>())
|
|
61
|
+
|
|
58
62
|
// Distance task
|
|
59
63
|
.def<DistanceTask& (KinematicsSolver::*)(std::string, std::string, double)>(
|
|
60
64
|
"add_distance_task", &KinematicsSolver::add_distance_task, return_internal_reference<>())
|
|
@@ -96,8 +100,10 @@ void exposeKinematics()
|
|
|
96
100
|
.def("solve", &KinematicsSolver::solve);
|
|
97
101
|
|
|
98
102
|
class__<Task, bases<tools::Prioritized>, boost::noncopyable>("Task", no_init)
|
|
99
|
-
.add_property(
|
|
100
|
-
|
|
103
|
+
.add_property(
|
|
104
|
+
"A", +[](const Task& task) { return task.A; })
|
|
105
|
+
.add_property(
|
|
106
|
+
"b", +[](const Task& task) { return task.b; })
|
|
101
107
|
.def("error", &Task::error)
|
|
102
108
|
.def("error_norm", &Task::error_norm)
|
|
103
109
|
.def("update", &Task::update);
|
|
@@ -167,6 +173,13 @@ void exposeKinematics()
|
|
|
167
173
|
|
|
168
174
|
class__<GearTask, bases<Task>>("GearTask", init<>()).def("set_gear", &GearTask::set_gear);
|
|
169
175
|
|
|
176
|
+
class__<WheelTask, bases<Task>>("WheelTask", init<std::string, double, bool>())
|
|
177
|
+
.add_property("joint", &WheelTask::joint)
|
|
178
|
+
.add_property("radius", &WheelTask::radius)
|
|
179
|
+
.add_property("omniwheel", &WheelTask::omniwheel)
|
|
180
|
+
.add_property(
|
|
181
|
+
"T_world_surface", +[](const WheelTask& task) { return task.T_world_surface; }, &WheelTask::T_world_surface);
|
|
182
|
+
|
|
170
183
|
class__<DistanceTask, bases<Task>>("DistanceTask", init<RobotWrapper::FrameIndex, RobotWrapper::FrameIndex, double>())
|
|
171
184
|
.add_property("frame_a", &DistanceTask::frame_a)
|
|
172
185
|
.add_property("frame_b", &DistanceTask::frame_b)
|
|
@@ -180,7 +193,7 @@ void exposeKinematics()
|
|
|
180
193
|
|
|
181
194
|
class__<Constraint, bases<tools::Prioritized>, boost::noncopyable>("KinematicsConstraint", no_init);
|
|
182
195
|
|
|
183
|
-
class__<AvoidSelfCollisionsConstraint, bases<Constraint>>("
|
|
196
|
+
class__<AvoidSelfCollisionsConstraint, bases<Constraint>>("AvoidSelfCollisionsKinematicsConstraint", init<>())
|
|
184
197
|
.def_readwrite("self_collisions_margin", &AvoidSelfCollisionsConstraint::self_collisions_margin)
|
|
185
198
|
.def_readwrite("self_collisions_trigger", &AvoidSelfCollisionsConstraint::self_collisions_trigger);
|
|
186
199
|
|
|
@@ -17,7 +17,10 @@ def resolve_type(node):
|
|
|
17
17
|
type_node = node.find("type")
|
|
18
18
|
|
|
19
19
|
if type_node.find("ref") is not None:
|
|
20
|
-
|
|
20
|
+
if type_node.text and "vector" in type_node.text:
|
|
21
|
+
return ["std::vector", type_node.find("ref").attrib["refid"]]
|
|
22
|
+
else:
|
|
23
|
+
return type_node.find("ref").attrib["refid"]
|
|
21
24
|
else:
|
|
22
25
|
return type_node.text
|
|
23
26
|
|
|
@@ -104,7 +107,7 @@ def parse_compound(compounddef_node: ET.Element):
|
|
|
104
107
|
"detaileddescription/para/parameterlist/parameteritem"
|
|
105
108
|
):
|
|
106
109
|
param_name = entry.find("parameternamelist/parametername").text
|
|
107
|
-
param_desc = entry.find("parameterdescription/para")
|
|
110
|
+
param_desc = element_to_string(entry.find("parameterdescription/para"))
|
|
108
111
|
member_definitions[id]["detailed"].append(
|
|
109
112
|
{"name": param_name, "desc": param_desc}
|
|
110
113
|
)
|
|
@@ -119,7 +122,7 @@ def parse_compound(compounddef_node: ET.Element):
|
|
|
119
122
|
"detaileddescription/para/simplesect[@kind='return']"
|
|
120
123
|
)
|
|
121
124
|
if return_type:
|
|
122
|
-
member_definitions[id]["returns"] = return_type.find("para")
|
|
125
|
+
member_definitions[id]["returns"] = element_to_string(return_type.find("para"))
|
|
123
126
|
|
|
124
127
|
if compound_kind == "namespace":
|
|
125
128
|
compound_members[name].append(id)
|
|
@@ -129,7 +132,7 @@ def parse_compound(compounddef_node: ET.Element):
|
|
|
129
132
|
elif kind == "enum":
|
|
130
133
|
doxygen_id_to_name[id] = name + "::" + member.find("name").text
|
|
131
134
|
|
|
132
|
-
#
|
|
135
|
+
# Listing all members
|
|
133
136
|
kind = compounddef_node.attrib["kind"]
|
|
134
137
|
for member in compounddef_node.findall("listofallmembers/member"):
|
|
135
138
|
compound_members[name].append(member.attrib["refid"])
|
|
@@ -145,8 +148,12 @@ def parse_xml(xml_file: str):
|
|
|
145
148
|
parse_compound(compounddef_node)
|
|
146
149
|
|
|
147
150
|
|
|
148
|
-
def resolve_doxygen_id(id: str):
|
|
149
|
-
if id
|
|
151
|
+
def resolve_doxygen_id(id: list|str):
|
|
152
|
+
if type(id) == list:
|
|
153
|
+
tpl = resolve_doxygen_id(id[0])
|
|
154
|
+
typ = resolve_doxygen_id(id[1])
|
|
155
|
+
return f"{tpl}<{typ}>"
|
|
156
|
+
elif id in doxygen_id_to_name:
|
|
150
157
|
return doxygen_id_to_name[id]
|
|
151
158
|
else:
|
|
152
159
|
return id
|