epoc32/include/apgcli.h
author William Roberts <williamr@symbian.org>
Tue, 16 Mar 2010 16:12:26 +0000
branchSymbian2
changeset 2 2fe1408b6811
parent 0 061f57f2323e
permissions -rw-r--r--
Final list of Symbian^2 public API header files
williamr@2
     1
// Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
williamr@2
     2
// All rights reserved.
williamr@2
     3
// This component and the accompanying materials are made available
williamr@2
     4
// 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
     5
// which accompanies this distribution, and is available
williamr@2
     6
// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
williamr@2
     7
//
williamr@2
     8
// Initial Contributors:
williamr@2
     9
// Nokia Corporation - initial contribution.
williamr@2
    10
//
williamr@2
    11
// Contributors:
williamr@2
    12
//
williamr@2
    13
// Description:
williamr@2
    14
//
williamr@2
    15
williamr@2
    16
#if !defined(__APGCLI_H__)
williamr@2
    17
#define __APGCLI_H__
williamr@2
    18
williamr@2
    19
#if !defined(__E32BASE_H__)
williamr@2
    20
#include <e32base.h>
williamr@2
    21
#endif
williamr@2
    22
#if !defined(__APMSTD_H__)
williamr@2
    23
#include <apmstd.h>
williamr@2
    24
#endif
williamr@2
    25
#if !defined(__APMREC_H__)
williamr@2
    26
#include <apmrec.h>
williamr@2
    27
#endif
williamr@2
    28
#if !defined(__APAID_H__)
williamr@2
    29
#include <apaid.h>
williamr@2
    30
#endif
williamr@2
    31
#if !defined(__BADESCA_H__)
williamr@2
    32
#include <badesca.h>
williamr@2
    33
#endif
williamr@2
    34
#if !defined(__F32FILE_H__)
williamr@2
    35
#include <f32file.h>
williamr@2
    36
#endif
williamr@2
    37
williamr@2
    38
// classes referenced
williamr@2
    39
class CApaCommandLine;
williamr@2
    40
class CApaMaskedBitmap;
williamr@2
    41
class MArrayFiller;
williamr@2
    42
class RFile;
williamr@2
    43
williamr@2
    44
class CApaLsSessionExtension;
williamr@2
    45
williamr@2
    46
class CDataRecognitionResultArrayEntry;
williamr@2
    47
class CApaRegistrationResourceFileWriter;
williamr@2
    48
class CApaLocalisableResourceFileWriter;
williamr@2
    49
williamr@2
    50
/* @internalComponent
williamr@2
    51
*/
williamr@2
    52
IMPORT_C TUint MinApplicationStackSize();
williamr@2
    53
williamr@2
    54
class CDataRecognitionResultArray : public CBase
williamr@2
    55
/**
williamr@2
    56
This class holds the recognition results of a recognized directory.
williamr@2
    57
@publishedAll
williamr@2
    58
@released
williamr@2
    59
*/
williamr@2
    60
	{
williamr@2
    61
public: // exported functions
williamr@2
    62
	IMPORT_C CDataRecognitionResultArray();
williamr@2
    63
	IMPORT_C virtual ~CDataRecognitionResultArray();
williamr@2
    64
	IMPORT_C const TFileName& Path() const;
williamr@2
    65
	IMPORT_C TUint Count() const;
williamr@2
    66
	IMPORT_C void GetDataRecognitionResultL(TDataRecognitionResult& aResult, const TUint aIndex) const;
williamr@2
    67
	IMPORT_C void GetFileNameL(TFileName& aFileName, const TUint aIndex) const;
williamr@2
    68
public: // dll internally
williamr@2
    69
	TUint InternalizeL(const CBufFlat& aBuffer);
williamr@2
    70
	void SetPath(const TFileName& aPath);
williamr@2
    71
private:
williamr@2
    72
	TFileName iPath;
williamr@2
    73
	RPointerArray<CDataRecognitionResultArrayEntry> iEntries;
williamr@2
    74
	};
williamr@2
    75
williamr@2
    76
williamr@2
    77
williamr@2
    78
////////////////////////////////////
williamr@2
    79
// RApaLsSession
williamr@2
    80
////////////////////////////////////
williamr@2
    81
williamr@2
    82
class RApaLsSession : public RSessionBase
williamr@2
    83
