-- Autogenerated by MSIL2Ada v. 2
-- By: Martin C. Carlisle
--     Department of Computer Science
--     US Air Force Academy
--     carlislem@acm.org
pragma Extensions_Allowed(On);
with MSSyst.Object;
with MSIL_Types;
use MSIL_Types;
with type MSSyst.IComparable.Ref is access;
with type MSSyst.IFormattable.Ref is access;
with type MSSyst.IConvertible.Ref is access;
with type MSSyst.Object.Ref is access;
with type MSSyst.Type_k.Ref is access;
with MSSyst.TypeCode;
with type MSSyst.String.Ref is access;
with type MSSyst.IFormatProvider.Ref is access;
package MSSyst.Drawing.Drawing2D.HatchStyle is
   type ValueType is (
      Min,
      Vertical,
      ForwardDiagonal,
      BackwardDiagonal,
      Max,
      DiagonalCross,
      Percent05,
      Percent10,
      Percent20,
      Percent25,
      Percent30,
      Percent40,
      Percent50,
      Percent60,
      Percent70,
      Percent75,
      Percent80,
      Percent90,
      LightDownwardDiagonal,
      LightUpwardDiagonal,
      DarkDownwardDiagonal,
      DarkUpwardDiagonal,
      WideDownwardDiagonal,
      WideUpwardDiagonal,
      LightVertical,
      LightHorizontal,
      NarrowVertical,
      NarrowHorizontal,
      DarkVertical,
      DarkHorizontal,
      DashedDownwardDiagonal,
      DashedUpwardDiagonal,
      DashedHorizontal,
      DashedVertical,
      SmallConfetti,
      LargeConfetti,
      ZigZag,
      Wave,
      DiagonalBrick,
      HorizontalBrick,
      Weave,
      Plaid,
      Divot,
      DottedGrid,
      DottedDiamond,
      Shingle,
      Trellis,
      Sphere,
      SmallGrid,
      SmallCheckerBoard,
      LargeCheckerBoard,
      OutlinedDiamond,
      SolidDiamond);
   pragma Convention (MSIL, ValueType);
   for ValueType use (
      Min =>  0,
      Vertical =>  1,
      ForwardDiagonal =>  2,
      BackwardDiagonal =>  3,
      Max =>  4,
      DiagonalCross =>  5,
      Percent05 =>  6,
      Percent10 =>  7,
      Percent20 =>  8,
      Percent25 =>  9,
      Percent30 =>  10,
      Percent40 =>  11,
      Percent50 =>  12,
      Percent60 =>  13,
      Percent70 =>  14,
      Percent75 =>  15,
      Percent80 =>  16,
      Percent90 =>  17,
      LightDownwardDiagonal =>  18,
      LightUpwardDiagonal =>  19,
      DarkDownwardDiagonal =>  20,
      DarkUpwardDiagonal =>  21,
      WideDownwardDiagonal =>  22,
      WideUpwardDiagonal =>  23,
      LightVertical =>  24,
      LightHorizontal =>  25,
      NarrowVertical =>  26,
      NarrowHorizontal =>  27,
      DarkVertical =>  28,
      DarkHorizontal =>  29,
      DashedDownwardDiagonal =>  30,
      DashedUpwardDiagonal =>  31,
      DashedHorizontal =>  32,
      DashedVertical =>  33,
      SmallConfetti =>  34,
      LargeConfetti =>  35,
      ZigZag =>  36,
      Wave =>  37,
      DiagonalBrick =>  38,
      HorizontalBrick =>  39,
      Weave =>  40,
      Plaid =>  41,
      Divot =>  42,
      DottedGrid =>  43,
      DottedDiamond =>  44,
      Shingle =>  45,
      Trellis =>  46,
      Sphere =>  47,
      SmallGrid =>  48,
      SmallCheckerBoard =>  49,
      LargeCheckerBoard =>  50,
      OutlinedDiamond =>  51,
      SolidDiamond =>  52);
   type ValueType_Arr is array (Natural range <>) of ValueType; -- start at 0
   type ValueType_Array is access all ValueType_Arr;
   type ValueType_addrof is access all ValueType;
   type ValueType_array_addrof is access all ValueType_Array;
   Horizontal : constant Valuetype := Min;
   LargeGrid : constant Valuetype := Max;
   Cross : constant Valuetype := Max;
   function CompareTo(
      This : Valuetype;
      target : MSSyst.Object.Ref) return Integer;
   function Equals(
      This : Valuetype;
      obj : MSSyst.Object.Ref) return Standard.Boolean;
   function GetHashCode(
      This : Valuetype) return Integer;
   function GetType(
      This : Valuetype) return MSSyst.Type_k.Ref;
   function GetTypeCode(
      This : Valuetype) return MSSyst.TypeCode.Valuetype;
   function ToString(
      This : Valuetype;
      format : MSSyst.String.Ref) return MSSyst.String.Ref;
   function ToString(
      This : Valuetype) return MSSyst.String.Ref;
   function ToString(
      This : Valuetype;
      format : MSSyst.String.Ref;
      provider : MSSyst.IFormatProvider.Ref) return MSSyst.String.Ref;
   function ToString(
      This : Valuetype;
      provider : MSSyst.IFormatProvider.Ref) return MSSyst.String.Ref;
private
   pragma Import(MSIL,CompareTo,"CompareTo");
   pragma Import(MSIL,Equals,"Equals");
   pragma Import(MSIL,GetHashCode,"GetHashCode");
   pragma Import(MSIL,GetType,"GetType");
   pragma Import(MSIL,GetTypeCode,"GetTypeCode");
   pragma Import(MSIL,ToString,"ToString");
end MSSyst.Drawing.Drawing2D.HatchStyle;
pragma Extensions_Allowed(Off);
pragma Import(MSIL,MSSyst.Drawing.Drawing2D.HatchStyle,
   ".ver 1:0:3300:0 .publickeytoken=( b0 3f 5f 7f 11 d5 0a 3a )",
   "[System.Drawing]System.Drawing.Drawing2D.HatchStyle");
