1# IUsbfnMtpInterface 2 3 4## 概述 5 6定义在usb上执行基本操作的函数。 7 8操作包括获取usb信息、订阅或取消订阅usb数据、启用或禁用usb、设置usb数据报告模式以及设置准确性和测量范围等usb选项。 9 10**起始版本:** 4.0 11 12**相关模块:**[HdiUsbfnMtp](_hdi_usbfn_mtp.md) 13 14 15## 汇总 16 17 18### Public 成员函数 19 20| 名称 | 描述 | 21| -------- | -------- | 22| [Start](#start) () | 打开USB MTP/PTP驱动程序。 | 23| [Stop](#stop) () | 关闭USB MTP/PTP驱动程序。 | 24| [Read](#read) ([out] unsigned char[] data) | 通过USB MTP/PTP驱动程序读取数据。 | 25| [Write](#write) ([in] unsigned char[] data) | 通过USB MTP/PTP驱动程序写入数据。 | 26| [ReceiveFile](#receivefile) ([in] struct [UsbFnMtpFileSlice](_usb_fn_mtp_file_slice.md) mfs) | 通过USB MTP/PTP驱动程序接收文件。 代理处理文件管理,包括fopen/fclose/feek/fread/fwrite和偏移量信息,Stub负责数据处理。 | 27| [SendFile](#sendfile) ([in] struct [UsbFnMtpFileSlice](_usb_fn_mtp_file_slice.md) mfs) | 通过USB MTP/PTP驱动程序发送文件。 代理处理文件管理,包括fopen/fclose/feek/fread/fwrite和偏移量信息,Stub负责数据处理。 | 28| [SendEvent](#sendevent) ([in] unsigned char[] eventData) | 通过USB MTP/PTP驱动程序发送事件数据。 | 29| [Init](#init) () | 初始化USB MTP/PTP驱动程序。由usb_host使用。 | 30| [Release](#release) () | 释放USB MTP/PTP驱动程序。由usb_host使用。 | 31 32 33## 成员函数说明 34 35 36### Init() 37 38``` 39IUsbfnMtpInterface::Init () 40``` 41 42**描述** 43 44 45初始化USB MTP/PTP驱动程序。由usb_host使用。 46 47**起始版本:** 4.0 48 49**返回:** 50 510 表示操作成功。 52 53非零值 表示操作失败。 54 55 56### Read() 57 58``` 59IUsbfnMtpInterface::Read ([out] unsigned char[] data) 60``` 61 62**描述** 63 64 65通过USB MTP/PTP驱动程序读取数据。 66 67**起始版本:** 4.0 68 69**参数:** 70 71| 名称 | 描述 | 72| -------- | -------- | 73| data | 表示USB MTP/PTP驱动程序读取的数据。 | 74 75**返回:** 76 77如果操作失败,则返回读取的字节数、-1或其他负值。 78 79 80### ReceiveFile() 81 82``` 83IUsbfnMtpInterface::ReceiveFile ([in] struct UsbFnMtpFileSlice mfs) 84``` 85 86**描述** 87 88 89通过USB MTP/PTP驱动程序接收文件。 代理处理文件管理,包括fopen/fclose/feek/fread/fwrite和偏移量信息,Stub负责数据处理。 90 91**起始版本:** 4.0 92 93**参数:** 94 95| 名称 | 描述 | 96| -------- | -------- | 97| mfs | 指示mtp文件切片信息。 | 98 99**返回:** 100 101如果接收成功,则返回**0**;如果操作失败,则返回**-1**或其他负值。 102 103 104### Release() 105 106``` 107IUsbfnMtpInterface::Release () 108``` 109 110**描述** 111 112 113释放USB MTP/PTP驱动程序。由usb_host使用。 114 115**起始版本:** 4.0 116 117**返回:** 118 1190 表示操作成功。 120 121非零值 表示操作失败。 122 123 124### SendEvent() 125 126``` 127IUsbfnMtpInterface::SendEvent ([in] unsigned char[] eventData) 128``` 129 130**描述** 131 132 133通过USB MTP/PTP驱动程序发送事件数据。 134 135**起始版本:** 4.0 136 137**参数:** 138 139| 名称 | 描述 | 140| -------- | -------- | 141| data | 指示事件数据写入USB MTP/PTP驱动程序。 | 142 143**返回:** 144 145如果接收成功,则返回**0**;如果操作失败,则返回**-1**或其他负值。 146 147 148### SendFile() 149 150``` 151IUsbfnMtpInterface::SendFile ([in] struct UsbFnMtpFileSlice mfs) 152``` 153 154**描述** 155 156 157通过USB MTP/PTP驱动程序发送文件。 代理处理文件管理,包括fopen/fclose/feek/fread/fwrite和偏移量信息,Stub负责数据处理。 158 159**起始版本:** 4.0 160 161**参数:** 162 163| 名称 | 描述 | 164| -------- | -------- | 165| mfs | 指示mtp文件范围信息,使用的是数据包标头。 | 166 167**返回:** 168 169如果接收成功,则返回**0**;如果操作失败,则返回**-1**或其他负值。 170 171 172### Start() 173 174``` 175IUsbfnMtpInterface::Start () 176``` 177 178**描述** 179 180 181打开USB MTP/PTP驱动程序。 182 183**起始版本:** 4.0 184 185**返回:** 186 1870 表示操作成功。 188 189非零值 表示操作失败。 190 191 192### Stop() 193 194``` 195IUsbfnMtpInterface::Stop () 196``` 197 198**描述** 199 200 201关闭USB MTP/PTP驱动程序。 202 203**起始版本:** 4.0 204 205**返回:** 206 2070 表示操作成功。 208 209非零值 表示操作失败。 210 211 212### Write() 213 214``` 215IUsbfnMtpInterface::Write ([in] unsigned char[] data) 216``` 217 218**描述** 219 220 221通过USB MTP/PTP驱动程序写入数据。 222 223**起始版本:** 4.0 224 225**参数:** 226 227| 名称 | 描述 | 228| -------- | -------- | 229| 通过USB | MTP/PTP驱动程序写入数据。data表示数据写入USB MTP/PT驱动程序。 | 230 231**返回:** 232 233如果操作失败,则返回写入的字节数、-1或其他负值。 234