-- 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.ComponentModel.IComponent.Ref is access;
with type MSSyst.IDisposable.Ref is access;
with type MSSyst.IServiceProvider.Ref is access;
with type MSSyst.ComponentModel.IListSource.Ref is access;
with type MSSyst.Data.DataColumnChangeEventHandler.Ref is access;
with type MSSyst.EventHandler.Ref is access;
with type MSSyst.Data.DataRowChangeEventHandler.Ref is access;
with type MSSyst.Object.Ref is access;
with type MSSyst.String.Ref is access;
with type MSSyst.Data.DataRelationCollection.Ref is access;
with type MSSyst.Data.DataColumnCollection.Ref is access;
with type MSSyst.Data.ConstraintCollection.Ref is access;
with type MSSyst.ComponentModel.IContainer.Ref is access;
with type MSSyst.Data.DataSet.Ref is access;
with type MSSyst.Data.DataView.Ref is access;
with type MSSyst.Data.PropertyCollection.Ref is access;
with type MSSyst.Globalization.CultureInfo.Ref is access;
with type MSSyst.Data.DataColumn.Ref_array is access;
with type MSSyst.Data.DataRowCollection.Ref is access;
with type MSSyst.ComponentModel.ISite.Ref is access;
with type MSSyst.Data.DataRow.Ref_array is access;
with type MSSyst.Type_k.Ref is access;
with type MSSyst.Data.DataRow.Ref is access;
with type MSSyst.Object.Ref_array is access;
with MSSyst.Data.DataViewRowState;
with MSSyst.ComponentModel.MarshalByValueComponent;
package MSSyst.Data.DataTable is
   type Typ;
   type Ref is access all Typ'Class;
   type Ref_addrof is access all Ref;
   type Arr1 is array(Natural range <>) of Ref;
   type Ref_Array is access all Arr1;
   type Ref_Array_addrof is access all Ref_Array;
   type Typ(
         I_IComponent : MSSyst.ComponentModel.IComponent.Ref;
         I_IDisposable : MSSyst.IDisposable.Ref;
         I_IServiceProvider : MSSyst.IServiceProvider.Ref;
         I_IListSource : MSSyst.ComponentModel.IListSource.Ref
      ) is new MSSyst.ComponentModel.MarshalByValueComponent.Typ(
         I_IComponent => I_IComponent,
         I_IDisposable => I_IDisposable,
         I_IServiceProvider => I_IServiceProvider
      ) with record
      null;
   end record;
   function new_DataTable(
      This : Ref := null) return Ref;
   function new_DataTable(
      This : Ref := null;
      tableName : MSSyst.String.Ref) return Ref;
   procedure AcceptChanges(
      This : access Typ);
   procedure add_ColumnChanged(
      This : access Typ;
      value : MSSyst.Data.DataColumnChangeEventHandler.Ref);
   procedure add_ColumnChanging(
      This : access Typ;
      value : MSSyst.Data.DataColumnChangeEventHandler.Ref);
   procedure add_RowChanged(
      This : access Typ;
      value : MSSyst.Data.DataRowChangeEventHandler.Ref);
   procedure add_RowChanging(
      This : access Typ;
      value : MSSyst.Data.DataRowChangeEventHandler.Ref);
   procedure add_RowDeleted(
      This : access Typ;
      value : MSSyst.Data.DataRowChangeEventHandler.Ref);
   procedure add_RowDeleting(
      This : access Typ;
      value : MSSyst.Data.DataRowChangeEventHandler.Ref);
   procedure BeginInit(
      This : access Typ);
   procedure BeginLoadData(
      This : access Typ);
   procedure Clear(
      This : access Typ);
   function Clone(
      This : access Typ) return MSSyst.Data.DataTable.Ref;
   function Compute(
      This : access Typ;
      expression : MSSyst.String.Ref;
      filter : MSSyst.String.Ref) return MSSyst.Object.Ref;
   procedure EndInit(
      This : access Typ);
   procedure EndLoadData(
      This : access Typ);
   function get_CaseSensitive(
      This : access Typ) return Standard.Boolean;
   function get_ChildRelations(
      This : access Typ) return MSSyst.Data.DataRelationCollection.Ref;
   function get_Columns(
      This : access Typ) return MSSyst.Data.DataColumnCollection.Ref;
   function get_Constraints(
      This : access Typ) return MSSyst.Data.ConstraintCollection.Ref;
   function get_DataSet(
      This : access Typ) return MSSyst.Data.DataSet.Ref;
   function get_DefaultView(
      This : access Typ) return MSSyst.Data.DataView.Ref;
   function get_DisplayExpression(
      This : access Typ) return MSSyst.String.Ref;
   function get_ExtendedProperties(
      This : access Typ) return MSSyst.Data.PropertyCollection.Ref;
   function get_HasErrors(
      This : access Typ) return Standard.Boolean;
   function get_Locale(
      This : access Typ) return MSSyst.Globalization.CultureInfo.Ref;
   function get_MinimumCapacity(
      This : access Typ) return Integer;
   function get_Namespace(
      This : access Typ) return MSSyst.String.Ref;
   function get_ParentRelations(
      This : access Typ) return MSSyst.Data.DataRelationCollection.Ref;
   function get_Prefix(
      This : access Typ) return MSSyst.String.Ref;
   function get_PrimaryKey(
      This : access Typ) return MSSyst.Data.DataColumn.Ref_array;
   function get_Rows(
      This : access Typ) return MSSyst.Data.DataRowCollection.Ref;
   function get_TableName(
      This : access Typ) return MSSyst.String.Ref;
   function GetErrors(
      This : access Typ) return MSSyst.Data.DataRow.Ref_array;
   procedure ImportRow(
      This : access Typ;
      row : MSSyst.Data.DataRow.Ref);
   function LoadDataRow(
      This : access Typ;
      values : MSSyst.Object.Ref_array;
      fAcceptChanges : Standard.Boolean) return MSSyst.Data.DataRow.Ref;
   function NewRow(
      This : access Typ) return MSSyst.Data.DataRow.Ref;
   procedure RejectChanges(
      This : access Typ);
   procedure remove_ColumnChanged(
      This : access Typ;
      value : MSSyst.Data.DataColumnChangeEventHandler.Ref);
   procedure remove_ColumnChanging(
      This : access Typ;
      value : MSSyst.Data.DataColumnChangeEventHandler.Ref);
   procedure remove_RowChanged(
      This : access Typ;
      value : MSSyst.Data.DataRowChangeEventHandler.Ref);
   procedure remove_RowChanging(
      This : access Typ;
      value : MSSyst.Data.DataRowChangeEventHandler.Ref);
   procedure remove_RowDeleted(
      This : access Typ;
      value : MSSyst.Data.DataRowChangeEventHandler.Ref);
   procedure remove_RowDeleting(
      This : access Typ;
      value : MSSyst.Data.DataRowChangeEventHandler.Ref);
   procedure Reset(
      This : access Typ);
   function Select_k(
      This : access Typ;
      filterExpression : MSSyst.String.Ref;
      sort : MSSyst.String.Ref;
      recordStates : MSSyst.Data.DataViewRowState.Valuetype) return MSSyst.Data.DataRow.Ref_array;
   function Select_k(
      This : access Typ;
      filterExpression : MSSyst.String.Ref;
      sort : MSSyst.String.Ref) return MSSyst.Data.DataRow.Ref_array;
   function Select_k(
      This : access Typ) return MSSyst.Data.DataRow.Ref_array;
   function Select_k(
      This : access Typ;
      filterExpression : MSSyst.String.Ref) return MSSyst.Data.DataRow.Ref_array;
   procedure set_CaseSensitive(
      This : access Typ;
      value : Standard.Boolean);
   procedure set_DisplayExpression(
      This : access Typ;
      value : MSSyst.String.Ref);
   procedure set_Locale(
      This : access Typ;
      value : MSSyst.Globalization.CultureInfo.Ref);
   procedure set_MinimumCapacity(
      This : access Typ;
      value : Integer);
   procedure set_Namespace(
      This : access Typ;
      value : MSSyst.String.Ref);
   procedure set_Prefix(
      This : access Typ;
      value : MSSyst.String.Ref);
   procedure set_PrimaryKey(
      This : access Typ;
      value : MSSyst.Data.DataColumn.Ref_array);
   procedure set_TableName(
      This : access Typ;
      value : MSSyst.String.Ref);
   function ToString(
      This : access Typ) return MSSyst.String.Ref;
