New test.
[mono.git] / mcs / class / System.Drawing / System.Drawing.Imaging / Encoder.cs
1 //
2 // System.Drawing.Imaging.Encoder.cs
3 //
4 // (C) 2004 Novell, Inc.  http://www.novell.com
5 // Author: Ravindra (rkumar@novell.com)
6 //
7
8 //
9 // Copyright (C) 2004 Novell, Inc (http://www.novell.com)
10 //
11 // Permission is hereby granted, free of charge, to any person obtaining
12 // a copy of this software and associated documentation files (the
13 // "Software"), to deal in the Software without restriction, including
14 // without limitation the rights to use, copy, modify, merge, publish,
15 // distribute, sublicense, and/or sell copies of the Software, and to
16 // permit persons to whom the Software is furnished to do so, subject to
17 // the following conditions:
18 // 
19 // The above copyright notice and this permission notice shall be
20 // included in all copies or substantial portions of the Software.
21 // 
22 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
23 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
24 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
25 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
26 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
27 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
28 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29 //
30
31 using System;
32
33 namespace System.Drawing.Imaging 
34 {
35         public sealed class Encoder
36         {
37                 private Guid guid;
38
39                 public static readonly Encoder ChrominanceTable;
40                 public static readonly Encoder ColorDepth;
41                 public static readonly Encoder Compression;
42                 public static readonly Encoder LuminanceTable;
43                 public static readonly Encoder Quality;
44                 public static readonly Encoder RenderMethod;
45                 public static readonly Encoder SaveFlag;
46                 public static readonly Encoder ScanMethod;
47                 public static readonly Encoder Transformation;
48                 public static readonly Encoder Version;
49
50                 static Encoder ()
51                 {
52                         // GUID values are taken from my windows machine.
53                         ChrominanceTable = new Encoder ("f2e455dc-09b3-4316-8260-676ada32481c");
54                         ColorDepth = new Encoder ("66087055-ad66-4c7c-9a18-38a2310b8337");
55                         Compression = new Encoder ("e09d739d-ccd4-44ee-8eba-3fbf8be4fc58");
56                         LuminanceTable = new Encoder ("edb33bce-0266-4a77-b904-27216099e717");
57                         Quality = new Encoder ("1d5be4b5-fa4a-452d-9cdd-5db35105e7eb");
58                         RenderMethod = new Encoder ("6d42c53a-229a-4825-8bb7-5c99e2b9a8b8");
59                         SaveFlag = new Encoder ("292266fc-ac40-47bf-8cfc-a85b89a655de");
60                         ScanMethod = new Encoder ("3a4e2661-3109-4e56-8536-42c156e7dcfa");
61                         Transformation = new Encoder ("8d0eb2d1-a58e-4ea8-aa14-108074b7b6f9");
62                         Version = new Encoder ("24d18c76-814a-41a4-bf53-1c219cccf797");
63                 }
64                 
65                 internal Encoder (String guid) {
66                         this.guid = new Guid (guid);
67                 }
68
69                 public Encoder (Guid guid) {
70                         this.guid = guid;
71                 }
72
73                 public Guid Guid {
74                         get {
75                                 return guid;
76                         }
77                 }
78         }
79 }