lowlevellibsandfws/pluginfw/Framework/frame/EComMessageIds.h
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Wed, 15 Sep 2010 14:02:55 +0300
branchRCL_3
changeset 64 c44f36bb61a3
parent 0 e4d67989cc36
permissions -rw-r--r--
Revision: 201021 Kit: 201036

// 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 "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:
// Define the enumeration for the service op codes
// 
//

#ifndef __ECOMMESSAGEIDS_H__
#define __ECOMMESSAGEIDS_H__

#include <e32base.h>

/**
A Struct class used to encapsulate the parameters
required during ListImplementations
@internalComponent
*/
class TListImplParam
	{
public:
	TInt iMatchType;
	TInt iBufferSize;
	TBool iCapabilityCheck;
	};

/**
ECom Framework service request codes
@internalComponent
*/
enum TEComServiceMessages
	{
	ENotifyOnChange,
	ECancelNotifyOnChange,
	EListImplementations,
	EListResolvedImplementations,
	EListCustomResolvedImplementations,
	ECollectImplementationsList,
	EGetImplementationCreationMethod,
	EGetResolvedCreationMethod,
	EGetCustomResolvedCreationMethod,
	//EDestroyedImplementation obsolete due to implementation
	//creation relocation to client side from server
	EDestroyedImplementation,
	EEnableImplementation,
	EDisableImplementation,
	// List interfaces
	EListExtendedInterfaces,
	//This is a generic message intended for testing purposes, should be the last one.
	ESetGetParameters
	};


/**
Constants for UidType locations for service message UID parameters
@internalComponent
*/
const TInt KInterfaceUidIndex	= 0;
const TInt KDtorKeyUidIndex		= 1;
const TInt KResolverUidIndex	= 2;


/**
Message slot constants for
IPC parameter passing consistency
Note : the slot range is 0-3
@internalComponent
*/
const TInt KIPCParameterMessageDes				= 0;
const TInt KIPCParameterUids					= 0;
const TInt KIPCParameterDesLength				= 1;
const TInt KIPCParameterResolverParams			= 1;
const TInt KIPCParameterResolverParamsType		= 2;
const TInt KIPCParameterMatchStrExtInf			= 1;

/**
Message slot constants for List Interfaces parameter passing
@internalComponent
*/
const TInt KIPCParameterInterfaceParam			= 0;
const TInt KIPCParameterImplementationUid		= 0;
const TInt KIPCParameterBufferSize				= 1;
const TInt KIPCParameterInterfaceData			= 2;

/**
Matching pointer access methods for ReadL
@internalComponent
*/
#define KIPCParameterMessageDesPtr				aMessage.Ptr0()
#define KIPCParameterUidsPtr					aMessage.Ptr0()
#define KIPCParameterResolverParamsPtr			aMessage.Ptr1()
#define KIPCParameterResolverParamsTypePtr		aMessage.Int2()

/**
@internalComponent
*/
const TInt KIPCReturnParameterUids				= 0;
const TInt KIPCReturnParameterIIArray			= 3;
const TInt KIPCReturnParameterIIArraySize		= 3;
const TInt KIPCReturnParameterCreationMethod	= 3;

/**
Matching pointer access methods for WriteL
@internalComponent
*/
#define KIPCReturnParameterUidsPtr				0
#define KIPCReturnParameterIIArrayPtr			3
#define KIPCReturnParameterIIArraySizePtr		3
#define KIPCReturnParameterCreationMethodPtr	3

#endif	// __ECOMMESSAGEIDS_H__