Release 4.0.0-preview1-00130
[platform/core/csapi/tizenfx.git] / src / Tizen.Network.Nfc / Tizen.Network.Nfc / NfcEnumerations.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.Network.Nfc
20 {
21     /// <summary>
22     /// Enumeration for the NFC record TNF (Type Name Format).
23     /// </summary>
24     /// <since_tizen> 3 </since_tizen>
25     public enum NfcRecordTypeNameFormat
26     {
27         /// <summary>
28         /// Empty.
29         /// </summary>
30         /// <since_tizen> 3 </since_tizen>
31         Empty = 0,
32         /// <summary>
33         /// The RTD (Record Type Definition) type format [NFC RTD].
34         /// </summary>
35         /// <since_tizen> 3 </since_tizen>
36         WellKnown = 1,
37         /// <summary>
38         /// MIME media types in the RFC 2046 [RFC 2046].
39         /// </summary>
40         /// <since_tizen> 3 </since_tizen>
41         MimeMedia = 2,
42         /// <summary>
43         /// The absolute URI as defined in the RFC 3986 [RFC 3986].
44         /// </summary>
45         /// <since_tizen> 3 </since_tizen>
46         Uri = 3,
47         /// <summary>
48         /// The NFC forum external type [NFC RTD].
49         /// </summary>
50         /// <since_tizen> 3 </since_tizen>
51         ExternalRtd = 4,
52         /// <summary>
53         /// The payload type is unknown.
54         /// </summary>
55         /// <since_tizen> 3 </since_tizen>
56         Unknown = 5,
57         /// <summary>
58         /// The final chunk of a chunked NDEF record.
59         /// </summary>
60         /// <since_tizen> 3 </since_tizen>
61         UnChanged = 6
62     }
63
64     /// <summary>
65     /// Enumeration for the NFC encode type.
66     /// </summary>
67     /// <since_tizen> 3 </since_tizen>
68     public enum NfcEncodeType
69     {
70         /// <summary>
71         /// UTF-8.
72         /// </summary>
73         /// <since_tizen> 3 </since_tizen>
74         Utf8 = 0,
75         /// <summary>
76         /// UTF-16.
77         /// </summary>
78         /// <since_tizen> 3 </since_tizen>
79         Utf16 = 1
80     }
81     /// <summary>
82     /// Enumeration for the NFC tag type.
83     /// </summary>
84     /// <since_tizen> 3 </since_tizen>
85     public enum NfcTagType
86     {
87         /// <summary> 
88         /// An unknown target.
89         /// </summary>
90         /// <since_tizen> 3 </since_tizen>
91         UnknownTarget = 0x00,
92         /// <summary>
93         /// The generic PICC.
94         /// </summary>
95         /// <since_tizen> 3 </since_tizen>
96         GenericPicc,
97         /// <summary>
98         /// The ISO14443 A PICC.
99         /// </summary>
100         /// <since_tizen> 3 </since_tizen>
101         Iso14443APicc,
102         /// <summary>
103         /// The ISO14443 4A PICC.
104         /// </summary>
105         /// <since_tizen> 3 </since_tizen>
106         Iso144434APicc,
107         /// <summary>
108         /// The ISO14443 4A PICC.
109         /// </summary>
110         /// <since_tizen> 3 </since_tizen>
111         Iso144433APicc,
112         /// <summary> 
113         /// The Mifare Mini PICC.
114         /// </summary>
115         /// <since_tizen> 3 </since_tizen>
116         MifareMiniPicc,
117         /// <summary>
118         /// Mifare 1k PICC.
119         /// </summary>
120         /// <since_tizen> 3 </since_tizen>
121         Mifare1kPicc,
122         /// <summary>
123         /// Mifare 4k PICC.
124         /// </summary>
125         /// <since_tizen> 3 </since_tizen>
126         Mifare4kPicc,
127         /// <summary>
128         /// The Mifare Ultra PICC.
129         /// </summary>
130         /// <since_tizen> 3 </since_tizen>
131         MifareUltraPicc,
132         /// <summary>
133         /// The Mifare Desfire PICC.
134         /// </summary>
135         /// <since_tizen> 3 </since_tizen>
136         MifareDesfirePicc,
137         /// <summary> 
138         /// The Iso14443 B PICC.
139         /// </summary>
140         /// <since_tizen> 3 </since_tizen>
141         Iso14443BPicc,
142         /// <summary>
143         /// Iso14443 4B PICC.
144         /// </summary>
145         /// <since_tizen> 3 </since_tizen>
146         Iso144434BPicc,
147         /// <summary>
148         /// The ISO14443 B Prime PICC.
149         /// </summary>
150         /// <since_tizen> 3 </since_tizen>
151         Iso14443BPrimePicc,
152         /// <summary>
153         /// The Felica PICC.
154         /// </summary>
155         /// <since_tizen> 3 </since_tizen>
156         FelicaPicc,
157         /// <summary>
158         /// The Jewel PICC.
159         /// </summary>
160         /// <since_tizen> 3 </since_tizen>
161         JewelPicc,
162         /// <summary>.
163         /// </summary>
164         /// <since_tizen> 3 </since_tizen>
165         Iso15693Picc,
166         /// <summary>
167         /// The Barcode 128 PICC.
168         /// </summary>
169         /// <since_tizen> 3 </since_tizen>
170         Barcode128Picc,
171         /// <summary>
172         /// The Barcode 256 PICC.
173         /// </summary>
174         /// <since_tizen> 3 </since_tizen>
175         Barcode256Picc,
176         /// <summary>
177         /// The NFCIP1 Target.
178         /// </summary>
179         /// <since_tizen> 3 </since_tizen>
180         NfcIp1Target,
181         /// <summary>
182         /// The NFCIP1 Initiator.
183         /// </summary>
184         /// <since_tizen> 3 </since_tizen>
185         NfcIp1Initiator
186     }
187     /// <summary>
188     /// Enumeration for the NFC tag filter type.
189     /// </summary>
190     /// <since_tizen> 3 </since_tizen>
191     public enum NfcTagFilterType
192     {
193         /// <summary>
194         /// All disable.
195         /// </summary>
196         /// <since_tizen> 3 </since_tizen>
197         AllDisable = 0x0000,
198         /// <summary>
199         /// ISO14443A enable.
200         /// </summary>
201         /// <since_tizen> 3 </since_tizen>
202         Iso14443AEnable = 0x0001,
203         /// <summary>
204         /// ISO14443B enable.
205         /// </summary>
206         /// <since_tizen> 3 </since_tizen>
207         Iso14443BEnable = 0x0002,
208         /// <summary>
209         /// ISO15693 enable.
210         /// </summary>
211         /// <since_tizen> 3 </since_tizen>
212         Iso15693Enable = 0x0004,
213         /// <summary>
214         /// FELICA enable.
215         /// </summary>
216         /// <since_tizen> 3 </since_tizen>
217         FelicaEnable = 0x0008,
218         /// <summary>
219         /// JEWEL enable.
220         /// </summary>
221         /// <since_tizen> 3 </since_tizen>
222         JewelEnable = 0x0010,
223         /// <summary>
224         /// IP enable.
225         /// </summary>
226         /// <since_tizen> 3 </since_tizen>
227         IpEnable = 0x0020,
228         /// <summary>
229         /// All enable.
230         /// </summary>
231         /// <since_tizen> 3 </since_tizen>
232         AllEnable = ~0
233     }
234     /// <summary>
235     /// Enumeration for the NFC discovered type.
236     /// </summary>
237     /// <since_tizen> 3 </since_tizen>
238     public enum NfcDiscoveredType
239     {
240         /// <summary>
241         /// Attached, discovered, and activated event.
242         /// </summary>
243         /// <since_tizen> 3 </since_tizen>
244         Attached,
245         /// <summary>
246         /// Detached, disappeared, and deactivated event.
247         /// </summary>
248         /// <since_tizen> 3 </since_tizen>
249         Detached
250     }
251     /// <summary>
252     /// Enumeration for the NFC secure element event.
253     /// </summary>
254     /// <since_tizen> 3 </since_tizen>
255     public enum NfcSecureElementEvent
256     {
257         /// <summary>
258         /// Start transaction.
259         /// </summary>
260         /// <since_tizen> 3 </since_tizen>
261         StartTransaction,
262         /// <summary>
263         /// End transaction.
264         /// </summary>
265         /// <since_tizen> 3 </since_tizen>
266         EndTransaction,
267         /// <summary>
268         /// Ready signal.
269         /// </summary>
270         /// <since_tizen> 3 </since_tizen>
271         Connectivity,
272         /// <summary>
273         /// The CLF (Contactless Front-end) detects a RF field.
274         /// </summary>
275         /// <since_tizen> 3 </since_tizen>
276         FieldOn,
277         /// <summary>
278         /// The CLF (Contactless Front-end) detects that the RF field is off.
279         /// </summary>
280         /// <since_tizen> 3 </since_tizen>
281         FieldOff,
282         /// <summary>
283         /// An external reader tries to access the secure element.
284         /// </summary>
285         /// <since_tizen> 3 </since_tizen>
286         Transaction,
287         /// <summary>
288         /// Changing the emulated secure element type.
289         /// </summary>
290         /// <since_tizen> 3 </since_tizen>
291         TypeChanged,
292         /// <summary>
293         /// Changing the card emulation mode.
294         /// </summary>
295         /// <since_tizen> 3 </since_tizen>
296         CardEmulationChanged
297     }
298     /// <summary>
299     /// Enumeration for the NFC filter type.
300     /// </summary>
301     /// <since_tizen> 3 </since_tizen>
302     public enum NfcSecureElementType
303     {
304         /// <summary>
305         /// Disable card emulation.
306         /// </summary>
307         /// <since_tizen> 3 </since_tizen>
308         Disable = 0x00,
309         /// <summary>
310         /// The SmartMX type card emulation (Embedded Secure Element).
311         /// </summary>
312         /// <since_tizen> 3 </since_tizen>
313         EmbeddedSE = 0x01,
314         /// <summary>
315         /// The UICC type card emulation (Universal IC Card).
316         /// </summary>
317         /// <since_tizen> 3 </since_tizen>
318         Uicc = 0x02,
319         /// <summary>
320         /// The SDCARD card emulation.
321         /// </summary>
322         /// <since_tizen> 3 </since_tizen>
323         Sdcard = 0x03,
324         /// <summary>
325         /// The Host based card emulation.
326         /// </summary>
327         /// <since_tizen> 3 </since_tizen>
328         Hce = 0x04
329     }
330     /// <summary>
331     /// Enumeration for the NFC discovered type.
332     /// </summary>
333     /// <since_tizen> 3 </since_tizen>
334     public enum NfcSecureElementCardEmulationMode
335     {
336         /// <summary>
337         /// The card emulation mode is OFF.
338         /// </summary>
339         /// <since_tizen> 3 </since_tizen>
340         Off = 0x00,
341         /// <summary>
342         /// The card emulation mode is ON.
343         /// </summary>
344         /// <since_tizen> 3 </since_tizen>
345         On = 0x01
346     }
347     /// <summary>
348     /// Enumeration for the SNEP (Simple NDEF Exchange Protocol) event.
349     /// </summary>
350     /// <since_tizen> 3 </since_tizen>
351     public enum NfcSnepEvent
352     {
353         /// <summary>
354         /// Server or client stopped.
355         /// </summary>
356         /// <since_tizen> 3 </since_tizen>
357         Stop = 0x00,
358         /// <summary>
359         /// Server started or client connected.
360         /// </summary>
361         /// <since_tizen> 3 </since_tizen>
362         Start = 0x01,
363         /// <summary>
364         /// Server received get request.
365         /// </summary>
366         /// <since_tizen> 3 </since_tizen>
367         Get = 0x02,
368         /// <summary>
369         /// Server received put request.
370         /// </summary>
371         /// <since_tizen> 3 </since_tizen>
372         Put = 0x03,
373         /// <summary>
374         /// Service registered.
375         /// </summary>
376         /// <since_tizen> 3 </since_tizen>
377         Register = 0x04,
378         /// <summary>
379         /// Service unregistered.
380         /// </summary>
381         /// <since_tizen> 3 </since_tizen>
382         Unregister = 0x05
383     }
384     /// <summary>
385     /// Enumeration for the SNEP request type.
386     /// </summary>
387     /// <since_tizen> 3 </since_tizen>
388     public enum NfcSnepRequestType
389     {
390         /// <summary>
391         /// The get request.
392         /// </summary>
393         /// <since_tizen> 3 </since_tizen>
394         Get = 0x01,
395         /// <summary>
396         /// The put request.
397         /// </summary>
398         /// <since_tizen> 3 </since_tizen>
399         Put = 0x02
400     }
401     /// <summary>
402     /// Enumeration for the NFC card emulation category type.
403     /// </summary>
404     /// <since_tizen> 3 </since_tizen>
405     public enum NfcCardEmulationCategoryType
406     {
407         /// <summary>
408         /// NFC payment services.
409         /// </summary>
410         /// <since_tizen> 3 </since_tizen>
411         Payment = 0x01,
412         /// <summary>
413         /// All other card emulation services.
414         /// </summary>
415         /// <since_tizen> 3 </since_tizen>
416         Other = 0x02
417     }
418     /// <summary>
419     /// Enumeration for the NFC card emulation HCE (Host Card Emulation) event type.
420     /// </summary>
421     /// <since_tizen> 3 </since_tizen>
422     public enum NfcHceEvent
423     {
424         /// <summary>
425         /// HCE deactivated.
426         /// </summary>
427         /// <since_tizen> 3 </since_tizen>
428         Deactivated = 0x00,
429         /// <summary>
430         /// HCE activated.
431         /// </summary>
432         /// <since_tizen> 3 </since_tizen>
433         Activated = 0x01,
434         /// <summary>
435         /// HCE APDU (Application Protocol Data Unit) received.
436         /// </summary>
437         /// <since_tizen> 3 </since_tizen>
438         ApduReceived = 0x02
439     }
440 }