• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# ICameraHost
2
3## 概述
4
5定义Camera设备功能操作。
6
7打开并执行Camera设备、通知设备状态更改信息、设置回调接口等相关操作。
8
9**起始版本:** 4.1
10
11**相关模块:**[Camera](_camera_v12.md)
12
13## 汇总
14
15### Public 成员函数
16
17| 名称 | 描述 |
18| -------- | -------- |
19| [OpenCameraV1_2](#opencamerav1_2) ([in] String cameraId, [in] ICameraDeviceCallback callbackObj, [out] [ICameraDevice](interface_i_camera_device_v12.md) device) | 打开Camera设备。 |
20| [NotifyDeviceStateChangeInfo](#notifydevicestatechangeinfo) ([in] int notifyType, [in] int deviceState) | 将设备状态更改通知设备供应商。 |
21| [SetCallbackV1_2](#setcallbackv1_2) ([in] [ICameraHostCallback](interface_i_camera_host_callback_v12.md) callbackObj) | 设置ICameraHost回调接口,回调函数参考[ICameraHostCallback](interface_i_camera_host_callback_v12.md)。 |
22| [SetFlashlightV1_2](#setflashlightv1_2) ([in] float level) | 打开或关闭闪光灯。 |
23| [PreCameraSwitch](#precameraswitch) ([in] String cameraId) | 切换镜头时预热相机设备。 |
24| [PrelaunchWithOpMode](#prelaunchwithopmode) ([in] struct PrelaunchConfig config, [in] int operationMode) | 预启动Camera设备。 |
25
26## 成员函数说明
27
28### NotifyDeviceStateChangeInfo()
29
30```
31ICameraHost::NotifyDeviceStateChangeInfo ([in] int notifyType, [in] int deviceState)
32```
33
34**描述**
35
36将设备状态更改通知设备供应商。
37
38通过调用此函数,可以通知设备供应商设备状态更改。
39
40**起始版本:** 4.1
41
42**参数:**
43
44| 名称 | 描述 |
45| -------- | -------- |
46| notifyType | 通知的类型。<br/>1 跌落状态。<br/>2 折叠状态。 |
47| deviceState | 设备的状态。<br/>0 为止。<br/>1 展开态。<br/>2 折叠态。<br/>3 半折叠态。<br/>1008 滑落态。<br/>2-3 参数组合半折叠不做处理。 |
48
49**返回:**
50
51NO_ERROR 表示执行成功。
52
53其他值表示执行失败,具体错误码查看[CamRetCode](_camera_v12.md#camretcode)。
54
55### OpenCameraV1_2()
56
57```
58ICameraHost::OpenCameraV1_2 ([in] String cameraId, [in] ICameraDeviceCallback callbackObj, [out] ICameraDevice device)
59```
60
61**描述**
62
63打开Camera设备。
64
65打开指定的Camera设备,通过此接口可以获取到ICameraDevice对象,通过ICameraDevice对象可以操作具体的Camera设备。
66
67**起始版本:** 4.1
68
69**参数:**
70
71| 名称 | 描述 |
72| -------- | -------- |
73| cameraId | 需要打开的Camera设备ID,可通过[GetCameraIds](interface_i_camera_host_v10.md#getcameraids)接口获取当前已有Camera设备列表。 |
74| callbackObj | Camera设备相关的回调函数,具体参见[ICameraDeviceCallback](interface_i_camera_device_callback_v10.md)。 |
75| device | 返回当前要打开的Camera设备ID对应的ICameraDevice对象。 |
76
77**返回:**
78
79NO_ERROR 表示执行成功。
80
81其他值表示执行失败,具体错误码查看[CamRetCode](_camera_v12.md#camretcode)。
82
83
84### PreCameraSwitch()
85
86```
87ICameraHost::PreCameraSwitch ([in] String cameraId)
88```
89
90**描述**
91
92切换镜头时预热相机设备。
93
94当用户触摸摄像头应用镜头开关图标时可以调用此功能以加速启动的相机设备,由cameraId指定。
95
96**起始版本:** 4.1
97
98**参数:**
99
100| 名称 | 描述 |
101| -------- | -------- |
102| cameraId | 指示相机设备的ID,可以通过调用 [GetCameraIds](interface_i_camera_host_v10.md#getcameraids)获取。 |
103
104**返回:**
105
106NO_ERROR 表示执行成功。
107
108其他值表示执行失败,具体错误码查看[CamRetCode](_camera_v12.md#camretcode)。
109
110### PrelaunchWithOpMode()
111
112```
113ICameraHost::PrelaunchWithOpMode ([in] struct PrelaunchConfig config, [in] int operationMode)
114```
115
116**描述**
117
118预启动Camera设备。
119
120当用户触摸摄像头应用图标时可以调用此函数以加速启动的相机设备,由cameraId指定。
121
122**起始版本:** 4.1
123
124**参数:**
125
126| 名称 | 描述 |
127| -------- | -------- |
128| config | 预启动配置。 详细可查看[PrelaunchConfig](_prelaunch_config_v11.md)。 |
129| operationMode | 流操作模式。 详细可查看[OperationMode_V1_2](_camera_v12.md#operationmode_v1_2)。 |
130
131**返回:**
132
133NO_ERROR 表示执行成功。
134
135其他值表示执行失败,具体错误码查看[CamRetCode](_camera_v12.md#camretcode)。
136
137
138### SetCallbackV1_2()
139
140```
141ICameraHost::SetCallbackV1_2 ([in] ICameraHostCallback callbackObj)
142```
143
144**描述**
145
146设置ICameraHost回调接口,回调函数参考[ICameraHostCallback](interface_i_camera_host_callback_v12.md)。
147
148**起始版本:** 4.1
149
150**参数:**
151
152| 名称 | 描述 |
153| -------- | -------- |
154| callbackObj | 要设置的回调函数。 |
155
156**返回:**
157
158NO_ERROR 表示执行成功。
159
160其他值表示执行失败,具体错误码查看[CamRetCode](_camera_v12.md#camretcode)。
161
162
163### SetFlashlightV1_2()
164
165```
166ICameraHost::SetFlashlightV1_2 ([in] float level)
167```
168
169**描述**
170
171打开或关闭闪光灯。
172
173**起始版本:** 4.1
174
175**参数:**
176
177| 名称 | 描述 |
178| -------- | -------- |
179| level | 指定是打开还是关闭闪光灯。值 1 表示打开闪光灯,0 表示相反。 |
180
181**返回:**
182
183NO_ERROR 表示执行成功。
184
185其他值表示执行失败,具体错误码查看[CamRetCode](_camera_v12.md#camretcode)。
186