1 /***************************************************************************
3 * Copyright (C) 2006 David Brodsky *
5 * This program is free software; you can redistribute it and/or *
6 * modify it under the terms of the GNU General Public License as *
7 * published by the Free Software Foundation and appearing *
8 * in the file LICENSE.GPL included in the packaging of this file. *
10 * This program is distributed in the hope that it will be useful, *
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
13 * General Public License for more details. *
15 ***************************************************************************/
17 #ifndef _main_mainthread_h
18 #define _main_mainthread_h
20 #include <tairon/core/thread.h>
28 /** \brief Main applications thread.
30 class MainThread
: public Tairon::Core::Thread
33 /** Constructs a MainThread object.
37 /** Destroys the object.
39 virtual ~MainThread();
41 /** Called during clean-up stage that one operation has been completed.
45 /** Called during clean-up stage to wait for one more operation to
48 void operationInProgress();
50 /** Runs the main application loop.
54 /** Returns pointer to the instance of this class.
56 static MainThread
*self() {
61 /** Pointer to the instance of this class.
63 static MainThread
*mainThread
;
68 }; // namespace Tairent
72 // vim: ai sw=4 ts=4 noet fdm=marker