cgametimer.cpp

来自「一个基于symbian s60 3rd 的3D汽车游戏演示程序,模拟器上编译通过」· C++ 代码 · 共 67 行

CPP
67
字号
   /*
============================================================================
    * Name : CGameTimer.cpp
    * Part of : Example3D
    * Description : Definition of CGameTimer
    * Copyright (c) 2007 Nokia Corporation
============================================================================
    */

// INCLUDES
#include "CGameTimer.h"
#include <e32svr.h>
#include <coemain.h>
#include "MGameTimerObserver.h"
            
// MEMBER FUNCTIONS
CGameTimer* CGameTimer::NewLC(MGameTimerObserver& aObserver)
    {
    CGameTimer* self = new (ELeave) CGameTimer( aObserver );
    CleanupStack::PushL(self);
    self->ConstructL();
    return self;
    }

CGameTimer* CGameTimer::NewL(MGameTimerObserver& aObserver)
    {
    CGameTimer* self = CGameTimer::NewLC( aObserver );
    CleanupStack::Pop();
    return self;
    }

CGameTimer::CGameTimer( MGameTimerObserver& aObserver )
    : iObserver( aObserver )
    {
    }

void CGameTimer::ConstructL()
    {
    iIdle = CIdle::NewL( CIdle::EPriorityIdle );
    }

CGameTimer::~CGameTimer()
    {
    iIdle->Cancel();
    delete iIdle;
    }

void CGameTimer::Start()
    {
    iIdle->Start( TCallBack( IdleCallBack, this ) );
    }

void CGameTimer::Cancel()
    {
    iIdle->Cancel();
    }

TInt CGameTimer::IdleCallBack( TAny* aPtr )
    {
    return ( ( CGameTimer* )aPtr )->DoCall();
    }

TInt CGameTimer::DoCall()
    {
    return iObserver.DoGameFrameL();
    }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?