app-SeaBeeIIIGUI.C

00001 #include <QtGui/QtGui>
00002 
00003 #include "Component/ModelManager.H"
00004 #include "Component/ModelComponent.H"
00005 #include "Media/FrameSeries.H"
00006 #include "Image/Image.H"
00007 #include "Image/PixelsTypes.H"
00008 #include "Robots/SeaBeeIII/GUI/MainWindow.qt.H"
00009 #include <Ice/Ice.h>
00010 #include <Ice/Service.h>
00011 
00012 class SeaBee3GUIService : public Ice::Service {
00013   protected:
00014     virtual bool start(int, char* argv[]);
00015     virtual bool stop() {
00016       if (itsMgr)
00017         delete itsMgr;
00018       return true;
00019     }
00020 
00021   private:
00022     Ice::ObjectAdapterPtr itsAdapter;
00023     ModelManager *itsMgr;
00024 };
00025 
00026 bool SeaBee3GUIService::start(int argc, char* argv[])
00027 {
00028   QApplication app(argc, argv);
00029 
00030   itsMgr = new ModelManager("SeaBeeIIIGUIManager");
00031 
00032   char adapterStr[255];
00033   LINFO("Creating Adapter");
00034   sprintf(adapterStr, "default -p %i", 12345);
00035   itsAdapter = communicator()->createObjectAdapterWithEndpoints("RobotBrainPort",
00036       adapterStr);
00037 
00038   nub::ref<MainWindow> mainWindow(new MainWindow(*itsMgr));
00039   itsMgr->addSubComponent(mainWindow);
00040 
00041   LINFO("Starting Up GUI Comm");
00042   mainWindow->initIce(communicator(), itsAdapter);
00043 
00044   itsMgr->parseCommandLine(argc, argv, "", 0, 0);
00045 
00046   itsAdapter->activate();
00047 
00048   itsMgr->start();
00049 
00050   mainWindow->setGeometry(100,100,900,800);
00051   mainWindow->show();
00052 
00053   return app.exec();
00054 }
00055 
00056 // ######################################################################
00057 int main(int argc, char** argv) {
00058 
00059   SeaBee3GUIService svc;
00060   return svc.main(argc, argv);
00061 }
00062 
Generated on Sun May 8 08:41:32 2011 for iLab Neuromorphic Vision Toolkit by  doxygen 1.6.3