Release 4.0.0-preview1-00051
[platform/core/csapi/tizenfx.git] / src / Tizen.Multimedia.Camera / Camera / CameraEnums.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
19 namespace Tizen.Multimedia
20 {
21     /// <summary>
22     /// Enumeration for Camera device.
23     /// </summary>
24     /// <since_tizen> 3 </since_tizen>
25     public enum CameraDevice
26     {
27         /// <summary>
28         /// Rear Camera device.
29         /// </summary>
30         Rear,
31         /// <summary>
32         /// Front Camera device.
33         /// </summary>
34         Front
35     }
36
37     /// <summary>
38     /// Enumeration for Camera device state.
39     /// </summary>
40     /// <since_tizen> 3 </since_tizen>
41     public enum CameraDeviceState
42     {
43         /// <summary>
44         /// Not opened.
45         /// </summary>
46         NotOpened,
47         /// <summary>
48         /// Opened.
49         /// </summary>
50         Opened,
51         /// <summary>
52         /// Now previewing or capturing or is being used for video recording.
53         /// </summary>
54         Working
55     }
56
57     /// <summary>
58     /// Enumeration for the facing direction of camera module .
59     /// </summary>
60     /// <since_tizen> 3 </since_tizen>
61     public enum CameraFacingDirection
62     {
63         /// <summary>
64         /// Rear direction.
65         /// </summary>
66         Rear,
67         /// <summary>
68         /// Front direction
69         /// </summary>
70         Front
71     }
72
73     /// <summary>
74     /// Enumeration for the current flash state.
75     /// </summary>
76     /// <since_tizen> 3 </since_tizen>
77     public enum CameraFlashState
78     {
79         /// <summary>
80         /// Flash is not used now through camera API.
81         /// </summary>
82         NotUsed,
83         /// <summary>
84         /// Flash is used now through camera API.
85         /// </summary>
86         Used
87     }
88
89     /// <summary>
90     /// Enumeration for the camera focus state.
91     /// </summary>
92     /// <since_tizen> 3 </since_tizen>
93     public enum CameraFocusState
94     {
95         /// <summary>
96         /// Focus released.
97         /// </summary>
98         Released,
99         /// <summary>
100         /// Focus in progress
101         /// </summary>
102         Ongoing,
103         /// <summary>
104         /// Focus succeeded
105         /// </summary>
106         Focused,
107         /// <summary>
108         /// Focus failed.
109         /// </summary>
110         Failed
111     }
112
113     /// <summary>
114     /// Enumeration for the camera pixel format.
115     /// </summary>
116     /// <since_tizen> 3 </since_tizen>
117     public enum CameraPixelFormat
118     {
119         /// <summary>
120         /// Invalid pixel format.
121         /// </summary>
122         Invalid = -1,
123         /// <summary>
124         /// NV12 pixel format.
125         /// </summary>
126         Nv12,
127         /// <summary>
128         /// NV12 Tiled pixel format.
129         /// </summary>
130         Nv12t,
131         /// <summary>
132         /// NV16 pixel format.
133         /// </summary>
134         Nv16,
135         /// <summary>
136         /// NV21 pixel format.
137         /// </summary>
138         Nv21,
139         /// <summary>
140         /// YUYV(YUY2) pixel format.
141         /// </summary>
142         Yuyv,
143         /// <summary>
144         /// UYVY pixel format.
145         /// </summary>
146         Uyvy,
147         /// <summary>
148         /// YUV422(Y:U:V) planar pixel format.
149         /// </summary>
150         Yuv422Planar,
151         /// <summary>
152         /// I420 pixel format.
153         /// </summary>
154         I420,
155         /// <summary>
156         /// YV12 pixel format.
157         /// </summary>
158         Yv12,
159         /// <summary>
160         /// RGB565 pixel format.
161         /// </summary>
162         Rgb565,
163         /// <summary>
164         /// RGB565 pixel format.
165         /// </summary>
166         Rgb888,
167         /// <summary>
168         /// RGBA pixel format.
169         /// </summary>
170         Rgba,
171         /// <summary>
172         /// ARGB pixel format.
173         /// </summary>
174         Argb,
175         /// <summary>
176         /// Encoded pixel format.
177         /// </summary>
178         Jpeg,
179         /// <summary>
180         /// Encoded pixel format : H264.
181         /// </summary>
182         H264 = 15
183     }
184
185     /// <summary>
186     /// Enumeration for the camera policy.
187     /// </summary>
188     /// <since_tizen> 3 </since_tizen>
189     public enum CameraPolicy
190     {
191         /// <summary>
192         /// None.
193         /// </summary>
194         None,
195         /// <summary>
196         /// Security policy
197         /// </summary>
198         Security = 4,
199         /// <summary>
200         /// Resource conflict
201         /// </summary>
202         ResourceConflict
203     }
204
205     /// <summary>
206     /// Enumeration for the camera state.
207     /// </summary>
208     /// <since_tizen> 3 </since_tizen>
209     public enum CameraState
210     {
211         /// <summary>
212         /// Before creating.
213         /// </summary>
214         None,
215         /// <summary>
216         /// Created, but not initialized yet.
217         /// </summary>
218         Created,
219         /// <summary>
220         /// Preview.
221         /// </summary>
222         Preview,
223         /// <summary>
224         /// While capturing.
225         /// </summary>
226         Capturing,
227         /// <summary>
228         /// After capturing.
229         /// </summary>
230         Captured
231     }
232
233     /// <summary>
234     /// Enumeration for the auto focus mode.
235     /// </summary>
236     /// <since_tizen> 3 </since_tizen>
237     public enum CameraAutoFocusMode
238     {
239         /// <summary>
240         /// auto-focus is not set.
241         /// </summary>
242         None,
243         /// <summary>
244         /// auto-focus in the normal mode.
245         /// </summary>
246         Normal,
247         /// <summary>
248         /// auto-focus in the macro mode(close distance).
249         /// </summary>
250         Macro,
251         /// <summary>
252         /// auto-focus in the full mode(all range scan, limited by device spec).
253         /// </summary>
254         Full
255     }
256
257     /// <summary>
258     /// Enumeration for the color tone, which provides the impression of looking through a tinted glass.
259     /// </summary>
260     /// <since_tizen> 3 </since_tizen>
261     public enum CameraEffectMode
262     {
263         /// <summary>
264         /// None.
265         /// </summary>
266         None,
267         /// <summary>
268         /// Mono.
269         /// </summary>
270         Mono,
271         /// <summary>
272         /// Sepia.
273         /// </summary>
274         Sepia,
275         /// <summary>
276         /// Negative.
277         /// </summary>
278         Negative,
279         /// <summary>
280         /// Blue.
281         /// </summary>
282         Blue,
283         /// <summary>
284         /// Green.
285         /// </summary>
286         Green,
287         /// <summary>
288         /// Aqua.
289         /// </summary>
290         Aqua,
291         /// <summary>
292         /// Violet.
293         /// </summary>
294         Violet,
295         /// <summary>
296         /// Orange.
297         /// </summary>
298         Orange,
299         /// <summary>
300         /// Gray.
301         /// </summary>
302         Gray,
303         /// <summary>
304         /// Red.
305         /// </summary>
306         Red,
307         /// <summary>
308         /// Antique.
309         /// </summary>
310         Antique,
311         /// <summary>
312         /// Warm.
313         /// </summary>
314         Warm,
315         /// <summary>
316         /// Pink.
317         /// </summary>
318         Pink,
319         /// <summary>
320         /// Yellow.
321         /// </summary>
322         Yellow,
323         /// <summary>
324         /// Purple.
325         /// </summary>
326         Purple,
327         /// <summary>
328         /// Emboss.
329         /// </summary>
330         Emboss,
331         /// <summary>
332         /// Outline.
333         /// </summary>
334         Outline,
335         /// <summary>
336         /// Solarization.
337         /// </summary>
338         Solarization,
339         /// <summary>
340         /// Sketch.
341         /// </summary>
342         Sketch,
343         /// <summary>
344         /// Washed.
345         /// </summary>
346         Washed,
347         /// <summary>
348         /// Vintage warm.
349         /// </summary>
350         VintageWarm,
351         /// <summary>
352         /// Vintage cold    .
353         /// </summary>
354         VintageCold,
355         /// <summary>
356         /// Posterization.
357         /// </summary>
358         Posterization,
359         /// <summary>
360         /// Cartoon.
361         /// </summary>
362         Cartoon,
363         /// <summary>
364         /// Selective color - Red.
365         /// </summary>
366         SelectiveRed,
367         /// <summary>
368         /// Selective color - Green.
369         /// </summary>
370         SelectiveGreen,
371         /// <summary>
372         /// Selective color - Blue.
373         /// </summary>
374         SelectiveBlue,
375         /// <summary>
376         /// Selective color - Yellow.
377         /// </summary>
378         SelectiveYellow,
379         /// <summary>
380         /// Selective color - Red and Yellow.
381         /// </summary>
382         SelectiveRedYellow,
383         /// <summary>
384         /// Other Graphic effects.
385         /// </summary>
386         OtherGraphics
387     }
388
389     /// <summary>
390     /// Enumeration for the camera exposure modes.
391     /// </summary>
392     /// <since_tizen> 3 </since_tizen>
393     public enum CameraExposureMode
394     {
395         /// <summary>
396         /// Off.
397         /// </summary>
398         Off,
399         /// <summary>
400         /// All mode.
401         /// </summary>
402         All,
403         /// <summary>
404         /// Center mode.
405         /// </summary>
406         Center,
407         /// <summary>
408         /// Spot mode.
409         /// </summary>
410         Spot,
411         /// <summary>
412         /// Custom mode.
413         /// </summary>
414         Custom
415     }
416
417     /// <summary>
418     /// Enumeration for the flash mode.
419     /// </summary>
420     /// <since_tizen> 3 </since_tizen>
421     public enum CameraFlashMode
422     {
423         /// <summary>
424         /// Always off.
425         /// </summary>
426         Off,
427         /// <summary>
428         /// Always splashes.
429         /// </summary>
430         On,
431         /// <summary>
432         /// Depending on intensity of light, strobe starts to flash.
433         /// </summary>
434         Auto,
435         /// <summary>
436         /// Red eye reduction. Multiple flash before capturing.
437         /// </summary>
438         RedEyeReduction,
439         /// <summary>
440         /// Slow sync curtain synchronization.
441         /// </summary>
442         SlowSync,
443         /// <summary>
444         /// Front curtain synchronization.
445         /// </summary>
446         FrontCurtain,
447         /// <summary>
448         /// Rear curtain synchronization.
449         /// </summary>
450         RearCurtain,
451         /// <summary>
452         /// Keep turned on until turning off.
453         /// </summary>
454         Permanent
455     }
456
457     /// <summary>
458     /// Enumeration for preview FPS.
459     /// </summary>
460     /// <since_tizen> 3 </since_tizen>
461     public enum CameraFps
462     {
463         /// <summary>
464         /// Auto FPS.
465         /// </summary>
466         Auto = 0,
467         /// <summary>
468         /// 7 FPS.
469         /// </summary>
470         Fps7 = 7,
471         /// <summary>
472         /// 8 FPS.
473         /// </summary>
474         Fps8 = 8,
475         /// <summary>
476         /// 15 FPS.
477         /// </summary>
478         Fps15 = 15,
479         /// <summary>
480         /// 20 FPS.
481         /// </summary>
482         Fps20 = 20,
483         /// <summary>
484         /// 24 FPS.
485         /// </summary>
486         Fps24 = 24,
487         /// <summary>
488         /// 25 FPS.
489         /// </summary>
490         Fps25 = 25,
491         /// <summary>
492         /// 30 FPS.
493         /// </summary>
494         Fps30 = 30,
495         /// <summary>
496         /// 60 FPS.
497         /// </summary>
498         Fps60 = 60,
499         /// <summary>
500         /// 90 FPS.
501         /// </summary>
502         Fps90 = 90,
503         /// <summary>
504         /// 120 FPS.
505         /// </summary>
506         Fps120 = 120
507     }
508
509     /// <summary>
510     /// Enumeration for HDR capture mode.
511     /// </summary>
512     /// <since_tizen> 3 </since_tizen>
513     public enum CameraHdrMode
514     {
515         /// <summary>
516         /// Disable HDR capture.
517         /// </summary>
518         Disable,
519         /// <summary>
520         /// Enable HDR capture.
521         /// </summary>
522         Enable,
523         /// <summary>
524         /// Enable HDR capture and keep original image data.
525         /// </summary>
526         KeepOriginal
527     }
528
529     /// <summary>
530     /// Enumeration for the ISO levels of the camera.
531     /// </summary>
532     /// <since_tizen> 3 </since_tizen>
533     public enum CameraIsoLevel
534     {
535         /// <summary>
536         /// ISO auto mode.
537         /// </summary>
538         Auto,
539         /// <summary>
540         /// ISO 50.
541         /// </summary>
542         Iso50,
543         /// <summary>
544         /// ISO 100.
545         /// </summary>
546         Iso100,
547         /// <summary>
548         /// ISO 200.
549         /// </summary>
550         Iso200,
551         /// <summary>
552         /// ISO 400.
553         /// </summary>
554         Iso400,
555         /// <summary>
556         /// ISO 800.
557         /// </summary>
558         Iso800,
559         /// <summary>
560         /// ISO 1600.
561         /// </summary>
562         Iso1600,
563         /// <summary>
564         /// ISO 3200.
565         /// </summary>
566         Iso3200
567     }
568
569     /// <summary>
570     /// Enumeration for PTZ(Pan Tilt Zoom) movement type.
571     /// </summary>
572     /// <since_tizen> 3 </since_tizen>
573     public enum CameraPtzMoveType
574     {
575         /// <summary>
576         /// Move to a specific coordinate position.
577         /// </summary>
578         Absoulute,
579         /// <summary>
580         /// Move a specific distance from the current position.
581         /// </summary>
582         Relative
583     }
584
585     /// <summary>
586     /// Enumeration for PTZ(Pan Tilt Zoom) type.
587     /// </summary>
588     /// <since_tizen> 3 </since_tizen>
589     public enum CameraPtzType
590     {
591         /// <summary>
592         /// Move the camera device physically.
593         /// </summary>
594         Mechanical,
595         /// <summary>
596         /// Zoom digitally and move into portion of the image.
597         /// </summary>
598         Electronic
599     }
600
601     /// <summary>
602     /// Enumeration for the camera scene mode.
603     /// </summary>
604     /// <since_tizen> 3 </since_tizen>
605     public enum CameraSceneMode
606     {
607         /// <summary>
608         /// Normal.
609         /// </summary>
610         Normal,
611         /// <summary>
612         /// Portrait.
613         /// </summary>
614         Portrait,
615         /// <summary>
616         /// Landscape.
617         /// </summary>
618         Landscape,
619         /// <summary>
620         /// Sports.
621         /// </summary>
622         Sports,
623         /// <summary>
624         /// Party &amp; Indoor.
625         /// </summary>
626         PartyAndIndoor,
627         /// <summary>
628         /// Beach &amp; Indoor.
629         /// </summary>
630         BeachAndIndoor,
631         /// <summary>
632         /// Sunset.
633         /// </summary>
634         Sunset,
635         /// <summary>
636         /// Dusk &amp; Dawn.
637         /// </summary>
638         DuskAndDawn,
639         /// <summary>
640         /// Fall.
641         /// </summary>
642         FallColor,
643         /// <summary>
644         /// Night scene.
645         /// </summary>
646         NightScene,
647         /// <summary>
648         /// Firework.
649         /// </summary>
650         FireWork,
651         /// <summary>
652         /// Text.
653         /// </summary>
654         Text,
655         /// <summary>
656         /// Show window.
657         /// </summary>
658         ShowWindow,
659         /// <summary>
660         /// Candle light.
661         /// </summary>
662         CandleLight,
663         /// <summary>
664         /// Backlight.
665         /// </summary>
666         BackLight,
667         /// <summary>
668         /// Aqua.
669         /// </summary>
670         Aqua
671     }
672
673     /// <summary>
674     /// Enumeration for the orientation values of tag.
675     /// </summary>
676     /// <since_tizen> 3 </since_tizen>
677     public enum CameraTagOrientation
678     {
679         /// <summary>
680         /// Row #0 is at the top, Column #0 is to the left.
681         /// </summary>
682         TopLeft = 1,
683         /// <summary>
684         /// Row #0 is at the top, Column #0 is to the right.
685         /// </summary>
686         TopRight = 2,
687         /// <summary>
688         /// Row #0 is at the bottom, Column #0 is to the right.
689         /// </summary>
690         BottomRight = 3,
691         /// <summary>
692         /// Row #0 is at the bottom, Column #0 is to the left.
693         /// </summary>
694         BottomLeft = 4,
695         /// <summary>
696         /// Row #0 is at the left, Column #0 is to the top.
697         /// </summary>
698         LeftTop = 5,
699         /// <summary>
700         /// Row #0 is at the right, Column #0 is to the top.
701         /// </summary>
702         RightTop = 6,
703         /// <summary>
704         /// Row #0 is at the right, Column #0 is to the bottom.
705         /// </summary>
706         RightBottom = 7,
707         /// <summary>
708         /// Row #0 is at the left, Column #0 is to the bottom.
709         /// </summary>
710         LeftBottom = 8
711     }
712
713     /// <summary>
714     /// Enumeration for the theater mode.
715     /// </summary>
716     /// <since_tizen> 3 </since_tizen>
717     public enum CameraTheaterMode
718     {
719         /// <summary>
720         /// Disable theater mode - External display shows same image as device display.
721         /// </summary>
722         Disable,
723         /// <summary>
724         /// Clone mode - Preview image is displayed on external display with full screen mode. Also preview image is shown by the UI on device display.
725         /// </summary>
726         Clone,
727         /// <summary>
728         /// Enable theater mode - Preview image is displayed on external display with full screen mode, but preview image is not shown on device display.
729         /// </summary>
730         Enable
731     }
732
733     /// <summary>
734     ///Enumeration for the white balance levels of the camera.
735     /// </summary>
736     /// <since_tizen> 3 </since_tizen>
737     public enum CameraWhiteBalance
738     {
739         /// <summary>
740         /// None.
741         /// </summary>
742         None,
743         /// <summary>
744         /// Automatic.
745         /// </summary>
746         Automatic,
747         /// <summary>
748         /// Daylight.
749         /// </summary>
750         Daylight,
751         /// <summary>
752         /// Cloudy.
753         /// </summary>
754         Cloudy,
755         /// <summary>
756         /// Fluorescent.
757         /// </summary>
758         Fluorescent,
759         /// <summary>
760         /// Incandescent.
761         /// </summary>
762         Incandescent,
763         /// <summary>
764         /// Shade.
765         /// </summary>
766         Shade,
767         /// <summary>
768         /// Horizon.
769         /// </summary>
770         Horizon,
771         /// <summary>
772         /// Flash.
773         /// </summary>
774         Flash,
775         /// <summary>
776         /// Custom.
777         /// </summary>
778         Custom
779     }
780
781     /// <summary>
782     /// Enumeration for the camera display mode.
783     /// </summary>
784     /// <since_tizen> 3 </since_tizen>
785     public enum CameraDisplayMode
786     {
787         /// <summary>
788         /// Letter box.
789         /// </summary>
790         LetterBox,
791         /// <summary>
792         /// Origin size.
793         /// </summary>
794         OriginSize,
795         /// <summary>
796         /// Full screen.
797         /// </summary>
798         Full,
799         /// <summary>
800         /// Cropped full screen.
801         /// </summary>
802         CroppedFull,
803         /// <summary>
804         /// Original size or letter box.
805         /// </summary>
806         OriginOrLetterBox,
807         /// <summary>
808         /// Custom ROI.
809         /// </summary>
810         CustomROI
811     }
812
813     /// <summary>
814     /// Enumeration for camera failure error.
815     /// </summary>
816     /// <since_tizen> 3 </since_tizen>
817     public enum CameraErrorCode
818     {
819         /// <summary>
820         /// Device Error.
821         /// </summary>
822         DeviceError = CameraError.DeviceError,
823         /// <summary>
824         /// Internal error.
825         /// </summary>
826         InvalidOperation = CameraError.InvalidOperation,
827         /// <summary>
828         /// Out of memory.
829         /// </summary>
830         OutOfMemory = CameraError.OutOfMemory,
831         /// <summary>
832         /// Service is disconnected.
833         /// </summary>
834         ServiceDisconnected = CameraError.ServiceDisconnected
835     }
836
837     /// <summary>
838     /// Enumeration for Image datatype.
839     /// </summary>
840     /// <since_tizen> 3 </since_tizen>
841     public enum PlaneType
842     {
843         /// <summary>
844         /// Single plane data.
845         /// </summary>
846         SinglePlane,
847         /// <summary>
848         /// Double plane data.
849         /// </summary>
850         DoublePlane,
851         /// <summary>
852         /// Triple plane data.
853         /// </summary>
854         TriplePlane,
855         /// <summary>
856         /// Encoded plane data.
857         /// </summary>
858         EncodedPlane
859     }
860 }