Release 4.0.0-preview1-00051
[platform/core/csapi/tizenfx.git] / src / Tizen.Multimedia.Vision / MediaVision / Barcode.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 namespace Tizen.Multimedia
18 {
19     /// <summary>
20     /// Represents a detected barcode.
21     /// </summary>
22     /// <since_tizen> 3</since_tizen>
23     public class Barcode
24     {
25         /// <summary>
26         /// Initializes a new instance of the <see cref="Barcode"/> class.
27         /// </summary>
28         /// <since_tizen> 3</since_tizen>
29         public Barcode(Quadrangle region, string message, BarcodeType type)
30         {
31             Region = region;
32             Message = message;
33             Type = type;
34         }
35
36         /// <summary>
37         /// The quadrangle location of detected barcode.
38         /// </summary>
39         /// <since_tizen> 3</since_tizen>
40         public Quadrangle Region { get; }
41
42         /// <summary>
43         /// The decoded message of barcode.
44         /// </summary>
45         /// <since_tizen> 3</since_tizen>
46         public string Message { get; }
47
48         /// <summary>
49         /// The type of detected barcode.
50         /// </summary>
51         /// <since_tizen> 3</since_tizen>
52         public BarcodeType Type { get; }
53
54         /// <summary>
55         /// Returns a string that represents the current object.
56         /// </summary>
57         /// <returns>A string that represents the current object.</returns>
58         public override string ToString() =>
59             $"Region={Region}, Message={Message}, Type={Type.ToString()}";
60     }
61 }