williamr@2: // Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
williamr@2: // All rights reserved.
williamr@2: // This component and the accompanying materials are made available
williamr@2: // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
williamr@2: // which accompanies this distribution, and is available
williamr@2: // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
williamr@2: //
williamr@2: // Initial Contributors:
williamr@2: // Nokia Corporation - initial contribution.
williamr@2: //
williamr@2: // Contributors:
williamr@2: //
williamr@2: // Description:
williamr@2: //
williamr@2: 
williamr@2: #ifndef __EIKSRVC_H__
williamr@2: #define __EIKSRVC_H__
williamr@2: 
williamr@2: #include <eiksrvs.h>
williamr@2: #include <eiksrv.h>
williamr@2: 
williamr@2: const TInt KNumConnectRetries = 5;
williamr@2: /** 
williamr@2: @internalComponent
williamr@2: */
williamr@2: typedef TThreadFunction* (*EikSrvEntrypoint)();
williamr@2: 
williamr@2: class CEikDebugPreferences;
williamr@2: 
williamr@2: /**
williamr@2: @publishedPartner 
williamr@2: @released
williamr@2: */
williamr@2: class REikAppUiSession : public RSessionBase
williamr@2: 	{
williamr@2: public:
williamr@2: 	IMPORT_C REikAppUiSession();
williamr@2: 	IMPORT_C TInt Connect();
williamr@2: 	IMPORT_C void Close();
williamr@2: 	IMPORT_C TVersion Version() const;
williamr@2: 	IMPORT_C void LaunchTaskList() const;
williamr@2: 	IMPORT_C void CycleTasks(TTaskCycleDirection aDirection) const;
williamr@2: 	IMPORT_C TInt SetStatusPaneFlags(TInt aFlags) const;
williamr@2: 	IMPORT_C TInt SetStatusPaneLayout(TInt aLayoutResId) const;
williamr@2: 	IMPORT_C TInt BlankScreen() const;
williamr@2: 	IMPORT_C TInt UnblankScreen() const;
williamr@2: 	IMPORT_C CEikonEnv::TErrorValidity ResolveError(TDes& aText,TInt aError,TUid aAppUid) const;
williamr@2: 	IMPORT_C void Extension(TUid aExtensionUid,const TDesC8& aBuffer,TRequestStatus& aRequestStatus) const;
williamr@2: 	IMPORT_C TInt GetInstalledFepName(TDes& aName) const;
williamr@2: 	IMPORT_C TInt SetInstalledFepName(const TDesC& aName, TBool aRaiseFileError) const;
williamr@2: 	IMPORT_C CColorList* GetSystemColorsL() const;
williamr@2: 	IMPORT_C void SetSystemColorsL(const CColorList& aColorList) const;
williamr@2: 	IMPORT_C TInt OpenFepAttributes() const;
williamr@2: 	IMPORT_C TInt GetFepAttribute(TUid aAttribUid, TDes8& aAttribData) const;
williamr@2: 	IMPORT_C TInt SetFepAttribute(TUid aAttribUid, const TDesC8& aAttribData) const;
williamr@2: 	IMPORT_C TInt CommitFepAttributes() const;
williamr@2: 	IMPORT_C void CloseFepAttributes() const;
williamr@2: 	IMPORT_C TInt EnableTaskList() const;
williamr@2: 	IMPORT_C virtual void REikAppUiSession_Reserved1();
williamr@2: 	IMPORT_C virtual void REikAppUiSession_Reserved2();
williamr@2: 	IMPORT_C CEikDebugPreferences* GetDebugPreferencesL() const;
williamr@2: 	IMPORT_C CEikonEnv::TErrorValidity ResolveErrorWithTitleL(TDes& aErrorText, TInt aError, TInt& aTextId, TUint& aFlags, TDes& aTitleText, TBool aIsMemoryAllocatedByErrResolver) const;
williamr@2: private:
williamr@2: 	class CExtension;
williamr@2: 	void StartServerL();
williamr@2: #if defined(__WINS__)
williamr@2: private:
williamr@2: 	RLibrary iNotUsed; // kept for the moment to preserve sizeof(REikAppUiSession)
williamr@2: #endif
williamr@2: private:
williamr@2: 	CExtension* iExtension;
williamr@2: 	};
williamr@2: 
williamr@2: //**********************************
williamr@2: //global functions
williamr@2: //**********************************
williamr@2: 
williamr@2: /**
williamr@2: function to panic the server
williamr@2: @internalComponent
williamr@2: */
williamr@2: GLREF_C void PanicServer(TEikAppUiServPanic aPanic);
williamr@2: 
williamr@2: 
williamr@2: #endif	// __EIKSRVC_H__