private
   pragma Convention(MSIL,Typ);
   pragma MSIL_Constructor(new_DataTable);
   pragma Import(MSIL,AcceptChanges,"AcceptChanges");
   pragma Import(MSIL,add_ColumnChanged,"add_ColumnChanged");
   pragma Import(MSIL,add_ColumnChanging,"add_ColumnChanging");
   pragma Import(MSIL,add_RowChanged,"add_RowChanged");
   pragma Import(MSIL,add_RowChanging,"add_RowChanging");
   pragma Import(MSIL,add_RowDeleted,"add_RowDeleted");
   pragma Import(MSIL,add_RowDeleting,"add_RowDeleting");
   pragma Import(MSIL,BeginInit,"BeginInit");
   pragma Import(MSIL,BeginLoadData,"BeginLoadData");
   pragma Import(MSIL,Clear,"Clear");
   pragma Import(MSIL,Clone,"Clone");
   pragma Import(MSIL,Compute,"Compute");
   pragma Import(MSIL,EndInit,"EndInit");
   pragma Import(MSIL,EndLoadData,"EndLoadData");
   pragma Import(MSIL,get_CaseSensitive,"get_CaseSensitive");
   pragma Import(MSIL,get_ChildRelations,"get_ChildRelations");
   pragma Import(MSIL,get_Columns,"get_Columns");
   pragma Import(MSIL,get_Constraints,"get_Constraints");
   pragma Import(MSIL,get_DataSet,"get_DataSet");
   pragma Import(MSIL,get_DefaultView,"get_DefaultView");
   pragma Import(MSIL,get_DisplayExpression,"get_DisplayExpression");
   pragma Import(MSIL,get_ExtendedProperties,"get_ExtendedProperties");
   pragma Import(MSIL,get_HasErrors,"get_HasErrors");
   pragma Import(MSIL,get_Locale,"get_Locale");
   pragma Import(MSIL,get_MinimumCapacity,"get_MinimumCapacity");
   pragma Import(MSIL,get_Namespace,"get_Namespace");
   pragma Import(MSIL,get_ParentRelations,"get_ParentRelations");
   pragma Import(MSIL,get_Prefix,"get_Prefix");
   pragma Import(MSIL,get_PrimaryKey,"get_PrimaryKey");
   pragma Import(MSIL,get_Rows,"get_Rows");
   pragma Import(MSIL,get_TableName,"get_TableName");
   pragma Import(MSIL,GetErrors,"GetErrors");
   pragma Import(MSIL,ImportRow,"ImportRow");
   pragma Import(MSIL,LoadDataRow,"LoadDataRow");
   pragma Import(MSIL,NewRow,"NewRow");
   pragma Import(MSIL,RejectChanges,"RejectChanges");
   pragma Import(MSIL,remove_ColumnChanged,"remove_ColumnChanged");
   pragma Import(MSIL,remove_ColumnChanging,"remove_ColumnChanging");
   pragma Import(MSIL,remove_RowChanged,"remove_RowChanged");
   pragma Import(MSIL,remove_RowChanging,"remove_RowChanging");
   pragma Import(MSIL,remove_RowDeleted,"remove_RowDeleted");
   pragma Import(MSIL,remove_RowDeleting,"remove_RowDeleting");
   pragma Import(MSIL,Reset,"Reset");
   pragma Import(MSIL,Select_k,"Select");
   pragma Import(MSIL,set_CaseSensitive,"set_CaseSensitive");
   pragma Import(MSIL,set_DisplayExpression,"set_DisplayExpression");
   pragma Import(MSIL,set_Locale,"set_Locale");
   pragma Import(MSIL,set_MinimumCapacity,"set_MinimumCapacity");
   pragma Import(MSIL,set_Namespace,"set_Namespace");
   pragma Import(MSIL,set_Prefix,"set_Prefix");
   pragma Import(MSIL,set_PrimaryKey,"set_PrimaryKey");
   pragma Import(MSIL,set_TableName,"set_TableName");
   pragma Import(MSIL,ToString,"ToString");
end MSSyst.Data.DataTable;
pragma Extensions_Allowed(Off);
pragma Import(MSIL,MSSyst.Data.DataTable,
   ".ver 1:0:5000:0 .publickeytoken=( 96 9d b8 05 3d 33 22 ac )",
   "[System.Data]System.Data.DataTable");
