diff -r 63be7eb3fc78 -r f28ada11abbf wlanutilities/wlansniffer/mainapplication/inc/wsfactivetimeupdater.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wlanutilities/wlansniffer/mainapplication/inc/wsfactivetimeupdater.h Wed Sep 01 12:20:32 2010 +0100 @@ -0,0 +1,123 @@ +/* +* Copyright (c) 2007-2008 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: Class header for CWsfActiveTimeUpdater +* +*/ + +#ifndef C_WSFACTIVETIMEUPDATER_H +#define C_WSFACTIVETIMEUPDATER_H + +// EXTERNAL INCLUDES +#include + +// INTERNAL INCLUDES + +// FORWARD DECLARATIONS +class MWsfActiveTimerHandler; + + +/** + * Responsible for time updating by using a customizable time interval. + * @since S60 v5.0 + */ +NONSHARABLE_CLASS( CWsfActiveTimeUpdater ) : public CBase + { + public: // Constructors and destructor + + /** + * Two-phased constructor + * @since S60 5.0 + * @param aActiveTimerHandler interface details views controller + * @return instance of CWsfActiveTimeUpdater class + */ + static CWsfActiveTimeUpdater* NewL( + MWsfActiveTimerHandler* aActiveTimerHandler ); + + + /** + * Two-phased constructor. Leaves the object on CleanupStack + * @since S60 5.0 + * @param aActiveTimerHandler interface details views controller + * @return instance of CWsfActiveTimeUpdater class + */ + static CWsfActiveTimeUpdater* NewLC( + MWsfActiveTimerHandler* aActiveTimerHandler ); + + /** + * Destructor of CWsfActiveTimeUpdater class + * @since S60 5.0 + */ + ~CWsfActiveTimeUpdater(); + + private: // Constructors + + /** + * Default C++ constructor + * @since S60 5.0 + * @param aActiveTimerHandler interface details views controller + */ + CWsfActiveTimeUpdater( MWsfActiveTimerHandler* aActiveTimerHandler ); + + /** + * 2nd phase constructor + * @since S60 5.0 + */ + void ConstructL(); + + public: // New methods + + /** + * Start update timer + * @since S60 5.0 + * @param aUpdateInterval refresh time interval + */ + void Start( TInt aUpdateInterval ); + + /** + * Stop update timer + * @since S60 5.0 + */ + void Stop(); + + /** + * Called from static call back of CPeriodic. + * The actual update process starts here + * @since S60 5.0 + */ + void DoUpdateTimeL(); + + private: // New methods + /** + * Function to called when periodic timer releases + * @since S60 5.0 + * @param aUpdater pointer to this + */ + static TInt UpdateTimeL( TAny* aUpdater ); + + private: + + /** + * Pointer to the Active Timer handler interface + * Own. + */ + MWsfActiveTimerHandler* iActiveTimerHandler; + + /** + * Timer, to refresh the details views + * Own. + */ + CPeriodic* iPeriodic; + }; + +#endif // C_WSFACTIVETIMEUPDATER_H