diff -r 000000000000 -r 1e05558e2206 usbclasses/usbphoneasmodem/classimplementation/inc/usbmscfile.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/usbclasses/usbphoneasmodem/classimplementation/inc/usbmscfile.h Thu Dec 17 09:14:30 2009 +0200 @@ -0,0 +1,104 @@ +// Copyright (c) 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: +// +// + + +/** + @file + @internalTechnology + RUsbMscFile Client side header + Implements the Symbian OS USB mass storage server RUsbMscFile API + */ + +#ifndef USBMSCFILE_H +#define USBMSCFILE_H + +#include +#include "usbmscfileshared.h" + +class RUsbMscFile : public RSessionBase +/** + The RUsbMscFile class implements the Symbian OS USB mass storage RUsbMscFile API + + @internalTechnology + */ + { +public: + /** + Constructor + + @internalTechnology + */ + inline RUsbMscFile(); + + /** + Extract the version of the server providing the RUsbMscFile API + + @return Version of the server + @internalTechnology + */ + inline TVersion Version() const; + + /** + * Setup a logical unit. Maps a file containing a file system image + * to a logical Mass Storage unit. The parameter aLun is reserved for + * future expansion, currently only one unit with LUN = 0 is supported. + * + * @param aFileName path to the file containing the file system image + * @param aProtocol type of SCSI protocol to use + * @param aLun logical unit number (LUN) to assign + * @return KErrNone on success, otherwise system wide error code + */ + inline TInt SetupLogicalUnit( const TDesC& aFileName, + const TInt aProtocol, + const TInt aLun = 0 ); + /** + StartL the mass storage transport service + + @param aMsConfig mass storage configuration info + @internalTechnology + @return KErrNone on success, otherwise system wide error code + */ + inline TInt Start( const TMassStorageConfig& aMsConfig ); + + /** + Stops mass storage transport service + + @internalTechnology + @return KErrNone on success, otherwise system wide error code + */ + inline TInt Stop(); + + /** + Shut down the Mass Storage server + + @internalTechnology + @return KErrNone on success, otherwise system wide error code + */ + inline TInt Shutdown(); + + /** + Connects to mass storage file server + + @internalTechnology + @return KErrNone on success, otherwise system wide error code + */ + inline TInt Connect(); + + }; + +#include "usbmscfile.inl" + +#endif //USBMSCFILE_H