diff -r aa99f2208aad -r b8d18c84f71c localisation/apparchitecture/apparc/APADLL.H --- a/localisation/apparchitecture/apparc/APADLL.H Wed Jul 28 16:03:37 2010 +0100 +++ b/localisation/apparchitecture/apparc/APADLL.H Tue Aug 03 10:20:34 2010 +0100 @@ -1,7 +1,7 @@ // Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies). // All rights reserved. // This component and the accompanying materials are made available -// under the terms of the License "Eclipse Public License v1.0" +// 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". // @@ -11,60 +11,45 @@ // Contributors: // // Description: +// apadll.h // #ifndef __APADLL_H__ #define __APADLL_H__ -#if !defined(__E32STD_H__) #include -#endif -#if !defined(__E32BASE_H__) #include -#endif -#if !defined(__APADEF_H__) #include -#endif -#if !defined(__APPARC_H__) #include -#endif + +class CApaApplication; + +NONSHARABLE_CLASS(RApaApplication) + { +public: + RApaApplication(); + void Close(); + void CreateApplicationL(TApaApplicationFactory aApplicationFactory); // Uses the factory to create the application + + TFileName AppFileName() const; + TUid AppFileUid() const; + CApaApplication* Application(); + inline const CApaApplication* Application() const; + void ScheduleForAsyncDeletion(TBool aDoDelete = ETrue); + TBool IsScheduleForAsyncDeletion() const; +private: + ~RApaApplication(); +private: + CApaApplication* iApplication; + RBuf iAppName; + TUid iFileUid; + TBool iScheduledForDeletion; + }; -// classes referenced -class CApaApplication; -class RFs; - -NONSHARABLE_CLASS(CApaAppHolder) : public CBase -/** Provides an interface for obtaining data gathered differently for DLLs and EXEs. Derived -classes create and own the application object. The equivalent of the old CApaDll derives from this.*/ -{ -public: - CApaAppHolder(); - ~CApaAppHolder(); - - virtual TFileName FileName() const = 0; - virtual TUid Uid() const = 0; - virtual CApaApplication* Application() const = 0; +// inlines -protected: - void UpdateAppsRefToThis(); -}; - -NONSHARABLE_CLASS(CApaExe) : public CApaAppHolder - { -public: - CApaExe(); - ~CApaExe(); +const CApaApplication* RApaApplication::Application() const + { return const_cast(this)->Application(); } - TFileName FileName() const; - TUid Uid() const; - CApaApplication* Application() const; - - void CreateApplicationL(TApaApplicationFactory aApplicationFactory); // Uses the factory to create the application -private: - CApaApplication* iApplication; - HBufC* iAppName; - TUid iFileUid; - }; - -#endif +#endif // __APADLL_H__