diff options
Diffstat (limited to 'CIAO/examples/Display/NavDisplayGUI_exec/Worker.h')
-rw-r--r-- | CIAO/examples/Display/NavDisplayGUI_exec/Worker.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/CIAO/examples/Display/NavDisplayGUI_exec/Worker.h b/CIAO/examples/Display/NavDisplayGUI_exec/Worker.h new file mode 100644 index 00000000000..73aa649bd36 --- /dev/null +++ b/CIAO/examples/Display/NavDisplayGUI_exec/Worker.h @@ -0,0 +1,35 @@ +// $Id$ + +#ifndef __WORKER_H +#define __WORKER_H + +#include "ace/Task.h" +#include "ace/Synch.h" +#include "tao/corba.h" +#include "RootPanel.h" + +class Worker : public ACE_Task_Base +{ +public: + Worker (int argc, char *argv[]) + : argc_(argc), argv_(argv) {} + // ctor + + virtual int svc (void); + // The thread entry point. + + void waitUntillInitialized() {init_complete_.wait();} + // blocks the calling thread until the GUI is initialized + + RootPanel* getMainWindow() const {return main_wnd_;} + // Returns the pointer to main application window + +private: + RootPanel *main_wnd_; + int argc_; + char **argv_; + + ACE_Manual_Event init_complete_; +}; + +#endif // __WORKER_H |