• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2 ** Copyright (c) 2011 Code Aurora Forum. All rights reserved.
3 **
4 ** Licensed under the Apache License, Version 2.0 (the "License");
5 ** you may not use this file except in compliance with the License.
6 ** You may obtain a copy of the License at
7 **
8 **     http://www.apache.org/licenses/LICENSE-2.0
9 **
10 ** Unless required by applicable law or agreed to in writing, software
11 ** distributed under the License is distributed on an "AS IS" BASIS,
12 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 ** See the License for the specific language governing permissions and
14 ** limitations under the License.
15 */
16 
17 #ifndef ANDROID_HARDWARE_QUALCOMM_CAMERA_H
18 #define ANDROID_HARDWARE_QUALCOMM_CAMERA_H
19 
20 
21 //#include <camera/CameraHardwareInterface.h>
22 
23 extern "C" {
24 #include <hardware/camera.h>
25 
26   int get_number_of_cameras();
27   int get_camera_info(int camera_id, struct camera_info *info);
28 
29   int camera_device_open(const struct hw_module_t* module, const char* id,
30           struct hw_device_t** device);
31 
32   hw_device_t * open_camera_device(int cameraId);
33 
34   int close_camera_device( hw_device_t *);
35 
36 namespace android {
37   int set_preview_window(struct camera_device *,
38           struct preview_stream_ops *window);
39   void set_callbacks(struct camera_device *,
40           camera_notify_callback notify_cb,
41           camera_data_callback data_cb,
42           camera_data_timestamp_callback data_cb_timestamp,
43           camera_request_memory get_memory,
44           void *user);
45 
46   void enable_msg_type(struct camera_device *, int32_t msg_type);
47 
48   void disable_msg_type(struct camera_device *, int32_t msg_type);
49   int msg_type_enabled(struct camera_device *, int32_t msg_type);
50 
51   int start_preview(struct camera_device *);
52 
53   void stop_preview(struct camera_device *);
54 
55   int preview_enabled(struct camera_device *);
56   int store_meta_data_in_buffers(struct camera_device *, int enable);
57 
58   int start_recording(struct camera_device *);
59 
60   void stop_recording(struct camera_device *);
61 
62   int recording_enabled(struct camera_device *);
63 
64   void release_recording_frame(struct camera_device *,
65                   const void *opaque);
66 
67   int auto_focus(struct camera_device *);
68 
69   int cancel_auto_focus(struct camera_device *);
70 
71   int take_picture(struct camera_device *);
72 
73   int cancel_picture(struct camera_device *);
74 
75   int set_parameters(struct camera_device *, const char *parms);
76 
77   char* get_parameters(struct camera_device *);
78 
79   void put_parameters(struct camera_device *, char *);
80 
81   int send_command(struct camera_device *,
82               int32_t cmd, int32_t arg1, int32_t arg2);
83 
84   void release(struct camera_device *);
85 
86   int dump(struct camera_device *, int fd);
87 
88 
89 
90 }; // namespace android
91 
92 } //extern "C"
93 
94 #endif
95 
96