diff options
author | Chris Warren-Smith | 2011-08-20 10:41:32 +1000 |
---|---|---|
committer | Chris Warren-Smith | 2011-08-21 16:39:09 +1000 |
commit | 43059b18787cda6dfb6b13b90af276930c52d6d1 (patch) | |
tree | 104e7e619e0b98d017f28f025989215561f7bf7f /backends/platform/bada | |
parent | 773f61253ca1d921d78056e1bf777a5fd74c63e7 (diff) | |
download | scummvm-rg350-43059b18787cda6dfb6b13b90af276930c52d6d1.tar.gz scummvm-rg350-43059b18787cda6dfb6b13b90af276930c52d6d1.tar.bz2 scummvm-rg350-43059b18787cda6dfb6b13b90af276930c52d6d1.zip |
BADA: Moved timer manager to backends/timer/bada
Diffstat (limited to 'backends/platform/bada')
-rwxr-xr-x | backends/platform/bada/system.cpp | 2 | ||||
-rwxr-xr-x | backends/platform/bada/timer.cpp | 120 | ||||
-rwxr-xr-x | backends/platform/bada/timer.h | 62 |
3 files changed, 1 insertions, 183 deletions
diff --git a/backends/platform/bada/system.cpp b/backends/platform/bada/system.cpp index 33318a1e61..4503b8fa6b 100755 --- a/backends/platform/bada/system.cpp +++ b/backends/platform/bada/system.cpp @@ -33,12 +33,12 @@ #include "backends/audiocd/default/default-audiocd.h"
#include "backends/mutex/mutex.h"
#include "backends/fs/fs-factory.h"
+#include "backends/timer/bada/timer.h"
#include "backends/platform/bada/form.h"
#include "backends/platform/bada/system.h"
#include "backends/platform/bada/graphics.h"
#include "backends/platform/bada/audio.h"
-#include "backends/platform/bada/timer.h"
using namespace Osp::Base;
using namespace Osp::Base::Runtime;
diff --git a/backends/platform/bada/timer.cpp b/backends/platform/bada/timer.cpp deleted file mode 100755 index b98af897f8..0000000000 --- a/backends/platform/bada/timer.cpp +++ /dev/null @@ -1,120 +0,0 @@ -/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- */
-
-#include "backends/platform/bada/timer.h"
-#include "backends/platform/bada/system.h"
-
-//
-// TimerSlot
-//
-TimerSlot::TimerSlot(Common::TimerManager::TimerProc callback,
- uint32 interval, void *refCon) :
- _timer(0),
- _callback(callback),
- _interval(interval),
- _refCon(refCon) {
- logEntered();
-}
-
-TimerSlot::~TimerSlot() {
- logEntered();
-}
-
-bool TimerSlot::OnStart() {
- logEntered();
-
- _timer = new Osp::Base::Runtime::Timer();
- if (!_timer || IsFailed(_timer->Construct(*this))) {
- AppLog("Failed to create timer");
- return false;
- }
-
- if (IsFailed(_timer->Start(_interval))) {
- AppLog("failed to start timer");
- return false;
- }
-
- AppLog("started timer %d", _interval);
- return true;
-}
-
-void TimerSlot::OnStop() {
- logEntered();
- if (_timer) {
- _timer->Cancel();
- delete _timer;
- _timer = NULL;
- }
-}
-
-void TimerSlot::OnTimerExpired(Timer &timer) {
- _callback(_refCon);
- timer.Start(_interval);
-}
-
-//
-// BadaTimerManager
-//
-BadaTimerManager::BadaTimerManager() {
- logEntered();
-}
-
-BadaTimerManager::~BadaTimerManager() {
- logEntered();
- for (Common::List<TimerSlot>::iterator slot = _timers.begin();
- slot != _timers.end(); ++slot) {
- slot->Stop();
- slot = _timers.erase(slot);
- }
-}
-
-bool BadaTimerManager::installTimerProc(TimerProc proc, int32 interval, void *refCon,
- const Common::String &id) {
- logEntered();
- TimerSlot *slot = new TimerSlot(proc, interval / 1000, refCon);
-
- if (IsFailed(slot->Construct(THREAD_TYPE_EVENT_DRIVEN))) {
- AppLog("Failed to create timer thread");
- delete slot;
- return false;
- }
-
- if (IsFailed(slot->Start())) {
- delete slot;
- AppLog("Failed to start timer thread");
- return false;
- }
-
- _timers.push_back(*slot);
- return true;
-}
-
-void BadaTimerManager::removeTimerProc(TimerProc proc) {
- logEntered();
- for (Common::List<TimerSlot>::iterator slot = _timers.begin();
- slot != _timers.end(); ++slot) {
- if (slot->_callback == proc) {
- slot->Stop();
- slot = _timers.erase(slot);
- }
- }
-}
diff --git a/backends/platform/bada/timer.h b/backends/platform/bada/timer.h deleted file mode 100755 index f9ed32c801..0000000000 --- a/backends/platform/bada/timer.h +++ /dev/null @@ -1,62 +0,0 @@ -/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- */
-
-#ifndef BADA_TIMER_H
-#define BADA_TIMER_H
-
-#include <FBase.h>
-
-#include "common/timer.h"
-#include "common/list.h"
-
-using namespace Osp::Base::Runtime;
-
-struct TimerSlot: public ITimerEventListener, public Thread {
- TimerSlot(Common::TimerManager::TimerProc callback,
- uint32 interval,
- void *refCon);
- ~TimerSlot();
-
- bool OnStart(void);
- void OnStop(void);
- void OnTimerExpired(Timer &timer);
-
- Timer *_timer;
- Common::TimerManager::TimerProc _callback;
- uint32 _interval; // in microseconds
- void *_refCon;
-};
-
-class BadaTimerManager : public Common::TimerManager {
-public:
- BadaTimerManager();
- ~BadaTimerManager();
-
- bool installTimerProc(TimerProc proc, int32 interval, void *refCon,
- const Common::String &id);
- void removeTimerProc(TimerProc proc);
-
- private:
- Common::List<TimerSlot> _timers;
-};
-
-#endif
|