jni_interface.cpp
Go to the documentation of this file.
1 /*
2 Copyright (c) 2010-2016, Mathieu Labbe - IntRoLab - Universite de Sherbrooke
3 All rights reserved.
4 
5 Redistribution and use in source and binary forms, with or without
6 modification, are permitted provided that the following conditions are met:
7  * Redistributions of source code must retain the above copyright
8  notice, this list of conditions and the following disclaimer.
9  * Redistributions in binary form must reproduce the above copyright
10  notice, this list of conditions and the following disclaimer in the
11  documentation and/or other materials provided with the distribution.
12  * Neither the name of the Universite de Sherbrooke nor the
13  names of its contributors may be used to endorse or promote products
14  derived from this software without specific prior written permission.
15 
16 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY
20 DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27 
28 #define GLM_FORCE_RADIANS
29 
30 #include <jni.h>
31 #include <RTABMapApp.h>
32 #include <scene.h>
33 
34 static RTABMapApp app;
35 
36 #ifdef __cplusplus
37 extern "C" {
38 #endif
39 
40 void GetJStringContent(JNIEnv *AEnv, jstring AStr, std::string &ARes) {
41  if (!AStr) {
42  ARes.clear();
43  return;
44  }
45 
46  const char *s = AEnv->GetStringUTFChars(AStr,NULL);
47  ARes=s;
48  AEnv->ReleaseStringUTFChars(AStr,s);
49 }
50 
51 JNIEXPORT void JNICALL
53  JNIEnv* env, jobject, jobject activity)
54 {
55  return app.onCreate(env, activity);
56 }
57 
58 JNIEXPORT void JNICALL
60  JNIEnv* env, jobject, int displayRotation, int cameraRotation)
61 {
62  return app.setScreenRotation(displayRotation, cameraRotation);
63 }
64 
65 JNIEXPORT int JNICALL
67  JNIEnv* env, jobject, jstring databasePath, bool databaseInMemory, bool optimize)
68 {
69  std::string databasePathC;
70  GetJStringContent(env,databasePath,databasePathC);
71  return app.openDatabase(databasePathC, databaseInMemory, optimize);
72 }
73 
74 JNIEXPORT int JNICALL
76  JNIEnv* env, jobject, jstring databaseSource, jstring databasePath, bool databaseInMemory, bool optimize)
77 {
78  std::string databasePathC;
79  GetJStringContent(env,databasePath,databasePathC);
80  std::string databaseSourceC;
81  GetJStringContent(env,databaseSource,databaseSourceC);
82  return app.openDatabase(databasePathC, databaseInMemory, optimize, databaseSourceC);
83 }
84 
85 JNIEXPORT bool JNICALL
87  JNIEnv* env, jobject, jobject iBinder) {
88  return app.onTangoServiceConnected(env, iBinder);
89 }
90 
91 JNIEXPORT void JNICALL
93  JNIEnv*, jobject) {
94  app.InitializeGLContent();
95 }
96 
97 JNIEXPORT void JNICALL
99  JNIEnv*, jobject, jint width, jint height) {
100  app.SetViewPort(width, height);
101 }
102 
103 JNIEXPORT int JNICALL
105  JNIEnv*, jobject) {
106  return app.Render();
107 }
108 
109 JNIEXPORT void JNICALL
111  JNIEnv*, jobject) {
112  app.onPause();
113 }
114 
115 JNIEXPORT void JNICALL
117  JNIEnv*, jobject, int camera_index) {
118  using namespace tango_gl;
119  GestureCamera::CameraType cam_type =
120  static_cast<GestureCamera::CameraType>(camera_index);
121  app.SetCameraType(cam_type);
122 }
123 
124 JNIEXPORT void JNICALL
126  JNIEnv*, jobject, int touch_count, int event, float x0, float y0, float x1,
127  float y1) {
128  using namespace tango_gl;
129  GestureCamera::TouchEvent touch_event =
130  static_cast<GestureCamera::TouchEvent>(event);
131  app.OnTouchEvent(touch_count, touch_event, x0, y0, x1, y1);
132 }
133 
134 JNIEXPORT void JNICALL
136  JNIEnv*, jobject, bool paused)
137 {
138  return app.setPausedMapping(paused);
139 }
140 JNIEXPORT void JNICALL
142  JNIEnv*, jobject, bool enabled)
143 {
144  return app.setOnlineBlending(enabled);
145 }
146 JNIEXPORT void JNICALL
148  JNIEnv*, jobject, bool shown)
149 {
150  return app.setMapCloudShown(shown);
151 }
152 JNIEXPORT void JNICALL
154  JNIEnv*, jobject, bool shown)
155 {
156  return app.setOdomCloudShown(shown);
157 }
158 JNIEXPORT void JNICALL
160  JNIEnv*, jobject, bool enabled, bool withTexture)
161 {
162  return app.setMeshRendering(enabled, withTexture);
163 }
164 JNIEXPORT void JNICALL
166  JNIEnv*, jobject, float value)
167 {
168  return app.setPointSize(value);
169 }
170 JNIEXPORT void JNICALL
172  JNIEnv*, jobject, float fov)
173 {
174  return app.setFOV(fov);
175 }
176 JNIEXPORT void JNICALL
178  JNIEnv*, jobject, float value)
179 {
180  return app.setOrthoCropFactor(value);
181 }
182 JNIEXPORT void JNICALL
184  JNIEnv*, jobject, float value)
185 {
186  return app.setGridRotation(value);
187 }
188 JNIEXPORT void JNICALL
190  JNIEnv*, jobject, bool enabled)
191 {
192  return app.setLighting(enabled);
193 }
194 JNIEXPORT void JNICALL
196  JNIEnv*, jobject, bool enabled)
197 {
198  return app.setBackfaceCulling(enabled);
199 }
200 JNIEXPORT void JNICALL
202  JNIEnv*, jobject, bool enabled)
203 {
204  return app.setWireframe(enabled);
205 }
206 JNIEXPORT void JNICALL
208  JNIEnv*, jobject, bool enabled)
209 {
210  return app.setLocalizationMode(enabled);
211 }
212 JNIEXPORT void JNICALL
214  JNIEnv*, jobject, bool enabled)
215 {
216  return app.setTrajectoryMode(enabled);
217 }
218 JNIEXPORT void JNICALL
220  JNIEnv*, jobject, bool enabled)
221 {
222  return app.setGraphOptimization(enabled);
223 }
224 JNIEXPORT void JNICALL
226  JNIEnv*, jobject, bool enabled)
227 {
228  return app.setNodesFiltering(enabled);
229 }
230 JNIEXPORT void JNICALL
232  JNIEnv*, jobject, bool visible)
233 {
234  return app.setGraphVisible(visible);
235 }
236 JNIEXPORT void JNICALL
238  JNIEnv*, jobject, bool visible)
239 {
240  return app.setGridVisible(visible);
241 }
242 JNIEXPORT void JNICALL
244  JNIEnv*, jobject, bool enabled)
245 {
246  return app.setRawScanSaved(enabled);
247 }
248 JNIEXPORT void JNICALL
250  JNIEnv*, jobject, bool enabled)
251 {
252  return app.setFullResolution(enabled);
253 }
254 JNIEXPORT void JNICALL
256  JNIEnv*, jobject, bool enabled)
257 {
258  return app.setSmoothing(enabled);
259 }
260 JNIEXPORT void JNICALL
262  JNIEnv*, jobject, bool enabled)
263 {
264  return app.setCameraColor(enabled);
265 }
266 JNIEXPORT void JNICALL
268  JNIEnv*, jobject, bool enabled)
269 {
270  return app.setAppendMode(enabled);
271 }
272 JNIEXPORT void JNICALL
274  JNIEnv*, jobject, bool enabled)
275 {
276  return app.setDataRecorderMode(enabled);
277 }
278 JNIEXPORT void JNICALL
280  JNIEnv*, jobject, float value)
281 {
282  return app.setMaxCloudDepth(value);
283 }
284 JNIEXPORT void JNICALL
286  JNIEnv*, jobject, float value)
287 {
288  return app.setMinCloudDepth(value);
289 }
290 JNIEXPORT void JNICALL
292  JNIEnv*, jobject, int value)
293 {
294  return app.setCloudDensityLevel(value);
295 }
296 JNIEXPORT void JNICALL
298  JNIEnv*, jobject, float value)
299 {
300  return app.setMeshAngleTolerance(value);
301 }
302 JNIEXPORT void JNICALL
304  JNIEnv*, jobject, int value)
305 {
306  return app.setMeshTriangleSize(value);
307 }
308 JNIEXPORT void JNICALL
310  JNIEnv*, jobject, float value)
311 {
312  return app.setClusterRatio(value);
313 }
314 JNIEXPORT void JNICALL
316  JNIEnv*, jobject, float value)
317 {
318  return app.setMaxGainRadius(value);
319 }
320 JNIEXPORT void JNICALL
322  JNIEnv*, jobject, int value)
323 {
324  return app.setRenderingTextureDecimation(value);
325 }
326 JNIEXPORT void JNICALL
328  JNIEnv*, jobject, float value)
329 {
330  return app.setBackgroundColor(value);
331 }
332 JNIEXPORT jint JNICALL
334  JNIEnv* env, jobject, jstring key, jstring value)
335 {
336  std::string keyC, valueC;
337  GetJStringContent(env,key,keyC);
338  GetJStringContent(env,value,valueC);
339  return app.setMappingParameter(keyC, valueC);
340 }
341 
342 JNIEXPORT void JNICALL
344  JNIEnv*, jobject,
345  double stamp,
346  double longitude,
347  double latitude,
348  double altitude,
349  double accuracy,
350  double bearing)
351 {
352  return app.setGPS(rtabmap::GPS(stamp,
353  longitude,
354  latitude,
355  altitude,
356  accuracy,
357  bearing));
358 }
359 
360 JNIEXPORT void JNICALL
362  JNIEnv*, jobject)
363 {
364  return app.resetMapping();
365 }
366 
367 JNIEXPORT void JNICALL
369  JNIEnv* env, jobject, jstring databasePath)
370 {
371  std::string databasePathC;
372  GetJStringContent(env,databasePath,databasePathC);
373  return app.save(databasePathC);
374 }
375 
376 JNIEXPORT void JNICALL
378  JNIEnv* env, jobject)
379 {
380  return app.cancelProcessing();
381 }
382 
383 JNIEXPORT bool JNICALL
385  JNIEnv* env, jobject,
386  float cloudVoxelSize,
387  bool regenerateCloud,
388  bool meshing,
389  int textureSize,
390  int textureCount,
391  int normalK,
392  bool optimized,
393  float optimizedVoxelSize,
394  int optimizedDepth,
395  int optimizedMaxPolygons,
396  float optimizedColorRadius,
397  bool optimizedCleanWhitePolygons,
398  int optimizedMinClusterSize,
399  float optimizedMaxTextureDistance,
400  int optimizedMinTextureClusterSize,
401  bool blockRendering)
402 {
403  return app.exportMesh(
404  cloudVoxelSize,
405  regenerateCloud,
406  meshing,
407  textureSize,
408  textureCount,
409  normalK,
410  optimized,
411  optimizedVoxelSize,
412  optimizedDepth,
413  optimizedMaxPolygons,
414  optimizedColorRadius,
415  optimizedCleanWhitePolygons,
416  optimizedMinClusterSize,
417  optimizedMaxTextureDistance,
418  optimizedMinTextureClusterSize,
419  blockRendering);
420 }
421 
422 JNIEXPORT bool JNICALL
424  JNIEnv* env, jobject, bool visualize)
425 {
426  return app.postExportation(visualize);
427 }
428 
429 JNIEXPORT bool JNICALL
431  JNIEnv* env, jobject, jstring directory, jstring name)
432 {
433  std::string directoryC;
434  GetJStringContent(env,directory,directoryC);
435  std::string nameC;
436  GetJStringContent(env,name,nameC);
437  return app.writeExportedMesh(directoryC, nameC);
438 }
439 
440 
441 JNIEXPORT int JNICALL
443  JNIEnv* env, jobject, int approach)
444 {
445  return app.postProcessing(approach);
446 }
447 
448 
449 
450 #ifdef __cplusplus
451 }
452 #endif
void save(const std::string &databasePath)
#define NULL
void OnTouchEvent(int touch_count, tango_gl::GestureCamera::TouchEvent event, float x0, float y0, float x1, float y1)
void onCreate(JNIEnv *env, jobject caller_activity)
Definition: RTABMapApp.cpp:241
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setRenderingTextureDecimation(JNIEnv *, jobject, int value)
void setCameraColor(bool enabled)
void setMaxGainRadius(float value)
int openDatabase(const std::string &databasePath, bool databaseInMemory, bool optimize, const std::string &databaseSource=std::string())
Definition: RTABMapApp.cpp:294
void setWireframe(bool enabled)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setClusterRatio(JNIEnv *, jobject, float value)
JNIEXPORT int JNICALL Java_com_introlab_rtabmap_RTABMapLib_openDatabase(JNIEnv *env, jobject, jstring databasePath, bool databaseInMemory, bool optimize)
void setAppendMode(bool enabled)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setMeshTriangleSize(JNIEnv *, jobject, int value)
JNIEXPORT bool JNICALL Java_com_introlab_rtabmap_RTABMapLib_postExportation(JNIEnv *env, jobject, bool visualize)
int setMappingParameter(const std::string &key, const std::string &value)
void SetViewPort(int width, int height)
Definition: RTABMapApp.cpp:852
void setSmoothing(bool enabled)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setScreenRotation(JNIEnv *env, jobject, int displayRotation, int cameraRotation)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_onPause(JNIEnv *, jobject)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_save(JNIEnv *env, jobject, jstring databasePath)
void setGraphOptimization(bool enabled)
bool onTangoServiceConnected(JNIEnv *env, jobject iBinder)
Definition: RTABMapApp.cpp:623
void setGraphVisible(bool visible)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setFOV(JNIEnv *, jobject, float fov)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setOdomCloudShown(JNIEnv *, jobject, bool shown)
JNIEXPORT jint JNICALL Java_com_introlab_rtabmap_RTABMapLib_setMappingParameter(JNIEnv *env, jobject, jstring key, jstring value)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setCameraColor(JNIEnv *, jobject, bool enabled)
JNIEXPORT int JNICALL Java_com_introlab_rtabmap_RTABMapLib_openDatabase2(JNIEnv *env, jobject, jstring databaseSource, jstring databasePath, bool databaseInMemory, bool optimize)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setSmoothing(JNIEnv *, jobject, bool enabled)
void setCloudDensityLevel(int value)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setLocalizationMode(JNIEnv *, jobject, bool enabled)
void InitializeGLContent()
Definition: RTABMapApp.cpp:842
int postProcessing(int approach)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setBackgroundColor(JNIEnv *, jobject, float value)
void setRenderingTextureDecimation(int value)
void setClusterRatio(float value)
void setOrthoCropFactor(float value)
void setGPS(const rtabmap::GPS &gps)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_initGlContent(JNIEnv *, jobject)
JNIEXPORT bool JNICALL Java_com_introlab_rtabmap_RTABMapLib_exportMesh(JNIEnv *env, jobject, float cloudVoxelSize, bool regenerateCloud, bool meshing, int textureSize, int textureCount, int normalK, bool optimized, float optimizedVoxelSize, int optimizedDepth, int optimizedMaxPolygons, float optimizedColorRadius, bool optimizedCleanWhitePolygons, int optimizedMinClusterSize, float optimizedMaxTextureDistance, int optimizedMinTextureClusterSize, bool blockRendering)
void setPointSize(float value)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setMeshRendering(JNIEnv *, jobject, bool enabled, bool withTexture)
JNIEXPORT bool JNICALL Java_com_introlab_rtabmap_RTABMapLib_onTangoServiceConnected(JNIEnv *env, jobject, jobject iBinder)
JNIEXPORT int JNICALL Java_com_introlab_rtabmap_RTABMapLib_render(JNIEnv *, jobject)
void setTrajectoryMode(bool enabled)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setLighting(JNIEnv *, jobject, bool enabled)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setGraphOptimization(JNIEnv *, jobject, bool enabled)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setGPS(JNIEnv *, jobject, double stamp, double longitude, double latitude, double altitude, double accuracy, double bearing)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setMapCloudShown(JNIEnv *, jobject, bool shown)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_cancelProcessing(JNIEnv *env, jobject)
void setFOV(float angle)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setMaxGainRadius(JNIEnv *, jobject, float value)
void setMaxCloudDepth(float value)
void setGridRotation(float value)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setAppendMode(JNIEnv *, jobject, bool enabled)
void setBackfaceCulling(bool enabled)
void setRawScanSaved(bool enabled)
void SetCameraType(tango_gl::GestureCamera::CameraType camera_type)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setupGraphic(JNIEnv *, jobject, jint width, jint height)
static RTABMapApp app
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setWireframe(JNIEnv *, jobject, bool enabled)
bool postExportation(bool visualize)
void setBackgroundColor(float gray)
void setMeshRendering(bool enabled, bool withTexture)
void cancelProcessing()
void setNodesFiltering(bool enabled)
void setMapCloudShown(bool shown)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setTrajectoryMode(JNIEnv *, jobject, bool enabled)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setRawScanSaved(JNIEnv *, jobject, bool enabled)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setMaxCloudDepth(JNIEnv *, jobject, float value)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setMeshAngleTolerance(JNIEnv *, jobject, float value)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setOrthoCropFactor(JNIEnv *, jobject, float value)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setCloudDensityLevel(JNIEnv *, jobject, int value)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setMinCloudDepth(JNIEnv *, jobject, float value)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setGridVisible(JNIEnv *, jobject, bool visible)
void setMinCloudDepth(float value)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setNodesFiltering(JNIEnv *, jobject, bool enabled)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setCamera(JNIEnv *, jobject, int camera_index)
void setOnlineBlending(bool enabled)
void setDataRecorderMode(bool enabled)
bool writeExportedMesh(const std::string &directory, const std::string &name)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_onTouchEvent(JNIEnv *, jobject, int touch_count, int event, float x0, float y0, float x1, float y1)
void resetMapping()
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_onCreate(JNIEnv *env, jobject, jobject activity)
void onPause()
Definition: RTABMapApp.cpp:717
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setPointSize(JNIEnv *, jobject, float value)
void setMeshTriangleSize(int value)
void setGridVisible(bool visible)
bool exportMesh(float cloudVoxelSize, bool regenerateCloud, bool meshing, int textureSize, int textureCount, int normalK, bool optimized, float optimizedVoxelSize, int optimizedDepth, int optimizedMaxPolygons, float optimizedColorRadius, bool optimizedCleanWhitePolygons, int optimizedMinClusterSize, float optimizedMaxTextureDistance, int optimizedMinTextureClusterSize, bool blockRendering)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setDataRecorderMode(JNIEnv *, jobject, bool enabled)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_resetMapping(JNIEnv *, jobject)
JNIEXPORT int JNICALL Java_com_introlab_rtabmap_RTABMapLib_postProcessing(JNIEnv *env, jobject, int approach)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setFullResolution(JNIEnv *, jobject, bool enabled)
void setFullResolution(bool enabled)
void setMeshAngleTolerance(float value)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setGridRotation(JNIEnv *, jobject, float value)
void setScreenRotation(int displayRotation, int cameraRotation)
Definition: RTABMapApp.cpp:286
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setOnlineBlending(JNIEnv *, jobject, bool enabled)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setBackfaceCulling(JNIEnv *, jobject, bool enabled)
void setLighting(bool enabled)
void setPausedMapping(bool paused)
JNIEXPORT bool JNICALL Java_com_introlab_rtabmap_RTABMapLib_writeExportedMesh(JNIEnv *env, jobject, jstring directory, jstring name)
void setOdomCloudShown(bool shown)
void GetJStringContent(JNIEnv *AEnv, jstring AStr, std::string &ARes)
void setLocalizationMode(bool enabled)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setGraphVisible(JNIEnv *, jobject, bool visible)
JNIEXPORT void JNICALL Java_com_introlab_rtabmap_RTABMapLib_setPausedMapping(JNIEnv *, jobject, bool paused)


rtabmap
Author(s): Mathieu Labbe
autogenerated on Wed Jun 5 2019 22:41:31