New test.
[mono.git] / mcs / class / System.Drawing / System.Drawing.Imaging / MetaHeader.cs
1 //
2 // System.Drawing.Imaging.MetaHeader.cs
3 //
4 // Authors:
5 //   Everaldo Canuto (everaldo.canuto@bol.com.br)
6 //   Andreas Nahr (ClassDevelopment@A-SoftTech.com)
7 //   Dennis Hayes (dennish@raytek.com)
8 //   Sebastien Pouliot  <sebastien@ximian.com>
9 //
10 // (C) 2002 Ximian, Inc.  http://www.ximian.com
11 // Copyright (C) 2004, 2006 Novell, Inc (http://www.novell.com)
12 //
13 // Permission is hereby granted, free of charge, to any person obtaining
14 // a copy of this software and associated documentation files (the
15 // "Software"), to deal in the Software without restriction, including
16 // without limitation the rights to use, copy, modify, merge, publish,
17 // distribute, sublicense, and/or sell copies of the Software, and to
18 // permit persons to whom the Software is furnished to do so, subject to
19 // the following conditions:
20 // 
21 // The above copyright notice and this permission notice shall be
22 // included in all copies or substantial portions of the Software.
23 // 
24 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
25 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
26 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
27 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
28 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
29 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
30 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
31 //
32
33 using System.Runtime.InteropServices;
34
35 namespace System.Drawing.Imaging {
36
37         [StructLayout (LayoutKind.Sequential)]
38         public sealed class MetaHeader {
39
40                 // field order match: http://wvware.sourceforge.net/caolan/ora-wmf.html
41                 // for WMFHEAD structure
42                 private short file_type;
43                 private short header_size;
44                 private short version;
45                 private int file_size;
46                 private short num_of_objects;
47                 private int max_record_size;
48                 private short num_of_params;
49
50
51                 public MetaHeader ()
52                 {
53                 }
54
55
56                 public short HeaderSize {
57                         get { return header_size; }
58                         set { header_size = value; }
59                 }
60                 
61                 public int MaxRecord {
62                         get { return max_record_size; }
63                         set { max_record_size = value; }
64                 }
65                 
66                 public short NoObjects {
67                         get { return num_of_objects; }
68                         set { num_of_objects = value; }
69                 }
70                 
71                 public short NoParameters {
72                         get { return num_of_params; }
73                         set { num_of_params = value; }
74                 }
75                 
76                 public int Size {
77                         get { return file_size; }
78                         set { file_size = value; }
79                 }
80
81                 public short Type {
82                         get { return file_type; }
83                         set { file_type = value; }
84                 }
85
86                 public short Version {
87                         get { return version; }
88                         set { version = value; }
89                 }
90         }
91 }