pragma Style_Checks ("NM32766");
pragma Wide_Character_Encoding (Brackets);

---------------------------------------------------
--  This file has been generated automatically from
--  /wrkdirs/usr/ports/net/polyorb/work/polyorb-2.9.0/idls/CORBA_IDL/orb.idl
--  by IAC (IDL to Ada Compiler) 2.9.0 (rev. unknown).
---------------------------------------------------
--  NOTE: If you modify this file by hand, your
--  changes will be lost when you re-run the
--  IDL to Ada compiler.
---------------------------------------------------

with CORBA;
pragma Elaborate_All (CORBA);
with CORBA.Object;
with CORBA.Repository_Root.Container;
with PolyORB.Any;
with PolyORB.Types;
with PolyORB.Sequences.Unbounded.CORBA_Helper;
pragma Elaborate_All (PolyORB.Sequences.Unbounded.CORBA_Helper);

package CORBA.Repository_Root.Container.Helper is

   TC_Container : CORBA.TypeCode.Object;

   function From_Any
     (Item : CORBA.Any)
     return CORBA.Repository_Root.Container.Ref;

   function To_Any
     (Item : CORBA.Repository_Root.Container.Ref)
     return CORBA.Any;

   function Unchecked_To_Ref
     (The_Ref : CORBA.Object.Ref'Class)
     return CORBA.Repository_Root.Container.Ref;

   function To_Ref
     (The_Ref : CORBA.Object.Ref'Class)
     return CORBA.Repository_Root.Container.Ref;

   TC_Description : CORBA.TypeCode.Object;

   function From_Any
     (Item : CORBA.Any)
     return CORBA.Repository_Root.Container.Description;

   function To_Any
     (Item : CORBA.Repository_Root.Container.Description)
     return CORBA.Any;

   TC_IDL_SEQUENCE_CORBA_Container_Description : CORBA.TypeCode.Object;

   function From_Any
     (Item : CORBA.Any)
     return CORBA.Repository_Root.Container.IDL_SEQUENCE_CORBA_Container_Description.Sequence;

   function To_Any
     (Item : CORBA.Repository_Root.Container.IDL_SEQUENCE_CORBA_Container_Description.Sequence)
     return CORBA.Any;

   TC_DescriptionSeq : CORBA.TypeCode.Object;

   function From_Any
     (Item : CORBA.Any)
     return CORBA.Repository_Root.Container.DescriptionSeq;

   function To_Any
     (Item : CORBA.Repository_Root.Container.DescriptionSeq)
     return CORBA.Any;

   
   package Internals is

      procedure Initialize_Container;

      type Ptr_Ü_Description is
        access all CORBA.Repository_Root.Container.Description;

      type Content_Ü_Description is
        new PolyORB.Any.Aggregate_Content with record
            V : Ptr_Ü_Description;
         end record;

      function Get_Aggregate_Element
        (Acc : not null access Content_Ü_Description;
         Tc : PolyORB.Any.TypeCode.Object_Ptr;
         Index : PolyORB.Types.Unsigned_Long;
         Mech : not null access PolyORB.Any.Mechanism)
        return PolyORB.Any.Content'Class;

      function Get_Aggregate_Count
        (Acc : Content_Ü_Description)
        return PolyORB.Types.Unsigned_Long;

      procedure Set_Aggregate_Count
        (Acc : in out Content_Ü_Description;
         Count : PolyORB.Types.Unsigned_Long);

      function Unchecked_Get_V
        (Acc : not null access Content_Ü_Description)
        return PolyORB.Types.Address;

      function Clone
        (Acc : Content_Ü_Description;
         Into : PolyORB.Any.Content_Ptr := null)
        return PolyORB.Any.Content_Ptr;

      procedure Finalize_Value
        (Acc : in out Content_Ü_Description);

      function Wrap
        (X : access CORBA.Repository_Root.Container.Description)
        return PolyORB.Any.Content'Class;

      procedure Initialize_Description;

      function IDL_SEQUENCE_CORBA_Container_Description_Element_Wrap
        (X : access CORBA.Repository_Root.Container.Description)
        return PolyORB.Any.Content'Class;

      function Wrap
        (X : access CORBA.Repository_Root.Container.IDL_SEQUENCE_CORBA_Container_Description.Sequence)
        return PolyORB.Any.Content'Class;

      package IDL_SEQUENCE_CORBA_Container_Description_Helper is
        new CORBA.Repository_Root.Container.IDL_SEQUENCE_CORBA_Container_Description.CORBA_Helper
           (Element_From_Any => CORBA.Repository_Root.Container.Helper.From_Any,
            Element_To_Any => CORBA.Repository_Root.Container.Helper.To_Any,
            Element_Wrap => CORBA.Repository_Root.Container.Helper.Internals.IDL_SEQUENCE_CORBA_Container_Description_Element_Wrap);

      procedure Initialize_IDL_SEQUENCE_CORBA_Container_Description;

      procedure Initialize_DescriptionSeq;

   end Internals;

end CORBA.Repository_Root.Container.Helper;
