Release 4.0.0-preview1-00051
[platform/core/csapi/tizenfx.git] / src / Tizen.Multimedia.Camera / Interop / Interop.CameraCapabilities.cs
1 /*
2  * Copyright (c) 2016 Samsung Electronics Co., Ltd 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 using System;
18 using System.Runtime.InteropServices;
19 using Tizen.Multimedia;
20
21 internal static partial class Interop
22 {
23     internal static partial class CameraCapabilities
24     {
25         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
26         internal delegate bool PreviewResolutionCallback(int Width, int Height, IntPtr userData);
27
28         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
29         internal delegate bool CaptureResolutionCallback(int Width, int Height, IntPtr userData);
30
31         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
32         internal delegate bool CaptureFormatCallback(CameraPixelFormat format, IntPtr userData);
33
34         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
35         internal delegate bool PreviewFormatCallback(CameraPixelFormat format, IntPtr userData);
36
37         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
38         internal delegate bool FpsCallback(CameraFps fps, IntPtr userData);
39
40         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
41         internal delegate bool FpsByResolutionCallback(CameraFps fps, IntPtr userData);
42
43         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
44         internal delegate bool AfModeCallback(CameraAutoFocusMode mode, IntPtr userData);
45
46         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
47         internal delegate bool ExposureModeCallback(CameraExposureMode mode, IntPtr userData);
48
49         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
50         internal delegate bool IsoCallback(CameraIsoLevel iso, IntPtr userData);
51
52         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
53         internal delegate bool TheaterModeCallback(CameraTheaterMode mode, IntPtr userData);
54
55         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
56         internal delegate bool WhitebalanceCallback(CameraWhiteBalance whitebalance, IntPtr userData);
57
58         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
59         internal delegate bool EffectCallback(CameraEffectMode effect, IntPtr userData);
60
61         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
62         internal delegate bool SceneModeCallback(CameraSceneMode mode, IntPtr userData);
63
64         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
65         internal delegate bool FlashModeCallback(CameraFlashMode mode, IntPtr userData);
66
67         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
68         internal delegate bool StreamRotationCallback(Rotation rotation, IntPtr userData);
69
70         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
71         internal delegate bool StreamFlipCallback(Flips flip, IntPtr userData);
72
73         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
74         internal delegate bool PtzTypeCallback(CameraPtzType type, IntPtr userData);
75
76
77         [DllImport(Libraries.Camera, EntryPoint = "camera_is_supported_continuous_capture")]
78         [return: MarshalAs(UnmanagedType.I1)]
79         internal static extern bool IsContinuousCaptureSupported(IntPtr handle);
80
81         [DllImport(Libraries.Camera, EntryPoint = "camera_is_supported_face_detection")]
82         [return: MarshalAs(UnmanagedType.I1)]
83         internal static extern bool IsFaceDetectionSupported(IntPtr handle);
84
85         [DllImport(Libraries.Camera, EntryPoint = "camera_is_supported_zero_shutter_lag")]
86         [return: MarshalAs(UnmanagedType.I1)]
87         internal static extern bool IsZeroShutterLagSupported(IntPtr handle);
88
89         [DllImport(Libraries.Camera, EntryPoint = "camera_is_supported_media_packet_preview_cb")]
90         [return: MarshalAs(UnmanagedType.I1)]
91         internal static extern bool IsMediaPacketPreviewCallbackSupported(IntPtr handle);
92
93         [DllImport(Libraries.Camera, EntryPoint = "camera_attr_is_supported_hdr_capture")]
94         [return: MarshalAs(UnmanagedType.I1)]
95         internal static extern bool IsHdrCaptureSupported(IntPtr handle);
96
97         [DllImport(Libraries.Camera, EntryPoint = "camera_attr_is_supported_anti_shake")]
98         [return: MarshalAs(UnmanagedType.I1)]
99         internal static extern bool IsAntiShakeSupported(IntPtr handle);
100
101         [DllImport(Libraries.Camera, EntryPoint = "camera_attr_is_supported_video_stabilization")]
102         [return: MarshalAs(UnmanagedType.I1)]
103         internal static extern bool IsVideoStabilizationSupported(IntPtr handle);
104
105         [DllImport(Libraries.Camera, EntryPoint = "camera_attr_is_supported_auto_contrast")]
106         [return: MarshalAs(UnmanagedType.I1)]
107         internal static extern bool IsAutoContrastSupported(IntPtr handle);
108
109         [DllImport(Libraries.Camera, EntryPoint = "camera_foreach_supported_preview_resolution")]
110         internal static extern CameraError SupportedPreviewResolutions(IntPtr handle, PreviewResolutionCallback callback, IntPtr userData);
111
112         [DllImport(Libraries.Camera, EntryPoint = "camera_foreach_supported_capture_resolution")]
113         internal static extern CameraError SupportedCaptureResolutions(IntPtr handle, CaptureResolutionCallback callback, IntPtr userData);
114
115         [DllImport(Libraries.Camera, EntryPoint = "camera_foreach_supported_capture_format")]
116         internal static extern CameraError SupportedCapturePixelFormats(IntPtr handle, CaptureFormatCallback callback, IntPtr userData);
117
118         [DllImport(Libraries.Camera, EntryPoint = "camera_foreach_supported_preview_format")]
119         internal static extern CameraError SupportedPreviewPixelFormats(IntPtr handle, PreviewFormatCallback callback, IntPtr userData);
120
121         [DllImport(Libraries.Camera, EntryPoint = "camera_attr_foreach_supported_fps")]
122         internal static extern CameraError SupportedPreviewFps(IntPtr handle, FpsCallback callback, IntPtr userData);
123
124         [DllImport(Libraries.Camera, EntryPoint = "camera_attr_foreach_supported_fps_by_resolution")]
125         internal static extern CameraError SupportedPreviewFpsByResolution(IntPtr handle, int width, int height, FpsByResolutionCallback callback, IntPtr userData);
126
127         [DllImport(Libraries.Camera, EntryPoint = "camera_attr_foreach_supported_af_mode")]
128         internal static extern CameraError SupportedAutoFocusModes(IntPtr handle, AfModeCallback callback, IntPtr userData);
129
130         [DllImport(Libraries.Camera, EntryPoint = "camera_attr_foreach_supported_exposure_mode")]
131         internal static extern CameraError SupportedExposureModes(IntPtr handle, ExposureModeCallback callback, IntPtr userData);
132
133         [DllImport(Libraries.Camera, EntryPoint = "camera_attr_foreach_supported_iso")]
134         internal static extern CameraError SupportedIso(IntPtr handle, IsoCallback callback, IntPtr userData);
135
136         [DllImport(Libraries.Camera, EntryPoint = "camera_attr_foreach_supported_theater_mode")]
137         internal static extern CameraError SupportedTheaterModes(IntPtr handle, TheaterModeCallback callback, IntPtr userData);
138
139         [DllImport(Libraries.Camera, EntryPoint = "camera_attr_foreach_supported_whitebalance")]
140         internal static extern CameraError SupportedWhitebalance(IntPtr handle, WhitebalanceCallback callback, IntPtr userData);
141
142         [DllImport(Libraries.Camera, EntryPoint = "camera_attr_foreach_supported_effect")]
143         internal static extern CameraError SupportedEffects(IntPtr handle, EffectCallback callback, IntPtr userData);
144
145         [DllImport(Libraries.Camera, EntryPoint = "camera_attr_foreach_supported_scene_mode")]
146         internal static extern CameraError SupportedSceneModes(IntPtr handle, SceneModeCallback callback, IntPtr userData);
147
148         [DllImport(Libraries.Camera, EntryPoint = "camera_attr_foreach_supported_flash_mode")]
149         internal static extern CameraError SupportedFlashModes(IntPtr handle, FlashModeCallback callback, IntPtr userData);
150
151         [DllImport(Libraries.Camera, EntryPoint = "camera_attr_foreach_supported_stream_rotation")]
152         internal static extern CameraError SupportedStreamRotations(IntPtr handle, StreamRotationCallback callback, IntPtr userData);
153
154         [DllImport(Libraries.Camera, EntryPoint = "camera_attr_foreach_supported_stream_flip")]
155         internal static extern CameraError SupportedStreamFlips(IntPtr handle, StreamFlipCallback callback, IntPtr userData);
156
157         [DllImport(Libraries.Camera, EntryPoint = "camera_attr_foreach_supported_ptz_type")]
158         internal static extern CameraError SupportedPtzTypes(IntPtr handle, PtzTypeCallback callback, IntPtr userData);
159     }
160 }