Omnidome
Fulldome Mapping Software Toolkit
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Data Structures | Functions
omnidome.cpp File Reference
#include "MainWindow.h"
#include "Application.h"
#include <QDir>
#include <QFile>
#include <QCommandLineParser>
Include dependency graph for omnidome.cpp:

Data Structures

class  CommandLineParser
 

Functions

int main (int ac, char *av[])
 

Function Documentation

int main ( int  ac,
char *  av[] 
)

Command line parser is only available in debug mode

66 {
67  // This line is absolutely mandatory for being able to have multiple
68  // QOpenGLWidgets in different windows!!!
69  QApplication::setAttribute(Qt::AA_ShareOpenGLContexts);
70 
71  QSurfaceFormat _format;
72 
73 // _format.setVersion(3,3);
74  _format.setProfile(QSurfaceFormat::CompatibilityProfile);
75 #ifdef DEBUG
76  _format.setOption(QSurfaceFormat::DebugContext);
77 #endif
78  QSurfaceFormat::setDefaultFormat(_format);
79 
80 
81  omni::ui::Application _a(ac, av);
82 
83  /// Command line parser is only available in debug mode
84 #ifdef DEBUG
85  CommandLineParser parser;
86  parser.parse(_a);
87 
88  if (!parser.value("stylesheet").isEmpty()) {
89  qDebug() << parser.value("stylesheet");
90  _a.setStyleSheetFile(parser.value("stylesheet"));
91  }
92 #endif // ifdef DEBUG
93 
94  ui::MainWindow _w;
95  _w.move(QApplication::primaryScreen()->geometry().topLeft());
96 
97  // Load mapping session from given commandline argument when in release mode
98 #ifndef DEBUG
99 
100  if (ac == 2)
101  {
102  _w.openProjection(av[1]);
103  }
104 #endif // ifndef DEBUG
105 
106  return _a.exec();
107 }
Definition: omnidome.cpp:31
void parse(QApplication const &_app)
Definition: omnidome.cpp:33
Definition: MainWindow.h:45
Omnidome Application.
Definition: Application.h:27
void openProjection()
Open a new session.
Definition: MainWindow.cpp:367
QString value(QString const &_key) const
Definition: omnidome.cpp:53