diff -r 491b3ed49290 -r 65326cf895ed files_plat/memory_scan_popup_ui_api/inc/MSPUtil.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/files_plat/memory_scan_popup_ui_api/inc/MSPUtil.h Wed Sep 01 12:31:07 2010 +0100 @@ -0,0 +1,85 @@ +/* +* Copyright (c) 2002 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: +* Utility class for Memory State Popup. +* +* +*/ + + +#ifndef __CMSPUTIL_H__ +#define __CMSPUTIL_H__ + +// INCLUDES +#include +#include + + +// CLASS DEFINITION + +class CMSPUtil : public CBase + { + public: + /** + * Static constructor. + * @param aArray Array of unit texts. + * @return Pointer to an instance of CMSPUtil. + */ + static CMSPUtil* NewL( CDesCArrayFlat* aArray ); + + /** + * Virtual D'tor. + */ + virtual ~CMSPUtil( ); + + protected: + /** + * Default c'tor, protected to prevent using directly. + */ + CMSPUtil( ); + + public: + /** + * Type of unit. + */ + enum TUnitType + { + EByte = 0, + EKiloByte, + EMegaByte, + EGigaByte, + ETeraByte + }; + + public: + /** + * Solves the correct unit for given data size. + * @param aNumber Amount of data to be solved, changed accordingly. + * @return Unit text descriptor. + */ + IMPORT_C TPtrC SolveUnitAndSize( TInt64& aNumber ); + + private: + /** + * Solves the correct unit for given data size, used internally. + * @param aNumber Amount of data to be solved, changed accordingly. + * @param aUnit Unit text index in unit array. + */ + void SolveUnitAndSize( TInt64& aNumber, TInt& aUnit ); + + private: + CDesCArrayFlat* iUnitArray; + }; + +#endif // __CMSPUTIL_H__