Specification of package Tgx.Ios.Memory_Ios







 ========================================================================= --
 ===                                                                   === --
 ===                 Top Graph'X CORBA Implementation                  === --
 ===                                                                   === --
 ===                 Copyright (c) 1996, Top Graph'X.                  === --
 ===                                                                   === --
 ===                     --- Copyright Notice ---                      === --
 ===                                                                   === --
 ===    This software is protected as an unpublished work under the    === --
 ===     Copyright Act of 1976.  All rights reserved.  Top Graph'X.    === --
 ===                                                                   === --
 ========================================================================= -- ;

with Tgx.Shared_Memory ;
package Tgx.Ios.Memory_Ios is
   subtype Service_Name is Standard.String (1 .. 3) ;
   Null_Service_Name : constant Service_Name := "   " ;

   type Memory_Connection is new Io_Connection with
   record
      Name      : Service_Name := Null_Service_Name ;
      Read      : Tgx.Shared_Memory.Channel_Id := 0 ;  Channel for reading
      Write     : Tgx.Shared_Memory.Channel_Id := 0 ;  Channel for writing
      Server_Id : Tgx.Shared_Memory.Channel_Id := 0 ;  Channel for the server
      Path      : Tgx.Shared_Memory.String_Pointer ;
      Area      : Tgx.Shared_Memory.Description ;
   end record ;

   type Memory_Access is access all Memory_Connection'class ;

   procedure Open (This : access Memory_Connection) ;

   procedure Close (This : access Memory_Connection) ;

   function Is_Alive (This : access Memory_Connection) return Boolean ;

   procedure Read ( This   : access Memory_Connection ;
                    Buffer : in System.Address ;
                    Number : in out Natural ) ;

   procedure Write ( This   : access Memory_Connection ;
                     Buffer : in System.Address ;
                     Number : in Natural ) ;

   function Bytes_Per_Io_Unit (This : access Memory_Connection)
      return Natural ;

   function Amount_Readable (This : access Memory_Connection)
      return Natural ;

    Returns the URL indicating the sending client
   function Url (Client   : access Memory_Connection)
      return Standard.String ;

   type Service_Connection is new Io_Server with
   record
      Name      : Service_Name ;
      Server_Id : Tgx.Shared_Memory.Channel_Id ;
      Path      : Tgx.Shared_Memory.String_Pointer ;
      Area      : Tgx.Shared_Memory.Description ;
   end record ;
   type Service_Access is access all Service_Connection'class ;

   procedure Open (This : access Service_Connection) ;

   procedure Close (This : access Service_Connection) ;

   procedure New_Connection ( Server   : access Service_Connection ;
                              No_Guard : in Boolean := True; 
                              Result   : in out Io_Connection_Access);

   function Url (Server : access Service_Connection) return Standard.String ;
end Tgx.Ios.Memory_Ios ;



List of definition uses










This page was generated by PrismTech's ada2html on Friday Mai 12 2006 16:18