Setting since_tizen 3/4 on Tizen.NET API
[platform/core/csapi/tizenfx.git] / src / Tizen.Multimedia.Remoting / ScreenMirroring / ScreenMirroringEnums.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.Remoting
20 {
21     /// <summary>
22     /// Specifies the audio codecs for <see cref="ScreenMirroring"/>.
23     /// </summary>
24     /// <seealso cref="ScreenMirroringAudioInfo"/>
25     /// <since_tizen> 4 </since_tizen>
26     public enum ScreenMirroringAudioCodec
27     {
28         /// <summary>
29         /// The screen mirroring is not negotiated yet.
30         /// </summary>
31         None,
32         /// <summary>
33         /// AAC codec.
34         /// </summary>
35         Aac,
36         /// <summary>
37         /// AC3 codec.
38         /// </summary>
39         Ac3,
40         /// <summary>
41         /// LPCM codec.
42         /// </summary>
43         Lpcm
44     }
45
46     /// <summary>
47     /// Specifies the video codecs for <see cref="ScreenMirroring"/>.
48     /// </summary>
49     /// <seealso cref="ScreenMirroringVideoInfo"/>
50     /// <since_tizen> 4 </since_tizen>
51     public enum ScreenMirroringVideoCodec
52     {
53         /// <summary>
54         /// The screen mirroring is not negotiated yet.
55         /// </summary>
56         None,
57         /// <summary>
58         /// H.264 codec.
59         /// </summary>
60         H264
61     }
62
63     /// <summary>
64     /// Specifies the available combinations of resolutions and fps for <see cref="ScreenMirroring"/>.
65     /// </summary>
66     /// <since_tizen> 4 </since_tizen>
67     [Flags]
68     public enum ScreenMirroringResolutions
69     {
70         /// <summary>
71         /// W-1920, H-1080, 30 fps.
72         /// </summary>
73         R1920x1080P30 = (1 << 0),
74         /// <summary>
75         /// W-1280, H-720, 30 fps.
76         /// </summary>
77         R1280x720P30 = (1 << 1),
78         /// <summary>
79         /// W-960, H-540, 30 fps.
80         /// </summary>
81         R960x540P30 = (1 << 2),
82         /// <summary>
83         /// W-864, H-480, 30 fps.
84         /// </summary>
85         R864x480P30 = (1 << 3),
86         /// <summary>
87         /// W-720, H-480, 60 fps.
88         /// </summary>
89         R720x480P60 = (1 << 4),
90         /// <summary>
91         /// W-640, H-480, 60 fps.
92         /// </summary>
93         R640x480P60 = (1 << 5),
94         /// <summary>
95         /// W-640, H-360, 30 fps.
96         /// </summary>
97         R640x360P30 = (1 << 6)
98     }
99
100     /// <summary>
101     /// Specifies the states of <see cref="ScreenMirroring"/>.
102     /// </summary>
103     /// <since_tizen> 4 </since_tizen>
104     public enum ScreenMirroringState
105     {
106         /// <summary>
107         /// Idle.
108         /// </summary>
109         Idle = 1,
110
111         /// <summary>
112         /// Prepared.
113         /// </summary>
114         /// <seealso cref="ScreenMirroring.Prepare(Display, ScreenMirroringResolutions)"/>
115         Prepared,
116
117         /// <summary>
118         /// Connected to a source.
119         /// </summary>
120         /// <seealso cref="ScreenMirroring.ConnectAsync(string)"/>
121         Connected,
122
123         /// <summary>
124         /// Playing.
125         /// </summary>
126         /// <seealso cref="ScreenMirroring.StartAsync"/>
127         Playing,
128
129         /// <summary>
130         /// Paused while playing media.
131         /// </summary>
132         /// <seealso cref="ScreenMirroring.PauseAsync"/>
133         Paused,
134
135         /// <summary>
136         /// Disconnected from source.
137         /// </summary>
138         /// <seealso cref="ScreenMirroring.Disconnect"/>
139         Disconnected
140     }
141
142     /// <summary>
143     /// Specifies the errors for <see cref="ScreenMirroring"/>.
144     /// </summary>
145     /// <since_tizen> 4 </since_tizen>
146     public enum ScreenMirroringError
147     {
148         /// <summary>
149         /// Invalid operation.
150         /// </summary>
151         InvalidOperation = ScreenMirroringErrorCode.InvalidOperation
152     }
153 }