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_OCTOMAP
104  _ui->label_octomap->setText("Yes");
105  _ui->label_octomap_license->setEnabled(true);
106 #else
107  _ui->label_octomap->setText("No");
108  _ui->label_octomap_license->setEnabled(false);
109 #endif
110 #ifdef RTABMAP_GRIDMAP
111  _ui->label_gridmap->setText("Yes");
112  _ui->label_gridmap_license->setEnabled(true);
113 #else
114  _ui->label_gridmap->setText("No");
115  _ui->label_gridmap_license->setEnabled(false);
116 #endif
117 #ifdef RTABMAP_CPUTSDF
118  _ui->label_cputsdf->setText("Yes");
119  _ui->label_cputsdf_license->setEnabled(true);
120 #else
121  _ui->label_cputsdf->setText("No");
122  _ui->label_cputsdf_license->setEnabled(false);
123 #endif
124 #ifdef RTABMAP_OPENCHISEL
125  _ui->label_openchisel->setText("Yes");
126 #else
127  _ui->label_openchisel->setText("No");
128 #endif
129 #ifdef RTABMAP_ALICE_VISION
130  _ui->label_aliceVision->setText("Yes");
131  _ui->label_aliceVision_license->setEnabled(true);
132 #else
133  _ui->label_aliceVision->setText("No");
134  _ui->label_aliceVision_license->setEnabled(false);
135 #endif
136 
137  _ui->label_freenect->setText(CameraFreenect::available()?"Yes":"No");
138  _ui->label_freenect_license->setEnabled(CameraFreenect::available());
139  _ui->label_openni->setText(CameraOpenni::available()?"Yes":"No");
140  _ui->label_openni_license->setEnabled(CameraOpenni::available());
141  _ui->label_openni2->setText(CameraOpenNI2::available()?"Yes":"No");
142  _ui->label_openni2_license->setEnabled(CameraOpenNI2::available());
143  _ui->label_freenect2->setText(CameraFreenect2::available()?"Yes":"No");
144  _ui->label_freenect2_license->setEnabled(CameraFreenect2::available());
145  _ui->label_realsense->setText(CameraRealSense::available() ? "Yes" : "No");
146  _ui->label_realsense_license->setEnabled(CameraRealSense::available());
147  _ui->label_realsense2->setText(CameraRealSense2::available() ? "Yes" : "No");
148  _ui->label_realsense2_license->setEnabled(CameraRealSense2::available());
149  _ui->label_dc1394->setText(CameraStereoDC1394::available()?"Yes":"No");
150  _ui->label_dc1394_license->setEnabled(CameraStereoDC1394::available());
151  _ui->label_flycapture2->setText(CameraStereoFlyCapture2::available()?"Yes":"No");
152  _ui->label_zed->setText(CameraStereoZed::available()?"Yes":"No");
153  _ui->label_zedOC->setText(CameraStereoZedOC::available()?"Yes":"No");
154  _ui->label_zedOC_license->setEnabled(CameraStereoZedOC::available());
155  _ui->label_k4w2->setText(CameraK4W2::available() ? "Yes" : "No");
156  _ui->label_k4a->setText(CameraK4A::available() ? "Yes" : "No");
157  _ui->label_mynteye->setText(CameraMyntEye::available() ? "Yes" : "No");
158  _ui->label_depthai->setText(CameraDepthAI::available() ? "Yes" : "No");
159  _ui->label_depthai_license->setEnabled(CameraDepthAI::available());
160  _ui->label_xvsdk->setText(CameraSeerSense::available() ? "Yes" : "No");
161 
162  _ui->label_toro->setText(Optimizer::isAvailable(Optimizer::kTypeTORO)?"Yes":"No");
163  _ui->label_toro_license->setEnabled(Optimizer::isAvailable(Optimizer::kTypeTORO)?true:false);
164  _ui->label_g2o->setText(Optimizer::isAvailable(Optimizer::kTypeG2O)?"Yes":"No");
165  _ui->label_g2o_license->setEnabled(Optimizer::isAvailable(Optimizer::kTypeG2O)?true:false);
166  _ui->label_gtsam->setText(Optimizer::isAvailable(Optimizer::kTypeGTSAM)?"Yes":"No");
167  _ui->label_gtsam_license->setEnabled(Optimizer::isAvailable(Optimizer::kTypeGTSAM)?true:false);
168  _ui->label_cvsba->setText(Optimizer::isAvailable(Optimizer::kTypeCVSBA)?"Yes":"No");
169  _ui->label_cvsba_license->setEnabled(Optimizer::isAvailable(Optimizer::kTypeCVSBA)?true:false);
170  _ui->label_ceres->setText(Optimizer::isAvailable(Optimizer::kTypeCeres)?"Yes":"No");
171  _ui->label_ceres_license->setEnabled(Optimizer::isAvailable(Optimizer::kTypeCeres)?true:false);
172 
173 #ifdef RTABMAP_MRPT
174  _ui->label_mrpt->setText("Yes");
175  _ui->label_mrpt_license->setEnabled(true);
176 #else
177  _ui->label_mrpt->setText("No");
178  _ui->label_mrpt_license->setEnabled(false);
179 #endif
180 
181 #ifdef RTABMAP_POINTMATCHER
182  _ui->label_libpointmatcher->setText("Yes");
183  _ui->label_libpointmatcher_license->setEnabled(true);
184 #else
185  _ui->label_libpointmatcher->setText("No");
186  _ui->label_libpointmatcher_license->setEnabled(false);
187 #endif
188 
189 #ifdef RTABMAP_CCCORELIB
190  _ui->label_cccorelib->setText("Yes");
191  _ui->label_cccorelib_license->setEnabled(true);
192 #else
193  _ui->label_cccorelib->setText("No");
194  _ui->label_cccorelib_license->setEnabled(false);
195 #endif
196 
197 #ifdef RTABMAP_OPEN3D
198  _ui->label_open3d->setText("Yes");
199  _ui->label_open3d_license->setEnabled(true);
200 #else
201  _ui->label_open3d->setText("No");
202  _ui->label_open3d_license->setEnabled(false);
203 #endif
204 
205 #ifdef RTABMAP_FOVIS
206  _ui->label_fovis->setText("Yes");
207  _ui->label_fovis_license->setEnabled(true);
208 #else
209  _ui->label_fovis->setText("No");
210  _ui->label_fovis_license->setEnabled(false);
211 #endif
212 #ifdef RTABMAP_VISO2
213  _ui->label_viso2->setText("Yes");
214  _ui->label_viso2_license->setEnabled(true);
215 #else
216  _ui->label_viso2->setText("No");
217  _ui->label_viso2_license->setEnabled(false);
218 #endif
219 #ifdef RTABMAP_DVO
220  _ui->label_dvo->setText("Yes");
221  _ui->label_dvo_license->setEnabled(true);
222 #else
223  _ui->label_dvo->setText("No");
224  _ui->label_dvo_license->setEnabled(false);
225 #endif
226 #ifdef RTABMAP_ORB_SLAM
227 #if RTABMAP_ORB_SLAM == 3
228  _ui->label_orbslam_title->setText("With ORB SLAM3 :");
229 #elif RTABMAP_ORB_SLAM == 2
230  _ui->label_orbslam_title->setText("With ORB SLAM2 :");
231 #endif
232  _ui->label_orbslam->setText("Yes");
233  _ui->label_orbslam_license->setEnabled(true);
234 #else
235  _ui->label_orbslam->setText("No");
236  _ui->label_orbslam_license->setEnabled(false);
237 #endif
238 
239 #ifdef RTABMAP_OKVIS
240  _ui->label_okvis->setText("Yes");
241  _ui->label_okvis_license->setEnabled(true);
242 #else
243  _ui->label_okvis->setText("No");
244  _ui->label_okvis_license->setEnabled(false);
245 #endif
246 
247 #ifdef RTABMAP_LOAM
248  _ui->label_loam->setText("Yes");
249  _ui->label_loam_license->setEnabled(true);
250 #else
251  _ui->label_loam->setText("No");
252  _ui->label_loam_license->setEnabled(false);
253 #endif
254 
255 #ifdef RTABMAP_MSCKF_VIO
256  _ui->label_msckf->setText("Yes");
257  _ui->label_msckf_license->setEnabled(true);
258 #else
259  _ui->label_msckf->setText("No");
260  _ui->label_msckf_license->setEnabled(false);
261 #endif
262 
263 #ifdef RTABMAP_VINS
264  _ui->label_vins_fusion->setText("Yes");
265  _ui->label_vins_fusion_license->setEnabled(true);
266 #else
267  _ui->label_vins_fusion->setText("No");
268  _ui->label_vins_fusion_license->setEnabled(false);
269 #endif
270 
271 #ifdef RTABMAP_OPENVINS
272  _ui->label_openvins->setText("Yes");
273  _ui->label_openvins_license->setEnabled(true);
274 #else
275  _ui->label_openvins->setText("No");
276  _ui->label_openvins_license->setEnabled(false);
277 #endif
278 
279 }
280 
282 {
283  delete _ui;
284 }
285 
286 }
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:281
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 Thu Jul 25 2024 02:50:06