Skip to content

Commit 72d7e53

Browse files
author
Murilo M. Marinho
committed
[cpp-interface-coppeliasim-zmq] Added submodules, dependencies, and preliminary compilation directives without issues.
1 parent 9eee610 commit 72d7e53

File tree

4 files changed

+136
-104
lines changed

4 files changed

+136
-104
lines changed

.gitmodules

+6
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,9 @@
1717
path = tests
1818
url = https://github.com/dqrobotics/python-tests.git
1919
branch = master
20+
[submodule "interfaces/cpp-interface-coppeliasim-zmq"]
21+
path = interfaces/cpp-interface-coppeliasim-zmq
22+
url = https://github.com/dqrobotics/cpp-interface-coppeliasim-zmq.git
23+
[submodule "interfaces/cpp-interface-coppeliasim"]
24+
path = interfaces/cpp-interface-coppeliasim
25+
url = https://github.com/dqrobotics/cpp-interface-coppeliasim.git

CMakeLists.txt

+128-104
Original file line numberDiff line numberDiff line change
@@ -6,126 +6,150 @@ endif()
66

77
project(dqroboticspython)
88

9+
set(CMAKE_CXX_STANDARD 17)
10+
set(CMAKE_CXX_STANDARD_REQUIRED ON)
11+
12+
#COPPELIASIM INTERFACE
13+
find_package(cppzmq REQUIRED)
14+
find_package(ZeroMQ REQUIRED)
15+
find_package(Boost REQUIRED)
16+
add_definitions(-DSIM_REMOTEAPICLIENT_OBJECTS)
17+
918
#VREP INTERFACE
1019
add_definitions(-DNON_MATLAB_PARSING)
1120
add_definitions(-DMAX_EXT_API_CONNECTIONS=255)
1221
add_definitions(-DDO_NOT_USE_SHARED_MEMORY)
1322

1423
if(APPLE)
15-
message("Building not supported on this platform.")
16-
include_directories(
24+
message("Building not supported on this platform.")
25+
include_directories(
1726
/usr/local/include/
1827
/usr/local/include/eigen3
1928
/opt/homebrew/include
2029
/opt/homebrew/include/eigen3
21-
)
30+
)
2231
endif()
2332

2433
if(WIN32)
2534
message("Building not supported on this platform.")
2635

27-
ADD_DEFINITIONS(-D_USE_MATH_DEFINES)
28-
FIND_PACKAGE(Eigen3 CONFIG REQUIRED)
29-
INCLUDE_DIRECTORIES(${EIGEN3_INCLUDE_DIR})
36+
ADD_DEFINITIONS(-D_USE_MATH_DEFINES)
37+
FIND_PACKAGE(Eigen3 CONFIG REQUIRED)
38+
INCLUDE_DIRECTORIES(${EIGEN3_INCLUDE_DIR})
3039
endif()
3140

3241

