ipsservices/tsrc/profiletester/inc/timeouttimer.h
branchRCL_3
changeset 70 968773a0b6ef
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ipsservices/tsrc/profiletester/inc/timeouttimer.h	Tue Sep 14 20:48:24 2010 +0300
@@ -0,0 +1,65 @@
+/*
+ * ============================================================================
+ *  Name        : timeouttimer.h
+ *  Part of     : ipsservice / profiletester
+ *  Description : timer implementation
+ *  Version     : %version: 1 % << Don't touch! Updated by Synergy at check-out.
+ *
+ *  Copyright ©2010-2010 Nokia and/or its subsidiary(-ies). All rights reserved.
+ *  This material, including documentation and any related computer
+ *  programs, is protected by copyright controlled by Nokia.  All
+ *  rights are reserved.  Copying, including reproducing, storing,
+ *  adapting or translating, any or all of this material requires the
+ *  prior written consent of Nokia.  This material also contains
+ *  confidential information which may not be disclosed to others
+ *  without the prior written consent of Nokia.
+ * ============================================================================
+ */
+
+#ifndef C_TIMEOUTTIMER_H
+#define C_TIMEOUTTIMER_H
+
+#include <e32base.h>
+#include <e32std.h>
+class MTimeoutObserver;
+
+/**
+ *  TimeoutObserver 
+ *  Api for timeout observers
+ */
+class MTimeoutObserver
+    {
+
+public:
+    virtual void TimeoutNotify() = 0;
+
+    };
+
+class CTimeoutTimer : protected CTimer
+    {
+public:
+
+    static CTimeoutTimer* NewL(MTimeoutObserver& aHandle);
+    static CTimeoutTimer* NewLC(MTimeoutObserver& aHandle);
+    void Start(TInt aTimePeriod);
+    void Stop();
+    virtual ~CTimeoutTimer();
+
+protected:
+
+    // from CTimer
+    void RunL();
+    TInt RunError(TInt aError);
+
+private:
+
+    CTimeoutTimer(MTimeoutObserver& aHandle);
+    void ConstructL();
+
+private:
+
+    // timetout notifier handle
+    MTimeoutObserver& iNotifyHandle;
+    };
+
+#endif // C_TIMEOUTTIMER_H