with GNATCOM.Errors;

package body MSHTML.IEnumRegisterWordW_Interface is

   procedure Initialize (This : in out IEnumRegisterWordW_Type) is
   begin
      Set_IID (This, IID_IEnumRegisterWordW);
   end Initialize;

   function Pointer (This : IEnumRegisterWordW_Type)
     return Pointer_To_IEnumRegisterWordW
   is
   begin
      return To_Pointer_To_IEnumRegisterWordW (Address (This));
   end Pointer;

   procedure Attach (This    : in out IEnumRegisterWordW_Type;
                     Pointer : in     Pointer_To_IEnumRegisterWordW)
   is
   begin
      Attach (This, GNATCOM.IInterface.To_Pointer_To_IUnknown
              (Pointer.all'Address));
   end Attach;

   procedure Clone
     (This   : IEnumRegisterWordW_Type;
      ppEnum : Pointer_To_Pointer_To_IEnumRegisterWordW)
   is
   begin
      GNATCOM.Errors.Error_Check
        (Pointer (This).Vtbl.Clone
         (Pointer (This),
          ppEnum));

   end Clone;

   procedure Next
     (This           : IEnumRegisterWordW_Type;
      ulCount        : Interfaces.C.unsigned_long;
      rgRegisterWord : Pointer_To_u_MIDLuu_MIDL_itf_mshtml_0001_0042_0002;
      pcFetched      : GNATCOM.Types.Pointer_To_unsigned_long)
   is
   begin
      GNATCOM.Errors.Error_Check
        (Pointer (This).Vtbl.Next
         (Pointer (This),
          ulCount,
          rgRegisterWord,
          pcFetched));

   end Next;

   procedure reset
     (This : IEnumRegisterWordW_Type)
   is
   begin
      GNATCOM.Errors.Error_Check
        (Pointer (This).Vtbl.reset
         (Pointer (This)));

   end reset;

   procedure Skip
     (This    : IEnumRegisterWordW_Type;
      ulCount : Interfaces.C.unsigned_long)
   is
   begin
      GNATCOM.Errors.Error_Check
        (Pointer (This).Vtbl.Skip
         (Pointer (This),
          ulCount));

   end Skip;

end MSHTML.IEnumRegisterWordW_Interface;

