First public contribution.
1 // Copyright (c) 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 the License "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 // Implements a Session of a Symbian OS server for the RUsbMassStorage API
25 #ifndef CUSBOTGSESSION_H
26 #define CUSBOTGSESSION_H
29 _LIT(KUsbOtgClientPncCat, "UsbOtgServer");
33 enum TMsManPanicClient
35 EUsbOtgPanicIllegalIPC
39 class CUsbOtgSession : public CSession2
42 static CUsbOtgSession* NewL();
43 virtual void CreateL();
55 void ServiceL(const RMessage2& aMessage);
56 void DispatchMessageL(const RMessage2& aMessage);
60 void DeviceInsertedL(const RMessage2& aMessage);
61 void NotifyChange(const RMessage2& aMessage);
62 void NotifyChangeCancel();
67 void PanicClient(const RMessage2& aMessage,TInt aPanic) const;
70 CUsbOtgServer& Server();
74 inline CUsbOtgServer& CUsbOtgSession::Server()
76 return *static_cast<CUsbOtgServer*>(const_cast<CServer2*>(CSession2::Server()));
80 #endif // CUSBOTGSESSION_H