Specification of package Corba.Object







 ========================================================================= --
 ===                                                                   === --
 ===                 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 Ada.Finalization ;

with Tgx.Ios ;

with Corba.Context;
with Corba.Nvlist;
with Corba.Request;
with Corba.Iop ;
with Corba.AbstractBase ;
pragma Elaborate_All (Corba.AbstractBase) ;
with Corba.Policy ;
package Corba.Object is
   type Ref is new Corba.AbstractBase.Ref with null record ;

   I InterfaceDef get_interface( );
   TGX: InterfaceDef transformed to Ref'class to avoid circularity
   TGX: but the value returned can be safely narrowed to InterfaceDef.Ref
   TGX: For non-OrbAda objects, the null reference may-be returned
   TGX: if no known Interface Repository is aware of the required interface
   function Get_Interface (Self : in Ref) return Ref'Class;

   TGX: Return the RepositoryId of the interface of the object
   TGX: Work for OrbAda and non OrbAda objects
   function Get_Interface_Id (Self : in Ref) return RepositoryId ;
   procedure Get_Interface_Id ( Self : in Ref ;
                                Id   : out RepositoryId) ;

   I boolean is_nil( );
   function Is_Nil(Self : in Ref) return Boolean;

   function Is_Null(Self : in Ref) return Boolean renames Is_Nil;

   I Object duplicate( );
   Note: not needed for assignment, just use :=
   TGX: Duplicate is to be replaced by assignment

   I void release( );
   procedure Release (Self : in out Ref) ;  Equivalent to: Self := Null_Ref ;
   TGX: Transform Self to a null reference 

   I boolean is_a(in string logical_type_id);
   TGX: returns False if no known Interface Repository can give the answer
   function Is_A ( Self            : in Ref ;
                   Logical_Type_Id : in Standard.String) return Boolean ;

   I boolean non_existent();
   function Non_Existent (Self : in Ref) return Boolean ;

   I unsigned_long hash(in unsigned_long maximum);
   function Hash ( Self    : in Ref ;
                   Maximum : in Unsigned_Long)  return Unsigned_Long ;

   I boolean is_equivalent(in Object other_object);
   function Is_Equivalent ( Self         : in Ref ;
                            Other_Object : in Ref'class) return Boolean ;

   I Status create_request( 
   I     in Context          ctx,
   I     in Identifier       operation,
   I     in NVList           arg_list,
   I     inout NamedValue    result,
   I     out Request         request,
   I     in Flags            req_flags
   I );
   procedure Create_Request
      ( Self      : in Ref;
        Ctx       : in Corba.Context.Object;
        Operation : in Identifier;
        Arg_List  : in Corba.Nvlist.Object;
        Result    : access Namedvalue;
        Request   : out Corba.Request.Object;
        Req_Flags : in Flags;
        Returns   : out Status);

   type Method_Val is new Corba.Unsigned_Short ;

   function Get_Policy ( Self        : in Ref;
                         Policy_Type : in PolicyType) return Corba.Policy.Ref;

    function Get_Domain_Managers (Self : in Ref)
       return Corba.Domainmanager.DomainManagerList;

   procedure Set_Policy_Overrides
      ( Self     : in Ref;
        Policies : in Corba.Policy.PolicyList;
        Set_Add  : in SetOverrideType);

   procedure Validate_Connection
      ( Self                  : in Ref;
        Inconsistent_Policies : out Corba.Policy.PolicyList;
        Result                : out Boolean ) ;

   TGX: to verify if the connection is (still) valid
   function Is_Connected (Self : in Ref) return Boolean ;

   procedure Iop_Read
      ( Stream : access Corba_Ios.Iop_Stream_Type ;
        Item   : out Ref ) ;

   procedure Iop_Write
      ( Stream : access Corba_Ios.Iop_Stream_Type ;
        Item   : in Ref ) ;


   TGX: Add visibility on null reference
   Null_Ref : constant Ref := ( Ada.Finalization.Controlled with
                                Ptr      => null,
                                Location => Corba.Iop.Collocated,
                                IOP      => null) ;

end Corba.Object;



List of definition uses










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