examples/ForumNokia/Symbian_OS_End-to-End_Sockets_API_Example/SocketTaskManager_S60/inc/TimeOutTimer.h

00001 /*
00002 * ============================================================================
00003 *  Name     : CTimeOutTimer from TimeOutTimer.h
00004 *  Part of  : TaskManager
00005 *  Created  : 15/03/2006 by Forum Nokia
00006 *  Version  : 1.2
00007 *  Copyright: Nokia Corporation
00008 * ============================================================================
00009 */
00010 
00011 #ifndef __TIMEOUTTIMER_H__
00012 #define __TIMEOUTTIMER_H__
00013 
00014 // INCLUDE FILES
00015 #include <e32base.h>
00016 
00017 // CLASS DECLARATIONS
00018 
00022 class MTimeoutNotifier
00023     {
00024 public:
00025 
00026     /*
00027     * Called when the timer raises an event.
00028     */
00029     virtual void TimerExpired() = 0;
00030     };
00031 
00035 class CTimeOutTimer : public CTimer
00036     {
00037 public:
00038     
00044     static CTimeOutTimer* NewL( const TInt aPriority,
00045                                 MTimeoutNotifier& aNotify );
00051     static CTimeOutTimer* NewLC( const TInt aPriority,
00052                                  MTimeoutNotifier& aNotify );
00056     virtual ~CTimeOutTimer();
00057 
00058 protected: // from CTimer
00059 
00063     void RunL();
00064     
00068     TInt RunError( TInt aError );
00069 
00070 private:
00071 
00077     CTimeOutTimer( const TInt aPriority,
00078                    MTimeoutNotifier& aNotify);
00079 
00083     void ConstructL();
00084 
00085 private:
00086 
00087     // Handle to the class to be notified of a timeout event.
00088     MTimeoutNotifier&               iNotify;
00089     };
00090 
00091 #endif
00092 
00093 // End of file
00094 
00095 
00096 
00097 

Generated by  doxygen 1.6.2