[Enterprise Extensions only]

InterfaceDef::base_interfaces

Overview The base_interface attribute is a list of all the interfaces from which the current interface directly inherits. The base_interface operations read/write the base_interface attribute of the target interface.
Original interface InterfaceDef Interface
Exceptions CORBA::SystemException


Intended Usage

Both Read and Write methods are supported, with parameters given below.

IDL Syntax

  attribute InterfaceDefSeq base_interfaces;

Read operations

Input parameters
None.
Return values
CORBA::InterfaceDefSeq *

A pointer is returned to a copy of the base_interfaces attribute. The memory associated with the returned value is owned by the caller and may be released by invoking CORBA::delete.

Write operations

Input parameters
CORBA::InterfaceDefSeq

The sequence defines the new list of InterfaceDefs from which the target interface will be changed to inherit.

Return values
None.

Example

  // C++
     // assume 'interface_1', 'interface_99', and 'interface_100'
     // have already been initialized . . .
     CORBA::InterfaceDef * interface_1;
     CORBA::InterfaceDef * interface_99;
     CORBA::InterfaceDef * interface_100;
 
     // establish a new list for the interface_1 inheritance
     CORBA::InterfaceDefSeq new_base_interfaces;
     new_base_interfaces.length (2);
     new_base_interfaces[0] = CORBA::InterfaceDef::_duplicate (interface_99);
     new_base_interfaces[1] = CORBA::InterfaceDef::_duplicate (interface_100);
 
     // change the base interfaces for interface_1
     interface_1-> base_interfaces (new_base_interfaces);
 
     // retrieve the 'base interfaces' attribute 
     CORBA::InterfaceDefSeq * returned_base_interfaces;
     returned_base_interfaces = interface_1-> base_interfaces ();