------------------------------------------------------------------------------ -- -- -- XVIEW ADA LIBRARY COMPONENTS -- -- -- -- XV_BASE_PACKAGE -- -- -- -- S p e c -- -- -- -- Copyright (c) 1995 Andreas Almroth, All Rights Reserved -- -- -- -- The XVIEW ADA library is free software; you can redistribute it and/or -- -- modify it under terms of the GNU Library General Public License as -- -- published by the Free Software Foundation; either version 2, or (at your -- -- option) any later version. The XVIEW ADA library is distributed in the -- -- hope that it will be useful, but WITHOUT ANY WARRANTY; without even the -- -- implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -- -- See the GNU Library General Public License for more details. -- -- You should have received a copy of the GNU Library General Public -- -- License along with the XVIEW ADA library; see the file COPYING.LIB. If -- -- not, write to the Free Software Foundation, 675 Mass Ave, Cambridge, -- -- MA 02139, USA. -- -- -- ------------------------------------------------------------------------------ with Interfaces.C,Ada.command_line,text_io; use Ada.command_line,text_io; with Ada.Finalization; use Ada.Finalization; package xv_base_package is type Xv_object is new Integer range 0 .. Integer'Last; type Xv_opaque is new Integer range 0 .. Integer'Last; type Attr_attribute is new Integer range 0 .. Integer'Last; type Xv_pkg_ptr is access Integer; type String_ptr is access all String; type Strings is array (Positive range <>) of String_ptr; type Strings_Ptr is access all Strings; type callback_ptr is access function return Xv_opaque; type callback_noargs_ptr is access function return Xv_opaque; type IntegerPair is record X,Y : Integer; end record; NO_OBJECT_CREATED : exception; INVALID_OBJECT : exception; QUIT_PROGRAM : exception; type xv_base is new Controlled with private; type xv_base_ptr is access all xv_base; private type Xv_Base is new Controlled with record arg_count : Integer; argv0 : String(1..255); end record; procedure Initialize (V : in out Xv_Base); end xv_base_package;