1 // Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
2 // All rights reserved.
3 // This component and the accompanying materials are made available
4 // under the terms of "Eclipse Public License v1.0"
5 // which accompanies this distribution, and is available
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
14 // include\mmf\common\mmfipc.inl
18 #ifdef __MMF_USE_IPC_V2__
24 inline void CMmfIpcSession::CreateL(const CMmfIpcServer& /*aServer*/)
26 // default does nothing
29 inline void CMmfIpcSession::CreateL()
31 const CMmfIpcServer* server = static_cast<const CMmfIpcServer*>(Server());
32 CreateL(*server); // simulate CSession::CreateL() call
39 inline CMmfIpcServer::CMmfIpcServer(TInt aPriority,TServerType aType):
40 CServer2(aPriority,aType)
44 inline CSession2* CMmfIpcServer::NewSessionL(const TVersion& aVersion, const RMessage2& /*aMessage*/) const
46 return NewSessionL(aVersion);
49 #endif //__MMF_USE_IPC_V2__
55 inline void MmfMessageUtil::ReadL(const RMmfIpcMessage& aMessage, TInt aParam, TDes8& aResult)
57 #ifdef __MMF_USE_IPC_V2__
58 User::LeaveIfError(aMessage.Read(aParam, aResult));
60 // expect aParam to be a literal - so this code should optimise out
62 aMessage.ReadL(aMessage.Ptr0(), aResult);
64 aMessage.ReadL(aMessage.Ptr1(), aResult);
66 aMessage.ReadL(aMessage.Ptr2(), aResult);
68 aMessage.ReadL(aMessage.Ptr3(), aResult);
70 User::Leave(KErrArgument);
71 #endif //__MMF_USE_IPC_V2__
74 inline void MmfMessageUtil::WriteL(const RMmfIpcMessage& aMessage, TInt aParam, const TDesC8& aValue)
76 #ifdef __MMF_USE_IPC_V2__
77 User::LeaveIfError(aMessage.Write(aParam, aValue));
79 // expect aParam to be a literal - so this code should optimise out
81 aMessage.WriteL(aMessage.Ptr0(), aValue);
83 aMessage.WriteL(aMessage.Ptr1(), aValue);
85 aMessage.WriteL(aMessage.Ptr2(), aValue);
87 aMessage.WriteL(aMessage.Ptr3(), aValue);
89 User::Leave(KErrArgument);
90 #endif //__MMF_USE_IPC_V2__
93 inline TInt MmfMessageUtil::Read(const RMmfIpcMessage& aMessage, TInt aParam, TDes8& aResult)
95 #ifdef __MMF_USE_IPC_V2__
96 return aMessage.Read(aParam, aResult);
98 TRAPD(error, ReadL(aMessage, aParam, aResult));
100 #endif //__MMF_USE_IPC_V2__
103 inline TInt MmfMessageUtil::Write(const RMmfIpcMessage& aMessage, TInt aParam, const TDesC8& aValue)
105 #ifdef __MMF_USE_IPC_V2__
106 return aMessage.Write(aParam, aValue);
108 TRAPD(error, WriteL(aMessage, aParam, aValue));
110 #endif //__MMF_USE_IPC_V2__