sl@0: // Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies). sl@0: // All rights reserved. sl@0: // This component and the accompanying materials are made available sl@0: // under the terms of "Eclipse Public License v1.0" sl@0: // which accompanies this distribution, and is available sl@0: // at the URL "http://www.eclipse.org/legal/epl-v10.html". sl@0: // sl@0: // Initial Contributors: sl@0: // Nokia Corporation - initial contribution. sl@0: // sl@0: // Contributors: sl@0: // sl@0: // Description: sl@0: // include\mmf\common\mmfipc.inl sl@0: // sl@0: // sl@0: sl@0: sl@0: // sl@0: // RMmfSessionBase sl@0: // sl@0: sl@0: inline TInt RMmfSessionBase::SendReceive(TInt aFunction) const sl@0: { sl@0: return RSessionBase::SendReceive(aFunction); sl@0: } sl@0: sl@0: inline void RMmfSessionBase::SendReceive(TInt aFunction, TRequestStatus& aStatus) const sl@0: { sl@0: RSessionBase::SendReceive(aFunction,aStatus); sl@0: } sl@0: sl@0: // Integer Send calls sl@0: sl@0: inline TInt RMmfSessionBase::SendReceive(TInt aFunction, TInt aParam0) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: return RSessionBase::SendReceive(aFunction, TIpcArgs(aParam0)); sl@0: #else sl@0: TInt p[KMaxMessageArguments]; sl@0: p[0] = aParam0; sl@0: p[1] = 0; sl@0: p[2] = 0; sl@0: p[3] = 0; sl@0: return RSessionBase::SendReceive(aFunction, p); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: inline TInt RMmfSessionBase::SendReceive(TInt aFunction, TInt aParam0, TInt aParam1) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: return RSessionBase::SendReceive(aFunction, TIpcArgs(aParam0,aParam1)); sl@0: #else sl@0: TInt p[KMaxMessageArguments]; sl@0: p[0] = aParam0; sl@0: p[1] = aParam1; sl@0: p[2] = 0; sl@0: p[3] = 0; sl@0: return RSessionBase::SendReceive(aFunction, p); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: inline void RMmfSessionBase::SendReceive(TInt aFunction, TInt aParam0, TRequestStatus& aStatus) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: RSessionBase::SendReceive(aFunction, TIpcArgs(aParam0), aStatus); sl@0: #else sl@0: TInt p[KMaxMessageArguments]; sl@0: p[0] = aParam0; sl@0: p[1] = 0; sl@0: p[2] = 0; sl@0: p[3] = 0; sl@0: RSessionBase::SendReceive(aFunction, p, aStatus); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: inline void RMmfSessionBase::SendReceive(TInt aFunction, TInt aParam0, TInt aParam1, TRequestStatus& aStatus) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: RSessionBase::SendReceive(aFunction, TIpcArgs(aParam0,aParam1), aStatus); sl@0: #else sl@0: TInt p[KMaxMessageArguments]; sl@0: p[0] = aParam0; sl@0: p[1] = aParam1; sl@0: p[2] = 0; sl@0: p[3] = 0; sl@0: RSessionBase::SendReceive(aFunction, p, aStatus); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: // Descriptor Send calls.... sl@0: sl@0: inline TInt RMmfSessionBase::SendReceive(TInt aFunction, const TDesC8& aParam0) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: return RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0)); sl@0: #else sl@0: TAny* p[KMaxMessageArguments]; sl@0: p[0] = static_cast(const_cast(&aParam0)); sl@0: p[1] = NULL; sl@0: p[2] = NULL; sl@0: p[3] = NULL; sl@0: return RSessionBase::SendReceive(aFunction, p); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: inline TInt RMmfSessionBase::SendReceive(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: return RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1)); sl@0: #else sl@0: TAny* p[KMaxMessageArguments]; sl@0: p[0] = static_cast(const_cast(&aParam0)); sl@0: p[1] = static_cast(const_cast(&aParam1)); sl@0: p[2] = NULL; sl@0: p[3] = NULL; sl@0: return RSessionBase::SendReceive(aFunction, p); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: inline TInt RMmfSessionBase::SendReceive(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1, const TDesC8& aParam2) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: return RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1,&aParam2)); sl@0: #else sl@0: TAny* p[KMaxMessageArguments]; sl@0: p[0] = static_cast(const_cast(&aParam0)); sl@0: p[1] = static_cast(const_cast(&aParam1)); sl@0: p[2] = static_cast(const_cast(&aParam2)); sl@0: p[3] = NULL; sl@0: return RSessionBase::SendReceive(aFunction, p); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: inline void RMmfSessionBase::SendReceive(TInt aFunction, const TDesC8& aParam0, TRequestStatus& aStatus) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0), aStatus); sl@0: #else sl@0: TAny* p[KMaxMessageArguments]; sl@0: p[0] = static_cast(const_cast(&aParam0)); sl@0: p[1] = NULL; sl@0: p[2] = NULL; sl@0: p[3] = NULL; sl@0: RSessionBase::SendReceive(aFunction, p, aStatus); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: inline void RMmfSessionBase::SendReceive(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1, TRequestStatus& aStatus) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1), aStatus); sl@0: #else sl@0: TAny* p[KMaxMessageArguments]; sl@0: p[0] = static_cast(const_cast(&aParam0)); sl@0: p[1] = static_cast(const_cast(&aParam1)); sl@0: p[2] = NULL; sl@0: p[3] = NULL; sl@0: RSessionBase::SendReceive(aFunction, p, aStatus); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: inline void RMmfSessionBase::SendReceive(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1, const TDesC8& aParam2, TRequestStatus& aStatus) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1,&aParam2), aStatus); sl@0: #else sl@0: TAny* p[KMaxMessageArguments]; sl@0: p[0] = static_cast(const_cast(&aParam0)); sl@0: p[1] = static_cast(const_cast(&aParam1)); sl@0: p[2] = static_cast(const_cast(&aParam2)); sl@0: p[3] = NULL; sl@0: RSessionBase::SendReceive(aFunction, p, aStatus); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: // Descriptor Send&Result calls sl@0: sl@0: inline TInt RMmfSessionBase::SendReceiveResult(TInt aFunction, TDes8& aResult) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: return RSessionBase::SendReceive(aFunction, TIpcArgs(&aResult)); sl@0: #else sl@0: TAny* p[KMaxMessageArguments]; sl@0: p[0] = static_cast(&aResult); sl@0: p[1] = NULL; sl@0: p[2] = NULL; sl@0: p[3] = NULL; sl@0: return RSessionBase::SendReceive(aFunction, p); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: inline TInt RMmfSessionBase::SendReceiveResult(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1, TDes8& aResult) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: return RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1,&aResult)); sl@0: #else sl@0: TAny* p[KMaxMessageArguments]; sl@0: p[0] = static_cast(const_cast(&aParam0)); sl@0: p[1] = static_cast(const_cast(&aParam1)); sl@0: p[2] = static_cast(&aResult); sl@0: p[3] = NULL; sl@0: return RSessionBase::SendReceive(aFunction, p); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: inline TInt RMmfSessionBase::SendReceiveResult(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1, const TDesC8& aParam2, TDes8& aResult) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: return RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1,&aParam2,&aResult)); sl@0: #else sl@0: TAny* p[KMaxMessageArguments]; sl@0: p[0] = static_cast(const_cast(&aParam0)); sl@0: p[1] = static_cast(const_cast(&aParam1)); sl@0: p[2] = static_cast(const_cast(&aParam2)); sl@0: p[3] = static_cast(&aResult); sl@0: return RSessionBase::SendReceive(aFunction, p); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: inline void RMmfSessionBase::SendReceiveResult(TInt aFunction, TDes8& aResult, TRequestStatus& aStatus) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: RSessionBase::SendReceive(aFunction, TIpcArgs(&aResult), aStatus); sl@0: #else sl@0: TAny* p[KMaxMessageArguments]; sl@0: p[0] = static_cast(&aResult); sl@0: p[1] = NULL; sl@0: p[2] = NULL; sl@0: p[3] = NULL; sl@0: RSessionBase::SendReceive(aFunction, p, aStatus); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: inline void RMmfSessionBase::SendReceiveResult(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1, TDes8& aResult, TRequestStatus& aStatus) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1,&aResult), aStatus); sl@0: #else sl@0: TAny* p[KMaxMessageArguments]; sl@0: p[0] = static_cast(const_cast(&aParam0)); sl@0: p[1] = static_cast(const_cast(&aParam1)); sl@0: p[2] = static_cast(&aResult); sl@0: p[3] = NULL; sl@0: RSessionBase::SendReceive(aFunction, p, aStatus); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: inline void RMmfSessionBase::SendReceiveResult(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1, const TDesC8& aParam2, TDes8& aResult, TRequestStatus& aStatus) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1,&aParam2,&aResult), aStatus); sl@0: #else sl@0: TAny* p[KMaxMessageArguments]; sl@0: p[0] = static_cast(const_cast(&aParam0)); sl@0: p[1] = static_cast(const_cast(&aParam1)); sl@0: p[2] = static_cast(const_cast(&aParam2)); sl@0: p[3] = static_cast(&aResult); sl@0: RSessionBase::SendReceive(aFunction, p, aStatus); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: //TDesC versions sl@0: sl@0: inline void RMmfSessionBase::SendReceive(TInt aFunction, const TDesC& aParam0, TRequestStatus& aStatus) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0), aStatus); sl@0: #else sl@0: TAny* p[KMaxMessageArguments]; sl@0: p[0] = static_cast(const_cast(&aParam0)); sl@0: p[1] = NULL; sl@0: p[2] = NULL; sl@0: p[3] = NULL; sl@0: RSessionBase::SendReceive(aFunction, p, aStatus); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: inline TInt RMmfSessionBase::SendReceive(TInt aFunction, const TDesC& aParam0) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: return RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0)); sl@0: #else sl@0: TAny* p[KMaxMessageArguments]; sl@0: p[0] = static_cast(const_cast(&aParam0)); sl@0: p[1] = NULL; sl@0: p[2] = NULL; sl@0: p[3] = NULL; sl@0: return RSessionBase::SendReceive(aFunction, p); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: inline TInt RMmfSessionBase::SendReceiveResult(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1, TDes& aResult) const sl@0: { sl@0: #ifdef __MMF_USE_IPC_V2__ sl@0: return RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1,&aResult)); sl@0: #else sl@0: TAny* p[KMaxMessageArguments]; sl@0: p[0] = static_cast(const_cast(&aParam0)); sl@0: p[1] = static_cast(const_cast(&aParam1)); sl@0: p[2] = static_cast(&aResult); sl@0: p[3] = NULL; sl@0: return RSessionBase::SendReceive(aFunction, p); sl@0: #endif //__MMF_USE_IPC_V2__ sl@0: } sl@0: sl@0: // assuming IPC_V2 sl@0: inline TInt RMmfSessionBase::SendReceive(TInt aFunction, TInt aParam0, const TDesC8& aParam1, const TDesC8& aParam2) const sl@0: { sl@0: return RSessionBase::SendReceive(aFunction, TIpcArgs(aParam0, &aParam1, &aParam2)); sl@0: } sl@0: sl@0: inline TInt RMmfSessionBase::SendReceiveResult(TInt aFunction, TInt aParam0, const TDesC8& aParam1, const TDesC8& aParam2, TDes8& aResult) const sl@0: { sl@0: return RSessionBase::SendReceive(aFunction, TIpcArgs(aParam0, &aParam1, &aParam2, &aResult)); sl@0: } sl@0: sl@0: inline void RMmfSessionBase::SendReceive(TInt aFunction, TInt aParam0, const TDesC8& aParam1, const TDesC8& aParam2, TRequestStatus& aStatus) const sl@0: { sl@0: return RSessionBase::SendReceive(aFunction, TIpcArgs(aParam0, &aParam1, &aParam2), aStatus); sl@0: } sl@0: sl@0: inline void RMmfSessionBase::SendReceiveResult(TInt aFunction, TInt aParam0, const TDesC8& aParam1, const TDesC8& aParam2, TDes8& aResult, TRequestStatus& aStatus) const sl@0: { sl@0: return RSessionBase::SendReceive(aFunction, TIpcArgs(aParam0, &aParam1, &aParam2, &aResult), aStatus); sl@0: }