OGS
main.cpp
Go to the documentation of this file.
1 #include <QVTKOpenGLWidget.h>
2 #include <vtkSmartPointer.h>
3 
4 #include <QApplication>
5 #include <QSurfaceFormat>
6 #include <memory>
7 
8 #include "InfoLib/GitInfo.h"
10 #include "mainwindow.h"
11 
12 // TODO: Replace this on VTK 9 upgrade, see
13 // https://discourse.vtk.org/t/vtk-use-file/3645/2
14 #if VTK_VIA_CPM
15 #include <vtkAutoInit.h>
16 VTK_MODULE_INIT(vtkInteractionStyle)
17 VTK_MODULE_INIT(vtkRenderingFreeType)
18 VTK_MODULE_INIT(vtkRenderingOpenGL2)
19 #endif
20 
21 int main(int argc, char* argv[])
22 {
23  // needed to ensure appropriate OpenGL context is created for VTK rendering.
24  QSurfaceFormat::setDefaultFormat(QVTKOpenGLWidget::defaultFormat());
25 
26  auto myOutputWindow = vtkSmartPointer<VtkConsoleOutputWindow>::New();
27  vtkOutputWindow::SetInstance(myOutputWindow);
28 
29  QApplication a(argc, argv);
30  QApplication::setApplicationName("OpenGeoSys - Data Explorer");
31  QApplication::setApplicationVersion(
32  QString::fromStdString(GitInfoLib::GitInfo::ogs_version));
33  QApplication::setOrganizationName("OpenGeoSys Community");
34  QApplication::setOrganizationDomain("opengeosys.org");
35  setlocale(LC_NUMERIC, "C");
36  QLocale::setDefault(QLocale::German);
37  auto w = std::make_unique<MainWindow>();
38  w->setWindowTitle(w->windowTitle() + " - " +
39  QString::fromStdString(GitInfoLib::GitInfo::ogs_version));
40  if (QCoreApplication::arguments().size() > 1)
41  {
42  w->loadFileOnStartUp(QCoreApplication::arguments().at(1));
43  }
44  w->show();
45  int returncode = QApplication::exec();
46 
47  return returncode;
48 }
int main(int argc, char *argv[])
Definition: main.cpp:21
Git information.
GITINFOLIB_EXPORT const std::string ogs_version