diff -r 0b3699f6c654 -r e36b2f4799c0 taskswitcher/server/inc/tsrunningappstorage.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/taskswitcher/server/inc/tsrunningappstorage.h Mon Oct 04 00:38:31 2010 +0300 @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2009 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 : + * + */ +#ifndef TSREUNNINGAPPSTORAGE_H +#define TSREUNNINGAPPSTORAGE_H + +#include "tswindowgroupsobserver.h" + +class CTsRunningApp; + +class CTsRunningAppStorage: public CBase, + public MTsRunningApplicationStorage +{ +public: + static CTsRunningAppStorage* NewLC(); + ~CTsRunningAppStorage(); + void HandleWindowGroupChanged( + MTsResourceManager &aResources, + const TArray & aWindowGroups ); + void HandleWindowGroupChanged( + MTsResourceManager &aResources, + const TArray& aWindowGroups, + const TArray& aFilteredWindowGroups); +public: + const MTsRunningApplication& operator[] (TInt aOffset) const; + TInt Count() const; + TInt ParentIndex( const MTsRunningApplication& aRunningApp ) const; + TArray BlockedWindowGroups() const; + +private: + TInt ParentIndex( TInt aOffset ) const; + TInt Find(TInt aWindowGroupId, TInt aOffset =0) const; + +private: + CTsRunningAppStorage(); + +private: + RPointerArray iRunningApps; + RArray iBlockedWindowGroups; +}; +#endif//TSREUNNINGAPPSTORAGE_H