williamr@2: // Copyright (c) 2003-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@4: // under the terms of "Eclipse Public License v1.0" williamr@2: // which accompanies this distribution, and is available williamr@4: // at the URL "http://www.eclipse.org/legal/epl-v10.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: // include\mmf\common\mmfipc.inl williamr@2: // williamr@2: // williamr@2: williamr@2: williamr@2: // williamr@2: // RMmfSessionBase williamr@2: // williamr@2: williamr@2: inline TInt RMmfSessionBase::SendReceive(TInt aFunction) const williamr@2: { williamr@2: return RSessionBase::SendReceive(aFunction); williamr@2: } williamr@2: williamr@2: inline void RMmfSessionBase::SendReceive(TInt aFunction, TRequestStatus& aStatus) const williamr@2: { williamr@2: RSessionBase::SendReceive(aFunction,aStatus); williamr@2: } williamr@2: williamr@2: // Integer Send calls williamr@2: williamr@2: inline TInt RMmfSessionBase::SendReceive(TInt aFunction, TInt aParam0) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: return RSessionBase::SendReceive(aFunction, TIpcArgs(aParam0)); williamr@2: #else williamr@2: TInt p[KMaxMessageArguments]; williamr@2: p[0] = aParam0; williamr@2: p[1] = 0; williamr@2: p[2] = 0; williamr@2: p[3] = 0; williamr@2: return RSessionBase::SendReceive(aFunction, p); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: inline TInt RMmfSessionBase::SendReceive(TInt aFunction, TInt aParam0, TInt aParam1) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: return RSessionBase::SendReceive(aFunction, TIpcArgs(aParam0,aParam1)); williamr@2: #else williamr@2: TInt p[KMaxMessageArguments]; williamr@2: p[0] = aParam0; williamr@2: p[1] = aParam1; williamr@2: p[2] = 0; williamr@2: p[3] = 0; williamr@2: return RSessionBase::SendReceive(aFunction, p); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: inline void RMmfSessionBase::SendReceive(TInt aFunction, TInt aParam0, TRequestStatus& aStatus) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: RSessionBase::SendReceive(aFunction, TIpcArgs(aParam0), aStatus); williamr@2: #else williamr@2: TInt p[KMaxMessageArguments]; williamr@2: p[0] = aParam0; williamr@2: p[1] = 0; williamr@2: p[2] = 0; williamr@2: p[3] = 0; williamr@2: RSessionBase::SendReceive(aFunction, p, aStatus); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: inline void RMmfSessionBase::SendReceive(TInt aFunction, TInt aParam0, TInt aParam1, TRequestStatus& aStatus) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: RSessionBase::SendReceive(aFunction, TIpcArgs(aParam0,aParam1), aStatus); williamr@2: #else williamr@2: TInt p[KMaxMessageArguments]; williamr@2: p[0] = aParam0; williamr@2: p[1] = aParam1; williamr@2: p[2] = 0; williamr@2: p[3] = 0; williamr@2: RSessionBase::SendReceive(aFunction, p, aStatus); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: // Descriptor Send calls.... williamr@2: williamr@2: inline TInt RMmfSessionBase::SendReceive(TInt aFunction, const TDesC8& aParam0) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: return RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0)); williamr@2: #else williamr@2: TAny* p[KMaxMessageArguments]; williamr@2: p[0] = static_cast(const_cast(&aParam0)); williamr@2: p[1] = NULL; williamr@2: p[2] = NULL; williamr@2: p[3] = NULL; williamr@2: return RSessionBase::SendReceive(aFunction, p); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: inline TInt RMmfSessionBase::SendReceive(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: return RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1)); williamr@2: #else williamr@2: TAny* p[KMaxMessageArguments]; williamr@2: p[0] = static_cast(const_cast(&aParam0)); williamr@2: p[1] = static_cast(const_cast(&aParam1)); williamr@2: p[2] = NULL; williamr@2: p[3] = NULL; williamr@2: return RSessionBase::SendReceive(aFunction, p); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: inline TInt RMmfSessionBase::SendReceive(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1, const TDesC8& aParam2) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: return RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1,&aParam2)); williamr@2: #else williamr@2: TAny* p[KMaxMessageArguments]; williamr@2: p[0] = static_cast(const_cast(&aParam0)); williamr@2: p[1] = static_cast(const_cast(&aParam1)); williamr@2: p[2] = static_cast(const_cast(&aParam2)); williamr@2: p[3] = NULL; williamr@2: return RSessionBase::SendReceive(aFunction, p); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: inline void RMmfSessionBase::SendReceive(TInt aFunction, const TDesC8& aParam0, TRequestStatus& aStatus) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0), aStatus); williamr@2: #else williamr@2: TAny* p[KMaxMessageArguments]; williamr@2: p[0] = static_cast(const_cast(&aParam0)); williamr@2: p[1] = NULL; williamr@2: p[2] = NULL; williamr@2: p[3] = NULL; williamr@2: RSessionBase::SendReceive(aFunction, p, aStatus); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: inline void RMmfSessionBase::SendReceive(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1, TRequestStatus& aStatus) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1), aStatus); williamr@2: #else williamr@2: TAny* p[KMaxMessageArguments]; williamr@2: p[0] = static_cast(const_cast(&aParam0)); williamr@2: p[1] = static_cast(const_cast(&aParam1)); williamr@2: p[2] = NULL; williamr@2: p[3] = NULL; williamr@2: RSessionBase::SendReceive(aFunction, p, aStatus); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: inline void RMmfSessionBase::SendReceive(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1, const TDesC8& aParam2, TRequestStatus& aStatus) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1,&aParam2), aStatus); williamr@2: #else williamr@2: TAny* p[KMaxMessageArguments]; williamr@2: p[0] = static_cast(const_cast(&aParam0)); williamr@2: p[1] = static_cast(const_cast(&aParam1)); williamr@2: p[2] = static_cast(const_cast(&aParam2)); williamr@2: p[3] = NULL; williamr@2: RSessionBase::SendReceive(aFunction, p, aStatus); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: // Descriptor Send&Result calls williamr@2: williamr@2: inline TInt RMmfSessionBase::SendReceiveResult(TInt aFunction, TDes8& aResult) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: return RSessionBase::SendReceive(aFunction, TIpcArgs(&aResult)); williamr@2: #else williamr@2: TAny* p[KMaxMessageArguments]; williamr@2: p[0] = static_cast(&aResult); williamr@2: p[1] = NULL; williamr@2: p[2] = NULL; williamr@2: p[3] = NULL; williamr@2: return RSessionBase::SendReceive(aFunction, p); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: inline TInt RMmfSessionBase::SendReceiveResult(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1, TDes8& aResult) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: return RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1,&aResult)); williamr@2: #else williamr@2: TAny* p[KMaxMessageArguments]; williamr@2: p[0] = static_cast(const_cast(&aParam0)); williamr@2: p[1] = static_cast(const_cast(&aParam1)); williamr@2: p[2] = static_cast(&aResult); williamr@2: p[3] = NULL; williamr@2: return RSessionBase::SendReceive(aFunction, p); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: inline TInt RMmfSessionBase::SendReceiveResult(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1, const TDesC8& aParam2, TDes8& aResult) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: return RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1,&aParam2,&aResult)); williamr@2: #else williamr@2: TAny* p[KMaxMessageArguments]; williamr@2: p[0] = static_cast(const_cast(&aParam0)); williamr@2: p[1] = static_cast(const_cast(&aParam1)); williamr@2: p[2] = static_cast(const_cast(&aParam2)); williamr@2: p[3] = static_cast(&aResult); williamr@2: return RSessionBase::SendReceive(aFunction, p); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: inline void RMmfSessionBase::SendReceiveResult(TInt aFunction, TDes8& aResult, TRequestStatus& aStatus) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: RSessionBase::SendReceive(aFunction, TIpcArgs(&aResult), aStatus); williamr@2: #else williamr@2: TAny* p[KMaxMessageArguments]; williamr@2: p[0] = static_cast(&aResult); williamr@2: p[1] = NULL; williamr@2: p[2] = NULL; williamr@2: p[3] = NULL; williamr@2: RSessionBase::SendReceive(aFunction, p, aStatus); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: inline void RMmfSessionBase::SendReceiveResult(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1, TDes8& aResult, TRequestStatus& aStatus) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1,&aResult), aStatus); williamr@2: #else williamr@2: TAny* p[KMaxMessageArguments]; williamr@2: p[0] = static_cast(const_cast(&aParam0)); williamr@2: p[1] = static_cast(const_cast(&aParam1)); williamr@2: p[2] = static_cast(&aResult); williamr@2: p[3] = NULL; williamr@2: RSessionBase::SendReceive(aFunction, p, aStatus); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: inline void RMmfSessionBase::SendReceiveResult(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1, const TDesC8& aParam2, TDes8& aResult, TRequestStatus& aStatus) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1,&aParam2,&aResult), aStatus); williamr@2: #else williamr@2: TAny* p[KMaxMessageArguments]; williamr@2: p[0] = static_cast(const_cast(&aParam0)); williamr@2: p[1] = static_cast(const_cast(&aParam1)); williamr@2: p[2] = static_cast(const_cast(&aParam2)); williamr@2: p[3] = static_cast(&aResult); williamr@2: RSessionBase::SendReceive(aFunction, p, aStatus); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: //TDesC versions williamr@2: williamr@2: inline void RMmfSessionBase::SendReceive(TInt aFunction, const TDesC& aParam0, TRequestStatus& aStatus) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0), aStatus); williamr@2: #else williamr@2: TAny* p[KMaxMessageArguments]; williamr@2: p[0] = static_cast(const_cast(&aParam0)); williamr@2: p[1] = NULL; williamr@2: p[2] = NULL; williamr@2: p[3] = NULL; williamr@2: RSessionBase::SendReceive(aFunction, p, aStatus); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: inline TInt RMmfSessionBase::SendReceive(TInt aFunction, const TDesC& aParam0) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: return RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0)); williamr@2: #else williamr@2: TAny* p[KMaxMessageArguments]; williamr@2: p[0] = static_cast(const_cast(&aParam0)); williamr@2: p[1] = NULL; williamr@2: p[2] = NULL; williamr@2: p[3] = NULL; williamr@2: return RSessionBase::SendReceive(aFunction, p); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: inline TInt RMmfSessionBase::SendReceiveResult(TInt aFunction, const TDesC8& aParam0, const TDesC8& aParam1, TDes& aResult) const williamr@2: { williamr@2: #ifdef __MMF_USE_IPC_V2__ williamr@2: return RSessionBase::SendReceive(aFunction, TIpcArgs(&aParam0,&aParam1,&aResult)); williamr@2: #else williamr@2: TAny* p[KMaxMessageArguments]; williamr@2: p[0] = static_cast(const_cast(&aParam0)); williamr@2: p[1] = static_cast(const_cast(&aParam1)); williamr@2: p[2] = static_cast(&aResult); williamr@2: p[3] = NULL; williamr@2: return RSessionBase::SendReceive(aFunction, p); williamr@2: #endif //__MMF_USE_IPC_V2__ williamr@2: } williamr@2: williamr@2: // assuming IPC_V2 williamr@2: inline TInt RMmfSessionBase::SendReceive(TInt aFunction, TInt aParam0, const TDesC8& aParam1, const TDesC8& aParam2) const williamr@2: { williamr@2: return RSessionBase::SendReceive(aFunction, TIpcArgs(aParam0, &aParam1, &aParam2)); williamr@2: } williamr@2: williamr@2: inline TInt RMmfSessionBase::SendReceiveResult(TInt aFunction, TInt aParam0, const TDesC8& aParam1, const TDesC8& aParam2, TDes8& aResult) const williamr@2: { williamr@2: return RSessionBase::SendReceive(aFunction, TIpcArgs(aParam0, &aParam1, &aParam2, &aResult)); williamr@2: } williamr@2: williamr@2: inline void RMmfSessionBase::SendReceive(TInt aFunction, TInt aParam0, const TDesC8& aParam1, const TDesC8& aParam2, TRequestStatus& aStatus) const williamr@2: { williamr@2: return RSessionBase::SendReceive(aFunction, TIpcArgs(aParam0, &aParam1, &aParam2), aStatus); williamr@2: } williamr@2: williamr@2: inline void RMmfSessionBase::SendReceiveResult(TInt aFunction, TInt aParam0, const TDesC8& aParam1, const TDesC8& aParam2, TDes8& aResult, TRequestStatus& aStatus) const williamr@2: { williamr@2: return RSessionBase::SendReceive(aFunction, TIpcArgs(aParam0, &aParam1, &aParam2, &aResult), aStatus); williamr@2: }