AboutDialog.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 
32 #include "rtabmap/core/Optimizer.h"
33 #include "ui_aboutDialog.h"
34 #include <opencv2/core/version.hpp>
35 #include <pcl/pcl_config.h>
36 #include <vtkVersion.h>
37 
38 namespace rtabmap {
39 
40 AboutDialog::AboutDialog(QWidget * parent) :
41  QDialog(parent)
42 {
43  _ui = new Ui_aboutDialog();
44  _ui->setupUi(this);
45  QString version = Parameters::getVersion().c_str();
46  QString cv_version = CV_VERSION;
47 #if CV_MAJOR_VERSION < 3
48  #ifdef RTABMAP_NONFREE
49  _ui->label_opencv_license->setText("Not Commercial [With nonfree module]");
50  #else
51  _ui->label_opencv_license->setText("BSD [Without nonfree module]");
52  #endif
53 #elif defined(HAVE_OPENCV_XFEATURES2D)
54  #ifdef RTABMAP_NONFREE
55  _ui->label_opencv_license->setText("Not Commercial [With xfeatures2d and nonfree modules]");
56  #else
57  #if CV_MAJOR_VERSION < 4 || (CV_MAJOR_VERSION==4 && CV_MINOR_VERSION<5)
58  _ui->label_opencv_license->setText("BSD [With xfeatures2d module]");
59  #else
60  _ui->label_opencv_license->setText("Apache 3 [With xfeatures2d module]");
61  #endif
62  #endif
63 #else
64  #if CV_MAJOR_VERSION < 4 || (CV_MAJOR_VERSION==4 && CV_MINOR_VERSION<5)
65  _ui->label_opencv_license->setText("BSD [Without xfeatures2d and nonfree modules]");
66  #else
67  _ui->label_opencv_license->setText("Apache 3 [Without xfeatures2d and nonfree modules]");
68  #endif
69 #endif
70  _ui->label_version->setText(version);
71  _ui->label_opencv_version->setText(cv_version);
72  _ui->label_pcl_version->setText(PCL_VERSION_PRETTY);
73  _ui->label_vtk_version->setText(vtkVersion::GetVTKVersion());
74  _ui->label_qt_version->setText(qVersion());
75 #ifdef RTABMAP_ORB_OCTREE
76  _ui->label_orboctree->setText("Yes");
77  _ui->label_orboctree_license->setEnabled(true);
78 #else
79  _ui->label_orboctree->setText("No");
80  _ui->label_orboctree_license->setEnabled(false);
81 #endif
82 #ifdef RTABMAP_TORCH
83  _ui->label_sptorch->setText("Yes");
84  _ui->label_sptorch_license->setEnabled(true);
85 #else
86  _ui->label_sptorch->setText("No");
87  _ui->label_sptorch_license->setEnabled(false);
88 #endif
89 #ifdef RTABMAP_PYTHON
90  _ui->label_pymatcher->setText("Yes");
91  _ui->label_pymatcher_license->setEnabled(true);
92 #else
93  _ui->label_pymatcher->setText("No");
94  _ui->label_pymatcher_license->setEnabled(false);
95 #endif
96 #ifdef RTABMAP_FASTCV
97  _ui->label_fastcv->setText("Yes");
98  _ui->label_fastcv_license->setEnabled(true);
99 #else
100  _ui->label_fastcv->setText("No");
101  _ui->label_fastcv_license->setEnabled(false);
102 #endif
103 #ifdef RTABMAP_PDAL
104  _ui->label_pdal->setText("Yes");
105  _ui->label_pdal_license->setEnabled(true);
106 #else
107  _ui->label_pdal->setText("No");
108  _ui->label_pdal_license->setEnabled(false);
109 #endif
110 #ifdef RTABMAP_LIBLAS
111  _ui->label_liblas->setText("Yes");
112  _ui->label_liblas_license->setEnabled(true);
113 #else
114  _ui->label_liblas->setText("No");
115  _ui->label_liblas_license->setEnabled(false);
116 #endif
117 #ifdef RTABMAP_CUDASIFT
118  _ui->label_cudasift->setText("Yes");
119  _ui->label_cudasift_license->setEnabled(true);
120 #else
121  _ui->label_cudasift->setText("No");
122  _ui->label_cudasift_license->setEnabled(false);
123 #endif
124 #ifdef RTABMAP_OCTOMAP
125  _ui->label_octomap->setText("Yes");
126  _ui->label_octomap_license->setEnabled(true);
127 #else
128  _ui->label_octomap->setText("No");
129  _ui->label_octomap_license->setEnabled(false);
130 #endif
131 #ifdef RTABMAP_GRIDMAP
132  _ui->label_gridmap->setText("Yes");
133  _ui->label_gridmap_license->setEnabled(true);
134 #else
135  _ui->label_gridmap->setText("No");
136  _ui->label_gridmap_license->setEnabled(false);
137 #endif
138 #ifdef RTABMAP_CPUTSDF
139  _ui->label_cputsdf->setText("Yes");
140  _ui->label_cputsdf_license->setEnabled(true);
141 #else
142  _ui->label_cputsdf->setText("No");
143  _ui->label_cputsdf_license->setEnabled(false);
144 #endif
145 #ifdef RTABMAP_OPENCHISEL
146  _ui->label_openchisel->setText("Yes");
147 #else
148  _ui->label_openchisel->setText("No");
149 #endif
150 #ifdef RTABMAP_ALICE_VISION
151  _ui->label_aliceVision->setText("Yes");
152  _ui->label_aliceVision_license->setEnabled(true);
153 #else
154  _ui->label_aliceVision->setText("No");
155  _ui->label_aliceVision_license->setEnabled(false);
156 #endif
157 
158  _ui->label_freenect->setText(CameraFreenect::available()?"Yes":"No");
159  _ui->label_freenect_license->setEnabled(CameraFreenect::available());
160  _ui->label_openni->setText(CameraOpenni::available()?"Yes":"No");
161  _ui->label_openni_license->setEnabled(CameraOpenni::available());
162  _ui->label_openni2->setText(CameraOpenNI2::available()?"Yes":"No");
163  _ui->label_openni2_license->setEnabled(CameraOpenNI2::available());
164  _ui->label_freenect2->setText(CameraFreenect2::available()?"Yes":"No");
165  _ui->label_freenect2_license->setEnabled(CameraFreenect2::available());
166  _ui->label_realsense->setText(CameraRealSense::available() ? "Yes" : "No");
167  _ui->label_realsense_license->setEnabled(CameraRealSense::available());
168  _ui->label_realsense2->setText(CameraRealSense2::available() ? "Yes" : "No");
169  _ui->label_realsense2_license->setEnabled(CameraRealSense2::available());
170  _ui->label_dc1394->setText(CameraStereoDC1394::available()?"Yes":"No");
171  _ui->label_dc1394_license->setEnabled(CameraStereoDC1394::available());
172  _ui->label_flycapture2->setText(CameraStereoFlyCapture2::available()?"Yes":"No");
173  _ui->label_zed->setText(CameraStereoZed::available()?"Yes":"No");
174  _ui->label_zedOC->setText(CameraStereoZedOC::available()?"Yes":"No");
175  _ui->label_zedOC_license->setEnabled(CameraStereoZedOC::available());
176  _ui->label_k4w2->setText(CameraK4W2::available() ? "Yes" : "No");
177  _ui->label_k4a->setText(CameraK4A::available() ? "Yes" : "No");
178  _ui->label_mynteye->setText(CameraMyntEye::available() ? "Yes" : "No");
179  _ui->label_depthai->setText(CameraDepthAI::available() ? "Yes" : "No");
180  _ui->label_depthai_license->setEnabled(CameraDepthAI::available());
181  _ui->label_xvsdk->setText(CameraSeerSense::available() ? "Yes" : "No");
182 
183  _ui->label_toro->setText(Optimizer::isAvailable(Optimizer::kTypeTORO)?"Yes":"No");
184  _ui->label_toro_license->setEnabled(Optimizer::isAvailable(Optimizer::kTypeTORO)?true:false);
185  _ui->label_g2o->setText(Optimizer::isAvailable(Optimizer::kTypeG2O)?"Yes":"No");
186  _ui->label_g2o_license->setEnabled(Optimizer::isAvailable(Optimizer::kTypeG2O)?true:false);
187  _ui->label_gtsam->setText(Optimizer::isAvailable(Optimizer::kTypeGTSAM)?"Yes":"No");
188  _ui->label_gtsam_license->setEnabled(Optimizer::isAvailable(Optimizer::kTypeGTSAM)?true:false);
189  _ui->label_cvsba->setText(Optimizer::isAvailable(Optimizer::kTypeCVSBA)?"Yes":"No");
190  _ui->label_cvsba_license->setEnabled(Optimizer::isAvailable(Optimizer::kTypeCVSBA)?true:false);
191  _ui->label_ceres->setText(Optimizer::isAvailable(Optimizer::kTypeCeres)?"Yes":"No");
192  _ui->label_ceres_license->setEnabled(Optimizer::isAvailable(Optimizer::kTypeCeres)?true:false);
193 
194 #ifdef RTABMAP_MRPT
195  _ui->label_mrpt->setText("Yes");
196  _ui->label_mrpt_license->setEnabled(true);
197 #else
198  _ui->label_mrpt->setText("No");
199  _ui->label_mrpt_license->setEnabled(false);
200 #endif
201 
202 #ifdef RTABMAP_POINTMATCHER
203  _ui->label_libpointmatcher->setText("Yes");
204  _ui->label_libpointmatcher_license->setEnabled(true);
205 #else
206  _ui->label_libpointmatcher->setText("No");
207  _ui->label_libpointmatcher_license->setEnabled(false);
208 #endif
209 
210 #ifdef RTABMAP_CCCORELIB
211  _ui->label_cccorelib->setText("Yes");
212  _ui->label_cccorelib_license->setEnabled(true);
213 #else
214  _ui->label_cccorelib->setText("No");
215  _ui->label_cccorelib_license->setEnabled(false);
216 #endif
217 
218 #ifdef RTABMAP_OPEN3D
219  _ui->label_open3d->setText("Yes");
220  _ui->label_open3d_license->setEnabled(true);
221 #else
222  _ui->label_open3d->setText("No");
223  _ui->label_open3d_license->setEnabled(false);
224 #endif
225 
226 #ifdef RTABMAP_FOVIS
227  _ui->label_fovis->setText("Yes");
228  _ui->label_fovis_license->setEnabled(true);
229 #else
230  _ui->label_fovis->setText("No");
231  _ui->label_fovis_license->setEnabled(false);
232 #endif
233 #ifdef RTABMAP_VISO2
234  _ui->label_viso2->setText("Yes");
235  _ui->label_viso2_license->setEnabled(true);
236 #else
237  _ui->label_viso2->setText("No");
238  _ui->label_viso2_license->setEnabled(false);
239 #endif
240 #ifdef RTABMAP_DVO
241  _ui->label_dvo->setText("Yes");
242  _ui->label_dvo_license->setEnabled(true);
243 #else
244  _ui->label_dvo->setText("No");
245  _ui->label_dvo_license->setEnabled(false);
246 #endif
247 #ifdef RTABMAP_ORB_SLAM
248 #if RTABMAP_ORB_SLAM == 3
249  _ui->label_orbslam_title->setText("With ORB SLAM3 :");
250 #elif RTABMAP_ORB_SLAM == 2
251  _ui->label_orbslam_title->setText("With ORB SLAM2 :");
252 #endif
253  _ui->label_orbslam->setText("Yes");
254  _ui->label_orbslam_license->setEnabled(true);
255 #else
256  _ui->label_orbslam->setText("No");
257  _ui->label_orbslam_license->setEnabled(false);
258 #endif
259 
260 #ifdef RTABMAP_OKVIS
261  _ui->label_okvis->setText("Yes");
262  _ui->label_okvis_license->setEnabled(true);
263 #else
264  _ui->label_okvis->setText("No");
265  _ui->label_okvis_license->setEnabled(false);
266 #endif
267 
268 #ifdef RTABMAP_LOAM
269  _ui->label_loam->setText("Yes");
270  _ui->label_loam_license->setEnabled(true);
271 #else
272  _ui->label_loam->setText("No");
273  _ui->label_loam_license->setEnabled(false);
274 #endif
275 
276 #ifdef RTABMAP_MSCKF_VIO
277  _ui->label_msckf->setText("Yes");
278  _ui->label_msckf_license->setEnabled(true);
279 #else
280  _ui->label_msckf->setText("No");
281  _ui->label_msckf_license->setEnabled(false);
282 #endif
283 
284 #ifdef RTABMAP_VINS
285  _ui->label_vins_fusion->setText("Yes");
286  _ui->label_vins_fusion_license->setEnabled(true);
287 #else
288  _ui->label_vins_fusion->setText("No");
289  _ui->label_vins_fusion_license->setEnabled(false);
290 #endif
291 
292 #ifdef RTABMAP_OPENVINS
293  _ui->label_openvins->setText("Yes");
294  _ui->label_openvins_license->setEnabled(true);
295 #else
296  _ui->label_openvins->setText("No");
297  _ui->label_openvins_license->setEnabled(false);
298 #endif
299 
300 }
301 
303 {
304  delete _ui;
305 }
306 
307 }
rtabmap::Optimizer::isAvailable
static bool isAvailable(Optimizer::Type type)
Definition: Optimizer.cpp:47
rtabmap::CameraStereoFlyCapture2::available
static bool available()
Definition: CameraStereoFlyCapture2.cpp:68
rtabmap::CameraFreenect::available
static bool available()
Definition: CameraFreenect.cpp:284
rtabmap::Optimizer::kTypeGTSAM
@ kTypeGTSAM
Definition: Optimizer.h:68
rtabmap::CameraRealSense::available
static bool available()
Definition: CameraRealSense.cpp:47
rtabmap::CameraStereoDC1394::available
static bool available()
Definition: CameraStereoDC1394.cpp:317
rtabmap::CameraK4W2::available
static bool available()
Definition: CameraK4W2.cpp:53
CameraRGBD.h
CameraStereo.h
rtabmap::Parameters::getVersion
static std::string getVersion()
Definition: Parameters.cpp:82
rtabmap::Optimizer::kTypeCVSBA
@ kTypeCVSBA
Definition: Optimizer.h:70
rtabmap::CameraStereoZedOC::available
static bool available()
Definition: CameraStereoZedOC.cpp:499
rtabmap::CameraFreenect2::available
static bool available()
Definition: CameraFreenect2.cpp:45
Parameters.h
AboutDialog.h
rtabmap::CameraDepthAI::available
static bool available()
Definition: CameraDepthAI.cpp:39
rtabmap::CameraSeerSense::available
static bool available()
Definition: CameraSeerSense.cpp:6
Optimizer.h
rtabmap::AboutDialog::_ui
Ui_aboutDialog * _ui
Definition: AboutDialog.h:50
version
version
rtabmap::CameraStereoZed::available
static bool available()
Definition: CameraStereoZed.cpp:235
rtabmap::AboutDialog::~AboutDialog
virtual ~AboutDialog()
Definition: AboutDialog.cpp:302
rtabmap::CameraMyntEye::available
static bool available()
Definition: CameraMyntEye.cpp:506
rtabmap::CameraRealSense2::available
static bool available()
Definition: CameraRealSense2.cpp:45
rtabmap::Optimizer::kTypeTORO
@ kTypeTORO
Definition: Optimizer.h:66
rtabmap::CameraK4A::available
static bool available()
Definition: CameraK4A.cpp:42
rtabmap::CameraOpenni::available
static bool available()
Definition: CameraOpenni.cpp:51
rtabmap::CameraOpenNI2::available
static bool available()
Definition: CameraOpenNI2.cpp:42
rtabmap::Optimizer::kTypeG2O
@ kTypeG2O
Definition: Optimizer.h:67
rtabmap::Optimizer::kTypeCeres
@ kTypeCeres
Definition: Optimizer.h:69
rtabmap
Definition: CameraARCore.cpp:35
rtabmap::AboutDialog::AboutDialog
AboutDialog(QWidget *parent=0)
Definition: AboutDialog.cpp:40


rtabmap
Author(s): Mathieu Labbe
autogenerated on Sun Dec 1 2024 03:42:41