33-
include_directories(
34-
/usr/include/eigen3/
35-
cpp/include/
36-
interfaces/cpp-interface-vrep/include/
37-
interfaces/cpp-interface-vrep/coppeliarobotics/include
38-
interfaces/cpp-interface-vrep/coppeliarobotics/remoteApi
39-
interfaces/cpp-interface-json11/include/
40-
interfaces/cpp-interface-json11/dropbox/json11/
41-
)
42-
add_subdirectory(pybind11)
43-
pybind11_add_module(_dqrobotics
44-
45-
src/dqrobotics_module.cpp
46-
47-
cpp/src/DQ.cpp
48-
src/DQ_py.cpp
49-
50-
#Internal
51-
cpp/src/internal/_dq_linesegment.cpp
52-
53-
#Utils
54-
cpp/src/utils/DQ_LinearAlgebra.cpp
55-
src/utils/DQ_LinearAlgebra_py.cpp
56-
cpp/src/utils/DQ_Geometry.cpp
57-
src/utils/DQ_Geometry_py.cpp
58-
cpp/src/utils/DQ_Math.cpp
59-
src/utils/DQ_Math_py.cpp
60-
61-
#robot_modeling
62-
cpp/src/robot_modeling/DQ_CooperativeDualTaskSpace.cpp
63-
src/robot_modeling/DQ_CooperativeDualTaskSpace_py.cpp
64-
cpp/src/robot_modeling/DQ_Kinematics.cpp
65-
src/robot_modeling/DQ_Kinematics_py.cpp
66-
cpp/src/robot_modeling/DQ_SerialManipulator.cpp
67-
src/robot_modeling/DQ_SerialManipulator_py.cpp
68-
cpp/src/robot_modeling/DQ_SerialManipulatorDH.cpp
69-
src/robot_modeling/DQ_SerialManipulatorDH_py.cpp
70-
cpp/src/robot_modeling/DQ_SerialManipulatorMDH.cpp
71-
src/robot_modeling/DQ_SerialManipulatorMDH_py.cpp
72-
cpp/src/robot_modeling/DQ_SerialManipulatorDenso.cpp
73-
src/robot_modeling/DQ_SerialManipulatorDenso_py.cpp
74-
cpp/src/robot_modeling/DQ_MobileBase.cpp
75-
src/robot_modeling/DQ_MobileBase_py.cpp
76-
cpp/src/robot_modeling/DQ_HolonomicBase.cpp
77-
src/robot_modeling/DQ_HolonomicBase_py.cpp
78-
cpp/src/robot_modeling/DQ_DifferentialDriveRobot.cpp
79-
src/robot_modeling/DQ_DifferentialDriveRobot_py.cpp
80-
cpp/src/robot_modeling/DQ_WholeBody.cpp
81-
src/robot_modeling/DQ_WholeBody_py.cpp
82-
cpp/src/robot_modeling/DQ_SerialWholeBody.cpp
83-
src/robot_modeling/DQ_SerialWholeBody_py.cpp
84-
85-
#robot_control
86-
cpp/src/robot_control/DQ_KinematicController.cpp
87-
src/robot_control/DQ_KinematicController_py.cpp
88-
cpp/src/robot_control/DQ_PseudoinverseController.cpp
89-
src/robot_control/DQ_PseudoinverseController_py.cpp
90-
cpp/src/robot_control/DQ_NumericalFilteredPseudoInverseController.cpp
91-
src/robot_control/DQ_NumericalFilteredPseudoInverseController_py.cpp
92-
cpp/src/robot_control/DQ_KinematicConstrainedController.cpp
93-
src/robot_control/DQ_KinematicConstrainedController_py.cpp
94-
cpp/src/robot_control/DQ_QuadraticProgrammingController.cpp
95-
src/robot_control/DQ_QuadraticProgrammingController_py.cpp
96-
cpp/src/robot_control/DQ_ClassicQPController.cpp
97-
src/robot_control/DQ_ClassicQPController_py.cpp
98-
99-
#solvers
100-
#DQ_QuadraticProgrammingSolver.h
101-
src/solvers/DQ_QuadraticProgrammingSolver_py.cpp
102-
103-
#robots
104-
cpp/src/robots/Ax18ManipulatorRobot.cpp
105-
cpp/src/robots/BarrettWamArmRobot.cpp
106-
cpp/src/robots/ComauSmartSixRobot.cpp
107-
cpp/src/robots/KukaLw4Robot.cpp
108-
cpp/src/robots/KukaYoubotRobot.cpp
109-
cpp/src/robots/FrankaEmikaPandaRobot.cpp
110-
111-
#interfaces/vrep
112-
interfaces/cpp-interface-vrep/src/dqrobotics/interfaces/vrep/DQ_VrepInterface.cpp
113-
interfaces/cpp-interface-vrep/src/dqrobotics/interfaces/vrep/DQ_VrepInterfaceMapElement.cpp
114-
interfaces/cpp-interface-vrep/coppeliarobotics/remoteApi/extApi.c
115-
interfaces/cpp-interface-vrep/coppeliarobotics/remoteApi/extApiPlatform.h
116-
interfaces/cpp-interface-vrep/coppeliarobotics/remoteApi/extApiPlatform.c
117-
src/interfaces/vrep/DQ_VrepInterface_py.cpp
118-
interfaces/cpp-interface-vrep/src/dqrobotics/interfaces/vrep/DQ_VrepRobot.cpp
119-
interfaces/cpp-interface-vrep/src/dqrobotics/interfaces/vrep/DQ_SerialVrepRobot.cpp
120-
interfaces/cpp-interface-vrep/src/dqrobotics/interfaces/vrep/robots/LBR4pVrepRobot.cpp
121-
interfaces/cpp-interface-vrep/src/dqrobotics/interfaces/vrep/robots/YouBotVrepRobot.cpp
122-
interfaces/cpp-interface-vrep/src/dqrobotics/interfaces/vrep/robots/FrankaEmikaPandaVrepRobot.cpp
123-
src/interfaces/vrep/DQ_VrepRobot_py.cpp
124-
src/interfaces/vrep/DQ_SerialVrepRobot_py.cpp
125-
126-
#interfaces/json11
127-
interfaces/cpp-interface-json11/src/dqrobotics/interfaces/json11/DQ_JsonReader.cpp
128-
src/interfaces/json11/DQ_JsonReader_py.cpp
129-
interfaces/cpp-interface-json11/dropbox/json11/json11.cpp
130-
)
42+
include_directories(
43+
/usr/include/eigen3/
44+
45+
cpp/include/
46+
47+
interfaces/cpp-interface-vrep/include/
48+
interfaces/cpp-interface-vrep/coppeliarobotics/include/
49+
interfaces/cpp-interface-vrep/coppeliarobotics/remoteApi/
50+
51+
interfaces/cpp-interface-json11/include/
52+
interfaces/cpp-interface-json11/dropbox/json11/
53+
54+
interfaces/cpp-interface-coppeliasim/include/
55+
56+
interfaces/cpp-interface-coppeliasim-zmq/include/
57+
interfaces/cpp-interface-coppeliasim-zmq/submodules/zmqRemoteApi/clients/cpp/
58+
interfaces/cpp-interface-coppeliasim-zmq/submodules/jsoncons/include/
59+
)
60+
add_subdirectory(pybind11)
61+
pybind11_add_module(_dqrobotics
62+
63+
src/dqrobotics_module.cpp
64+
65+
cpp/src/DQ.cpp
66+
src/DQ_py.cpp
67+
68+
#Internal
69+
cpp/src/internal/_dq_linesegment.cpp
70+
71+
#Utils
72+
cpp/src/utils/DQ_LinearAlgebra.cpp
73+
src/utils/DQ_LinearAlgebra_py.cpp
74+
cpp/src/utils/DQ_Geometry.cpp
75+
src/utils/DQ_Geometry_py.cpp
76+
cpp/src/utils/DQ_Math.cpp
77+
src/utils/DQ_Math_py.cpp
78+
79+
#robot_modeling
80+
cpp/src/robot_modeling/DQ_CooperativeDualTaskSpace.cpp
81+
src/robot_modeling/DQ_CooperativeDualTaskSpace_py.cpp
82+
cpp/src/robot_modeling/DQ_Kinematics.cpp
83+
src/robot_modeling/DQ_Kinematics_py.cpp
84+
cpp/src/robot_modeling/DQ_SerialManipulator.cpp
85+
src/robot_modeling/DQ_SerialManipulator_py.cpp
86+
cpp/src/robot_modeling/DQ_SerialManipulatorDH.cpp
87+
src/robot_modeling/DQ_SerialManipulatorDH_py.cpp
88+
cpp/src/robot_modeling/DQ_SerialManipulatorMDH.cpp
89+
src/robot_modeling/DQ_SerialManipulatorMDH_py.cpp
90+
cpp/src/robot_modeling/DQ_SerialManipulatorDenso.cpp
91+
src/robot_modeling/DQ_SerialManipulatorDenso_py.cpp
92+
cpp/src/robot_modeling/DQ_MobileBase.cpp
93+
src/robot_modeling/DQ_MobileBase_py.cpp
94+
cpp/src/robot_modeling/DQ_HolonomicBase.cpp
95+
src/robot_modeling/DQ_HolonomicBase_py.cpp
96+
cpp/src/robot_modeling/DQ_DifferentialDriveRobot.cpp
97+
src/robot_modeling/DQ_DifferentialDriveRobot_py.cpp
98+
cpp/src/robot_modeling/DQ_WholeBody.cpp
99+
src/robot_modeling/DQ_WholeBody_py.cpp
100+
cpp/src/robot_modeling/DQ_SerialWholeBody.cpp
101+
src/robot_modeling/DQ_SerialWholeBody_py.cpp
102+
103+
#robot_control
104+
cpp/src/robot_control/DQ_KinematicController.cpp
105+
src/robot_control/DQ_KinematicController_py.cpp
106+
cpp/src/robot_control/DQ_PseudoinverseController.cpp
107+
src/robot_control/DQ_PseudoinverseController_py.cpp
108+
cpp/src/robot_control/DQ_NumericalFilteredPseudoInverseController.cpp
109+
src/robot_control/DQ_NumericalFilteredPseudoInverseController_py.cpp
110+
cpp/src/robot_control/DQ_KinematicConstrainedController.cpp
111+
src/robot_control/DQ_KinematicConstrainedController_py.cpp
112+
cpp/src/robot_control/DQ_QuadraticProgrammingController.cpp
113+
src/robot_control/DQ_QuadraticProgrammingController_py.cpp
114+
cpp/src/robot_control/DQ_ClassicQPController.cpp
115+
src/robot_control/DQ_ClassicQPController_py.cpp
116+
117+
#solvers
118+
#DQ_QuadraticProgrammingSolver.h
119+
src/solvers/DQ_QuadraticProgrammingSolver_py.cpp
120+
121+
#robots
122+
cpp/src/robots/Ax18ManipulatorRobot.cpp
123+
cpp/src/robots/BarrettWamArmRobot.cpp
124+
cpp/src/robots/ComauSmartSixRobot.cpp
125+
cpp/src/robots/KukaLw4Robot.cpp
126+
cpp/src/robots/KukaYoubotRobot.cpp
127+
cpp/src/robots/FrankaEmikaPandaRobot.cpp
128+
129+
#interfaces/vrep
130+
interfaces/cpp-interface-vrep/src/dqrobotics/interfaces/vrep/DQ_VrepInterface.cpp
131+
interfaces/cpp-interface-vrep/src/dqrobotics/interfaces/vrep/DQ_VrepInterfaceMapElement.cpp
132+
interfaces/cpp-interface-vrep/coppeliarobotics/remoteApi/extApi.c
133+
interfaces/cpp-interface-vrep/coppeliarobotics/remoteApi/extApiPlatform.h
134+
interfaces/cpp-interface-vrep/coppeliarobotics/remoteApi/extApiPlatform.c
135+
src/interfaces/vrep/DQ_VrepInterface_py.cpp
136+
interfaces/cpp-interface-vrep/src/dqrobotics/interfaces/vrep/DQ_VrepRobot.cpp
137+
interfaces/cpp-interface-vrep/src/dqrobotics/interfaces/vrep/DQ_SerialVrepRobot.cpp
138+
interfaces/cpp-interface-vrep/src/dqrobotics/interfaces/vrep/robots/LBR4pVrepRobot.cpp
139+
interfaces/cpp-interface-vrep/src/dqrobotics/interfaces/vrep/robots/YouBotVrepRobot.cpp
140+
interfaces/cpp-interface-vrep/src/dqrobotics/interfaces/vrep/robots/FrankaEmikaPandaVrepRobot.cpp
141+
src/interfaces/vrep/DQ_VrepRobot_py.cpp
142+
src/interfaces/vrep/DQ_SerialVrepRobot_py.cpp
143+
144+
#interfaces/json11
145+
interfaces/cpp-interface-json11/src/dqrobotics/interfaces/json11/DQ_JsonReader.cpp
146+
src/interfaces/json11/DQ_JsonReader_py.cpp
147+
interfaces/cpp-interface-json11/dropbox/json11/json11.cpp
148+
149+
#interfaces/copppeliasim-zmq
150+
interfaces/cpp-interface-coppeliasim-zmq/submodules/zmqRemoteApi/clients/cpp/RemoteAPIClient.cpp
151+
interfaces/cpp-interface-coppeliasim-zmq/src/dqrobotics/interfaces/coppeliasim/internal/_zmq_wrapper.cpp
152+
interfaces/cpp-interface-coppeliasim-zmq/src/dqrobotics/interfaces/coppeliasim/DQ_CoppeliaSimInterfaceZMQ.cpp
153+
interfaces/cpp-interface-coppeliasim-zmq/src/dqrobotics/interfaces/coppeliasim/DQ_CoppeliaSimInterfaceZMQExperimental.cpp
154+
)
131155

0 commit comments

Comments
 (0)