Fawkes API  Fawkes Development Version
main.cpp
1 
2 /***************************************************************************
3  * main.cpp - YUV viewer gui
4  *
5  * Created: Sat Mar 22 16:34:02 2009
6  * Copyright 2009 Christof Rath <c.rath@student.tugraz.at>
7  *
8  ****************************************************************************/
9 
10 /* This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU Library General Public License for more details.
19  *
20  * Read the full text in the LICENSE.GPL file in the doc directory.
21  */
22 
23 #include "yuv_viewer_gui.h"
24 
25 #include <core/exception.h>
26 
27 #include <iostream>
28 
29 using namespace std;
30 
31 int main(int argc, char** argv)
32 {
33  Glib::thread_init();
34 
35  try
36  {
37  Gtk::Main kit(argc, argv);
38 
39 #ifdef GLIBMM_EXCEPTIONS_ENABLED
40  Glib::RefPtr<Gtk::Builder> builder =
41  Gtk::Builder::create_from_file(RESDIR"/guis/yuv_viewer/yuv_viewer.ui");
42 #else
43  Glib::RefPtr<Gtk::BuilderError> error;
44  Glib::RefPtr<Gtk::Builder> builder =
45  Gtk::Builder::create(RESDIR"/guis/yuv_viewer/yuv_viewer.ui", error);
46  if (error.get()) {
47  throw fawkes::Exception("Failed to load UI file: %s", error->what().c_str());
48  }
49 #endif
50 
51  YuvViewerGtkWindow *window = NULL;
52  builder->get_widget_derived("wndMain", window);
53 
54  kit.run( *window );
55 
56  delete window;
57  }
58  catch (std::exception const& e)
59  {
60  std::cerr << "Error: " << e.what() << std::endl;
61  }
62 
63  return 0;
64 }
STL namespace.
Base class for exceptions in Fawkes.
Definition: exception.h:36
Tool to show the YUV color space.