1# ICameraDevice 2 3 4## 概述 5 6定义Camera设备基本的操作。 7 8设置流回调接口、更新控制参数、执行metadata相关操作。 9 10**起始版本:** 3.2 11 12**相关模块:**[Camera](_camera_v10.md) 13 14 15## 汇总 16 17 18### Public 成员函数 19 20| 名称 | 描述 | 21| -------- | -------- | 22| [GetStreamOperator](#getstreamoperator) ([in] [IStreamOperatorCallback](interface_i_stream_operator_callback_v10.md) callbackObj, [out] [IStreamOperator](interface_i_stream_operator_v10.md) streamOperator) | 获取流操作句柄。 | 23| [UpdateSettings](#updatesettings) ([in] unsigned char[] settings) | 更新设备控制参数。 | 24| [SetResultMode](#setresultmode) ([in] enum [ResultCallbackMode](_camera_v10.md#resultcallbackmode) mode) | 设置metadata上报模式,逐帧上报还是设备状态变化时上报。 | 25| [GetEnabledResults](#getenabledresults) ([out] int[] results) | 查询使能的metadata。 | 26| [EnableResult](#enableresult) ([in] int[] results) | 打开metadata上报开关。 | 27| [DisableResult](#disableresult) ([in] int[] results) | 关闭metadata上报开关。 | 28| [Close](#close) () | 关闭当前Camera设备。 | 29 30 31## 成员函数说明 32 33 34### Close() 35 36``` 37ICameraDevice::Close () 38``` 39 40**描述** 41 42关闭当前Camera设备。 43 44**起始版本:** 3.2 45 46**参见:** 47 48OpenCamera 49 50 51### DisableResult() 52 53``` 54ICameraDevice::DisableResult ([in] int[] results) 55``` 56 57**描述** 58 59关闭metadata上报开关。 60 61屏蔽之后,相应的**OnResult**不再上报,需[EnableResult](#enableresult)使能之后才上报。 62 63**起始版本:** 3.2 64 65**参数:** 66 67| 名称 | 描述 | 68| -------- | -------- | 69| results | 需要关闭上报开关的metadata。 | 70 71**返回:** 72 73NO_ERROR 表示执行成功。 74 75其他值表示执行失败,具体错误码查看[CamRetCode](_camera_v10.md#camretcode)。 76 77**参见:** 78 79[EnableResult](#enableresult) 80 81 82### EnableResult() 83 84``` 85ICameraDevice::EnableResult ([in] int[] results) 86``` 87 88**描述** 89 90打开metadata上报开关。 91 92**OnResult**只上报此接口使能后的metadata。 93 94**起始版本:** 3.2 95 96**参数:** 97 98| 名称 | 描述 | 99| -------- | -------- | 100| results | 需要打开上报开关的多个metadata。 | 101 102**返回:** 103 104NO_ERROR 表示执行成功。 105 106其他值表示执行失败,具体错误码查看[CamRetCode](_camera_v10.md#camretcode)。 107 108**参见:** 109 110[DisableResult](#disableresult) 111 112 113### GetEnabledResults() 114 115``` 116ICameraDevice::GetEnabledResults ([out] int[] results) 117``` 118 119**描述** 120 121查询使能的metadata。 122 123[EnableResult](#enableresult)使能需要上报的metadata之后,可通过此接口查询使能的metadata。 124 125**起始版本:** 3.2 126 127**参数:** 128 129| 名称 | 描述 | 130| -------- | -------- | 131| results | 所有使能的metadata的ID数组。 | 132 133**返回:** 134 135NO_ERROR 表示执行成功。 136 137其他值表示执行失败,具体错误码查看[CamRetCode](_camera_v10.md#camretcode)。 138 139 140### GetStreamOperator() 141 142``` 143ICameraDevice::GetStreamOperator ([in] IStreamOperatorCallback callbackObj, [out] IStreamOperator streamOperator ) 144``` 145 146**描述** 147 148获取流操作句柄。 149 150**起始版本:** 3.2 151 152**参数:** 153 154| 名称 | 描述 | 155| -------- | -------- | 156| callbackObj | 设置流回调接口,详细可查看[IStreamOperatorCallback](interface_i_stream_operator_callback_v10.md), 用于上报捕获开始[OnCaptureStarted](interface_i_stream_operator_callback_v10.md#oncapturestarted),捕获结束[OnCaptureEnded](interface_i_stream_operator_callback_v10.md#oncaptureended), 捕获错误等信息[OnCaptureError](interface_i_stream_operator_callback_v10.md#oncaptureerror)。 | 157| streamOperator | 返回流操作句柄。 | 158 159**返回:** 160 161NO_ERROR 表示执行成功。 162 163其他值表示执行失败,具体错误码查看[CamRetCode](_camera_v10.md#camretcode)。 164 165 166### SetResultMode() 167 168``` 169ICameraDevice::SetResultMode ([in] enum ResultCallbackMode mode) 170``` 171 172**描述** 173 174设置metadata上报模式,逐帧上报还是设备状态变化时上报。 175 176**起始版本:** 3.2 177 178**参数:** 179 180| 名称 | 描述 | 181| -------- | -------- | 182| mode | metadata的上报模式,逐帧上报或者设备状态变化时上报,查看[ResultCallbackMode](_camera_v10.md#resultcallbackmode)。 | 183 184**返回:** 185 186NO_ERROR 表示执行成功。 187 188其他值表示执行失败,具体错误码查看[CamRetCode](_camera_v10.md#camretcode)。 189 190 191### UpdateSettings() 192 193``` 194ICameraDevice::UpdateSettings ([in] unsigned char[] settings) 195``` 196 197**描述** 198 199更新设备控制参数。 200 201**起始版本:** 3.2 202 203**参数:** 204 205| 名称 | 描述 | 206| -------- | -------- | 207| settings | Camera设置参数,包括sensor帧率,3A相关参数等。 | 208 209**返回:** 210 211NO_ERROR 表示执行成功。 212 213其他值表示执行失败,具体错误码查看[CamRetCode](_camera_v10.md#camretcode)。 214