/** A session with the application architecture server.
williamr@2
    84
williamr@2
    85
The server provides access to a cached list of the applications on the device. 
williamr@2
    86
williamr@2
    87
To use this class, clients first need to connect to the server. 
williamr@2
    88
williamr@2
    89
Then, one of GetAllApps(), GetEmbeddableApps() or GetFilteredApps() needs to be called. 
williamr@2
    90
These functions do some initialisation of server data in preparation for returning the 
williamr@2
    91
application list (which is owned by the server).
williamr@2
    92
williamr@2
    93
Then, GetNextApp() is called in a loop. The first time around, it populates the session's 
williamr@2
    94
application list and retrieves the first application in the list. Further calls to GetNextApp() 
williamr@2
    95
retrieve the remaining applications in the list, until RApaLsSession::ENoMoreAppsInList is 
williamr@2
    96
returned.
williamr@2
    97
williamr@2
    98
The session should be closed when it is no longer needed, before it goes out of scope.
williamr@2
    99
williamr@2
   100
Various functions in RApaLsSession need to access the application list, and may return 
williamr@2
   101
RApaLsSession::EAppListInvalid to indicate that the function was called before the initial 
williamr@2
   102
population of the list is complete. If this occurs, you could try again after a short delay.
williamr@2
   103
williamr@2
   104
This class provides many other functions, for instance launching applications, querying 
williamr@2
   105
application-specific information, recognising data.
williamr@2
   106
williamr@2
   107
@publishedAll
williamr@2
   108
@released */
williamr@2
   109
	{
williamr@2
   110
	friend class CApaLsSessionExtension;
williamr@2
   111
public:
williamr@2
   112
	enum {
williamr@2
   113
		/** A possible return value from GetNextApp(), to indicate that there are no more 
williamr@2
   114
		applications in the list. */
williamr@2
   115
		ENoMoreAppsInList=1,
williamr@2
   116
		/** Indicates that an RApaLsSession member function was called before the session's 
williamr@2
   117
		application list is fully populated. */
williamr@2
   118
		EAppListInvalid
williamr@2
   119
		};
williamr@2
   120
	/** Defines the way an application is launched. */
williamr@2
   121
	enum TLaunchType {
williamr@2
   122
		/** Launches a new instance of the application. */
williamr@2
   123
		ELaunchNewApp=1,
williamr@2
   124
		/** Launches a new instance of the application if no existing instance of the application 
williamr@2
   125
		is running. If an instance of the application is already running, then it 
williamr@2
   126
		is brought to the foreground. */
williamr@2
   127
		ESwitchFiles
williamr@2
   128
		};
williamr@2
   129
	
williamr@2
   130
public:
williamr@2
   131
	IMPORT_C RApaLsSession();
williamr@2
   132
	//
williamr@2
   133
	IMPORT_C TInt Connect();
williamr@2
   134
	IMPORT_C TVersion Version() const;
williamr@2
   135
	//
williamr@2
   136
	IMPORT_C TInt AppCount(TInt& aCount) const; // returns error
williamr@2
   137
	IMPORT_C TInt EmbeddableAppCount(TInt& aCount) const; // returns error
williamr@2
   138
	//
williamr@2
   139
	IMPORT_C TInt GetAllApps() const; // Call to initialize
williamr@2
   140
	IMPORT_C TInt GetAllApps(TInt aScreenMode) const; // Call to initialize
williamr@2
   141
	IMPORT_C TInt GetEmbeddableApps() const; // Call to initialize
williamr@2
   142
	IMPORT_C TInt GetEmbeddableApps(TInt aScreenMode) const; // Call to initialize
williamr@2
   143
	// 7.0s
williamr@2
   144
	IMPORT_C TInt GetFilteredApps(const TApaEmbeddabilityFilter& aFilter) const; // Call to initialize
williamr@2
   145
	IMPORT_C TInt GetFilteredApps(const TApaEmbeddabilityFilter& aFilter, TInt aScreenMode) const; // Call to initialize
williamr@2
   146
	// 8.1
williamr@2
   147
	IMPORT_C TInt GetFilteredApps(TUint aCapabilityAttributeMask, TUint aCapabilityAttributeValue) const; // Call to initialize
williamr@2
   148
	IMPORT_C TInt GetFilteredApps(TUint aCapabilityAttributeMask, TUint aCapabilityAttributeValue, TInt aScreenMode) const; // Call to initialize
williamr@2
   149
	// 9.0
williamr@2
   150
	IMPORT_C TInt GetServerApps(TUid aServiceUid) const; // Call to initialize
williamr@2
   151
	IMPORT_C TInt GetServerApps(TUid aServiceUid, TInt aScreenMode) const; // Call to initialize
williamr@2
   152
	//
williamr@2
   153
	IMPORT_C TInt GetNextApp(TApaAppInfo& aInfo) const; // call repeatedly, returns err (inc ENoMoreAppsInList,EAppListInvalid)
williamr@2
   154
	IMPORT_C TInt GetNextApp(TApaAppInfo& aInfo,TInt aScreenMode) const; // call repeatedly, returns err (inc ENoMoreAppsInList,EAppListInvalid)
williamr@2
   155
	//
williamr@2
   156
	IMPORT_C TInt GetAppInfo(TApaAppInfo& aInfo,TUid aAppUid) const;
williamr@2
   157
	IMPORT_C TInt SetAppShortCaption(const TDesC& aShortCaption, TLanguage aLanguage, TUid aAppUid);
williamr@2
   158
	IMPORT_C TInt GetDefaultScreenNumber(TInt& aDefaultScreenNumber, TUid aAppUid) const;
williamr@2
   159
	
williamr@2
   160
public:
williamr@2
   161
	IMPORT_C TInt GetAppCapability(TDes8& aCapabilityBuf,TUid aAppUid) const;
williamr@2
   162
	IMPORT_C TInt StartApp(const CApaCommandLine& aCommandLine); // This is only recommended for non document based apps
williamr@2
   163
	IMPORT_C TInt StartApp(const CApaCommandLine& aCommandLine,TThreadId& aThreadId);
williamr@2
   164
	IMPORT_C TInt StartApp(const CApaCommandLine& aCommandLine,TThreadId& aThreadId,TRequestStatus* aRequestStatusForRendezvous);
williamr@2
   165
	//
williamr@2
   166
	IMPORT_C TInt RecognizeData(const TDesC& aName, const TDesC8& aBuffer, TDataRecognitionResult& aDataType) const;
williamr@2
   167
	IMPORT_C TInt RecognizeData(const RFile& aFile, TDataRecognitionResult& aDataType) const;
williamr@2
   168
	IMPORT_C TInt RecognizeSpecificData(const TDesC& aName, const TDesC8& aBuffer, const TDataType& aDataType, TBool& aResult) const;
williamr@2
   169
	IMPORT_C TInt RecognizeSpecificData(const RFile& aFile, const TDataType& aDataType, TBool& aResult) const;
williamr@2
   170
	//
williamr@2
   171
	IMPORT_C TInt AppForDataType(const TDataType& aDataType, TUid& aAppUid) const;
williamr@2
   172
	IMPORT_C TInt StartDocument(const TDesC& aFileName, TThreadId& aThreadId, TLaunchType aLaunchType=ELaunchNewApp);
williamr@2
   173
	IMPORT_C TInt StartDocument(RFile& aFile, TThreadId& aThreadId, TRequestStatus* aRequestStatusForRendezvous=NULL);
williamr@2
   174
	IMPORT_C TInt StartDocument(const TDesC& aFileName, const TDataType& aDataType, TThreadId& aThreadId, TLaunchType aLaunchType=ELaunchNewApp);
williamr@2
   175
	IMPORT_C TInt StartDocument(RFile& aFile, const TDataType& aDataType, TThreadId& aThreadId, TRequestStatus* aRequestStatusForRendezvous=NULL);
williamr@2
   176
	IMPORT_C TInt StartDocument(const TDesC& aFileName, TUid aAppUid, TThreadId& aThreadId, TLaunchType aLaunchType=ELaunchNewApp);
williamr@2
   177
	IMPORT_C TInt StartDocument(RFile& aFile, TUid aAppUid, TThreadId& aThreadId, TRequestStatus* aRequestStatusForRendezvous=NULL);
williamr@2
   178
	IMPORT_C TInt CreateDocument(const TDesC& aFileName, TUid aAppUid, TThreadId& aThreadId, TLaunchType aLaunchType=ELaunchNewApp);
williamr@2
   179
	//
williamr@2
   180
	IMPORT_C TInt GetAppIcon(TUid aAppUid, TInt aSize, CApaMaskedBitmap& aAppBitmap) const;
williamr@2
   181
	//
williamr@2
   182
	IMPORT_C TInt AppForDocument(const TDesC& aFileName, TUid& aAppUid, TDataType& aDataType) const;
williamr@2
   183
	IMPORT_C TInt AppForDocument(const RFile& aFile, TUid& aAppUid, TDataType& aDataType) const;
williamr@2
   184
	IMPORT_C TInt IsProgram(const TDesC& aFileName, TBool& aProgram) const;
williamr@2
   185
	IMPORT_C TInt GetAcceptedConfidence(TInt& aConfidence) const;
williamr@2
   186
	IMPORT_C TInt SetAcceptedConfidence(TInt aConfidence);
williamr@2
   187
	IMPORT_C TInt GetMaxDataBufSize(TInt& aBufSize) const;
williamr@2
   188
	IMPORT_C TInt SetMaxDataBufSize(TInt aBufSize);
williamr@2
   189
	IMPORT_C TInt GetPreferredBufSize(TInt& aPreferredBufSize) const;
williamr@2
   190
	IMPORT_C TInt GetSupportedDataTypesL(CDataTypeArray& aDataTypes) const;
williamr@2
   191
	//
williamr@2
   192
	IMPORT_C TInt GetAppIconSizes(TUid aAppUid, CArrayFixFlat<TSize>& aArrayToFill) const;
williamr@2
   193
	IMPORT_C TInt GetAppIcon(TUid aAppUid, TSize aSize, CApaMaskedBitmap& aAppBitmap) const;
williamr@2
   194
	IMPORT_C TInt GetAppIcon(TUid aAppUid, RFile& aFile) const;
williamr@2
   195
	//
williamr@2
   196
	IMPORT_C TInt GetAppViews(CApaAppViewArray& aAppViews, TUid aAppUid) const;
williamr@2
   197
	IMPORT_C TInt GetAppViewIcon(TUid aAppUid, TUid aViewUid, const TSize& aSize, CApaMaskedBitmap& aViewBitmap) const;
williamr@2
   198
	IMPORT_C TInt GetAppOwnedFiles(CDesCArray& aAppOwnedFiles, TUid aAppUid) const;
williamr@2
   199
	//
williamr@2
   200
	IMPORT_C TInt NumberOfOwnDefinedIcons(TUid aAppUid, TInt& aCount) const;
williamr@2
   201
	//
williamr@2
   202
	IMPORT_C TInt GetAppIcon(TUid aAppUid, HBufC*& aFullFileName) const;
williamr@2
   203
	IMPORT_C TInt GetAppViewIcon(TUid aAppUid, TUid aViewUid, HBufC*& aFullFileName) const;
williamr@2
   204
	IMPORT_C TInt InsertDataMapping(const TDataType& aDataType, TDataTypePriority aPriority, TUid aUid);
williamr@2
   205
	IMPORT_C TInt InsertDataMappingIfHigher(const TDataType& aDataType, TDataTypePriority aPriority, TUid aUid, TBool& aInserted);
williamr@2
   206
	IMPORT_C TInt DeleteDataMapping(const TDataType& aDataType);
williamr@2
   207
	/**
williamr@2
   208
	@internalComponent
williamr@2
   209
	@released
williamr@2
   210
	*/
williamr@2
   211
	IMPORT_C TInt InsertDataMapping(const TDataType& aDataType, TDataTypePriority aPriority, 
williamr@2
   212
		TUid aUid, TUid aServiceUid);
williamr@2
   213
	/**
williamr@2
   214
	@internalComponent
williamr@2
   215
	@released
williamr@2
   216
	*/
williamr@2
   217
	IMPORT_C TInt DeleteDataMapping(const TDataType& aDataType, TUid aServiceUid);
williamr@2
   218
	/**
williamr@2
   219
	@internalComponent
williamr@2
   220
	@released
williamr@2
   221
	*/
williamr@2
   222
	IMPORT_C TInt GetAppByDataType(const TDataType& aDataType, TUid aServiceUid, TUid& aAppUid) const;
williamr@2
   223
williamr@2
   224
public:
williamr@2
   225
	//
williamr@2
   226
	IMPORT_C CApaAppServiceInfoArray* GetAppServicesLC(TUid aAppUid) const;
williamr@2
   227
	IMPORT_C CApaAppServiceInfoArray* GetServiceImplementationsLC(TUid aServiceUid) const;
williamr@2
   228
	IMPORT_C CApaAppServiceInfoArray* GetServiceImplementationsLC(TUid aServiceUid, const TDataType& aDataType) const;
williamr@2
   229
	IMPORT_C void GetAppServicesL(TUid aAppUid, CArrayFixFlat<TUid>& aServiceUids) const;
williamr@2
   230
	IMPORT_C CApaAppServiceInfoArray* GetAppServiceOpaqueDataLC(TUid aAppUid, TUid aServiceUid) const;
williamr@2
   231
	IMPORT_C TInt AppForDataTypeAndService(const TDataType& aDataType, TUid aServiceUid, TUid& aAppUid) const;
williamr@2
   232
	IMPORT_C TInt AppForDocumentAndService(const TDesC& aFileName, TUid aServiceUid, TUid& aAppUid, TDataType& aDataType) const;
williamr@2
   233
	IMPORT_C TInt AppForDocumentAndService(const RFile& aFile, TUid aServiceUid, TUid& aAppUid, TDataType& aDataType) const;
williamr@2
   234
	IMPORT_C TInt ApplicationLanguage(TUid aAppUid, TLanguage& aLanguage) const;
williamr@2
   235
	IMPORT_C void Close(); //lint !e1511 Member hides non-virtual member
williamr@2
   236
williamr@2
   237
	IMPORT_C void RegisterListPopulationCompleteObserver(TRequestStatus& aStatus) const;
williamr@2
   238
	IMPORT_C TInt CancelListPopulationCompleteObserver() const;
williamr@2
   239
	IMPORT_C TInt MatchesSecurityPolicy(TBool& aMatches, TUid aAppUid, const TSecurityPolicy& aSecurityPolicy) const;
williamr@2
   240
	IMPORT_C TInt RecognizeFilesL(const TDesC& aPath, CDataRecognitionResultArray& aResult) const;
williamr@2
   241
	IMPORT_C void RecognizeFilesL(const TDesC& aPath, CDataRecognitionResultArray& aResult, TRequestStatus& aStatus);
williamr@2
   242
	IMPORT_C TInt RecognizeFilesL(const TDesC& aPath, const TDesC8& aDataType, CDataRecognitionResultArray& aResult) const;
williamr@2
   243
	IMPORT_C void RecognizeFilesL(const TDesC& aPath, const TDesC8& aDataType, CDataRecognitionResultArray& aResult, TRequestStatus& aStatus);
williamr@2
   244
	IMPORT_C void CancelRecognizeFiles();
williamr@2
   245
williamr@2
   246
	IMPORT_C void RegisterNonNativeApplicationTypeL(TUid aApplicationType, const TDesC& aNativeExecutable);
williamr@2
   247
	IMPORT_C void DeregisterNonNativeApplicationTypeL(TUid aApplicationType);
williamr@2
   248
	IMPORT_C void PrepareNonNativeApplicationsUpdatesL();
williamr@2
   249
	IMPORT_C void RegisterNonNativeApplicationL(TUid aApplicationType, const TDriveUnit& aDrive, CApaRegistrationResourceFileWriter& aRegistrationResourceFile, CApaLocalisableResourceFileWriter* aLocalisableResourceFile, const RFile* aIconFile);
williamr@2
   250
	IMPORT_C void DeregisterNonNativeApplicationL(TUid aApplication);
williamr@2
   251
	IMPORT_C void CommitNonNativeApplicationsUpdatesL();
williamr@2
   252
	IMPORT_C TInt RollbackNonNativeApplicationsUpdates();
williamr@2
   253
	IMPORT_C void NotifyOnDataMappingChange(TRequestStatus& aRequestStatus);
williamr@2
   254
	IMPORT_C void CancelNotifyOnDataMappingChange();
williamr@2
   255
	IMPORT_C TInt GetAppType(TUid& aTypeUid, TUid aAppUid) const;
williamr@2
   256
	
williamr@2
   257
	IMPORT_C TInt ForceRegistration(const RPointerArray<TDesC>& aRegFiles);
williamr@2
   258
	
williamr@2
   259
public:
williamr@2
   260
	// not for public use
williamr@2
   261
	IMPORT_C static void SetFsSessionL(RFs& aFsSession);
williamr@2
   262
	IMPORT_C static void ClearFsSession();
williamr@2
   263
	IMPORT_C static RFs* FsSession();
williamr@2
   264
	IMPORT_C void SetNotify(TBool aCompleteImmediatelyIfNoScanImpendingOrInProgress, TRequestStatus& aStatus);
williamr@2
   265
	IMPORT_C void CancelNotify();
williamr@2
   266
williamr@2
   267
private: // Reserved for future use
williamr@2
   268
	IMPORT_C virtual void RApaLsSession_Reserved1();
williamr@2
   269
	IMPORT_C virtual void RApaLsSession_Reserved2();
williamr@2
   270
williamr@2
   271
public:
williamr@2
   272
	/**
williamr@2
   273
	@publishedPartner
williamr@2
   274
	@released
williamr@2
   275
	*/
williamr@2
   276
	IMPORT_C void ForceCommitNonNativeApplicationsUpdatesL(); 
williamr@2
   277
	
williamr@2
   278
private:
williamr@2
   279
	void DoGetAppOwnedFilesL(CDesCArray& aArrayToFill, TUid aAppUid) const;
williamr@2
   280
	void DoGetAppViewsL(CApaAppViewArray& aArrayToFill, TUid aAppUid) const;
williamr@2
   281
	void DoGetAppIconSizesL(TUid aAppUid, CArrayFixFlat<TSize>& aArrayToFill) const;
williamr@2
   282
	TInt DoAppCount(TInt& aCount,TInt aCommand) const;
williamr@2
   283
	void FetchArrayL(MArrayFiller& aArrayFiller,TUid aAppUid, TInt aOpcode, TInt aInitialBufSize) const;
williamr@2
   284
	CBufBase* GetServiceBufferLC(TInt aOpcode, TUid aUid1, TUid aUid2=KNullUid) const;
williamr@2
   285
	TInt StartAndCreate(TInt aRqst,const TDesC& aFileName, TUid aAppUid, TThreadId& aThreadId, TLaunchType aLaunchType);
williamr@2
   286
	CBufBase* GetServiceBufferLC(TInt aOpcode, TUid aUid1, const TDataType& aDataType) const;
williamr@2
   287
	TInt SendReceiveWithReconnect(TInt aFunction,const TIpcArgs& aIpcArgs) const;
williamr@2
   288
	TInt TransferAndInternalizeDataL(const TDesC& aPath, const TInt aRequiredBufferSize, CDataRecognitionResultArray& aResult) const;
williamr@2
   289
	TInt GetExecutableName(TDes& aNativeExecutableName, TDes& aLogicalExecutableName, HBufC8*& aOpaqueData, TIpcArgs& aIpcArgs, TInt aOpcode) const;
williamr@2
   290
	TInt GetOpaqueData(HBufC8*& aOpaqueData, TInt aLengthOfOpaqueData) const;
williamr@2
   291
	TInt StartApplicationPassingFileHandle(const TDesC& aNativeExecutableName, const TDesC& aLogicalExecutableName, const TDesC8* aOpaqueData, const RFile& aFile, TThreadId& aThreadId, TRequestStatus* aRequestStatusForRendezvous);
williamr@2
   292
	TInt StartApplicationPassingDocumentName(const TDesC& aNativeExecutableName, const TDesC& aLogicalExecutableName, const TDesC8* aOpaqueData, const TDesC& aDocumentName, TThreadId& aThreadId,TApaCommand aCommand, TRequestStatus* aRequestStatusForRendezvous);
williamr@2
   293
	void StartApplicationL(const TDesC& aNativeExecutableName, const CApaCommandLine& aCommandLine, TThreadId& aThreadId, TRequestStatus* aRequestStatusForRendezvous);
williamr@2
   294
	TInt DoAppForDocumentOptionallySpecifyingService(const TDesC& aFileName, TUid aServiceUid, TUid& aAppUid, TDataType& aDataType, TInt aOpcode) const;
williamr@2
   295
	TInt DoAppForDocumentOptionallySpecifyingService(const RFile& aFile, TUid aServiceUid, TUid& aAppUid, TDataType& aDataType, TInt aOpcode) const;
williamr@2
   296
	TInt GetBufferFromFile(HBufC8*& aBuffer, const TDesC& aFileName) const;
williamr@2
   297
	TInt DoStartApp(const CApaCommandLine& aCommandLine, TThreadId* aThreadId,TRequestStatus* aRequestStatusForRendezvous);
williamr@2
   298
	void DoStartAppL(const CApaCommandLine& aCommandLine, TThreadId* aThreadId,TRequestStatus* aRequestStatusForRendezvous);
williamr@2
   299
	static void GetThreadIdL(TThreadId& aThreadId, const RProcess& aProcess);
williamr@2
   300
	static void DeletePointerToPointerToTAny(TAny* aPointerToPointerToTAny);
williamr@2
   301
	static CBufFlat* CreateRegFilesBufferL(const RPointerArray<TDesC>& aRegFiles);
williamr@2
   302
	static void CleanupOperation(TAny* aAny);
williamr@2
   303
williamr@2
   304
private: // data
williamr@2
   305
	CApaLsSessionExtension* iExtension; // friend!
williamr@2
   306
	};
williamr@2
   307
williamr@2
   308
williamr@2
   309
#endif