|
1 // Copyright (c) 2004-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". |
|
7 // |
|
8 // Initial Contributors: |
|
9 // Nokia Corporation - initial contribution. |
|
10 // |
|
11 // Contributors: |
|
12 // |
|
13 // Description: |
|
14 // RUsbMassStorage Client side header |
|
15 // Implements the Symbian OS USB mass storage server RUsbMassStorage API |
|
16 // |
|
17 // WARNING: This file contains some APIs which are internal and are subject |
|
18 // to change without notice. Such APIs should therefore not be used |
|
19 // outside the Kernel and Hardware Services package. |
|
20 // |
|
21 |
|
22 /** |
|
23 @file |
|
24 @internalTechnology |
|
25 */ |
|
26 |
|
27 #ifndef __MASSSTORAGE_H__ |
|
28 #define __MASSSTORAGE_H__ |
|
29 |
|
30 #include <e32std.h> |
|
31 #include <usbmsshared.h> |
|
32 |
|
33 class RUsbMassStorage : public RSessionBase |
|
34 /** |
|
35 The RUsbMassStorage class implements the Symbian OS USB mass storage RUsbMassStorage API |
|
36 |
|
37 @internalTechnology |
|
38 */ |
|
39 { |
|
40 public: |
|
41 /** |
|
42 Constructor |
|
43 |
|
44 @internalTechnology |
|
45 */ |
|
46 inline RUsbMassStorage(); |
|
47 |
|
48 /** |
|
49 Extract the version of the server providing the RUsbMassStorage API |
|
50 |
|
51 @return Version of the server |
|
52 @internalTechnology |
|
53 */ |
|
54 inline TVersion Version() const; |
|
55 |
|
56 /** |
|
57 Start the mass storage transport service |
|
58 |
|
59 @param aMsConfig mass storage configuration info |
|
60 @internalTechnology |
|
61 @return KErrNone on success, otherwise system wide error code |
|
62 */ |
|
63 inline TInt Start(const TMassStorageConfig& aMsConfig); |
|
64 |
|
65 /** |
|
66 Stops mass storage transport service |
|
67 |
|
68 @internalTechnology |
|
69 @return KErrNone on success, otherwise system wide error code |
|
70 */ |
|
71 inline TInt Stop(); |
|
72 |
|
73 /** |
|
74 Shut down the Mass Storage server |
|
75 |
|
76 @internalTechnology |
|
77 @return KErrNone on success, otherwise system wide error code |
|
78 */ |
|
79 inline TInt Shutdown(); |
|
80 |
|
81 /** |
|
82 Connects to mass storage file server |
|
83 |
|
84 @internalTechnology |
|
85 @return KErrNone on success, otherwise system wide error code |
|
86 */ |
|
87 inline TInt Connect(); |
|
88 }; |
|
89 |
|
90 #include <rusbmassstorage.inl> |
|
91 |
|
92 #endif //__MASSSTORAGE_H__ |