with GNATCOM.Dispinterface;

package MSHTML.ISVGLength_Interface is

   type ISVGLength_Type is
     new GNATCOM.Dispinterface.Dispinterface_Type with null record;

   procedure Initialize (This : in out ISVGLength_Type);

   function Pointer (This : ISVGLength_Type)
     return Pointer_To_ISVGLength;

   procedure Attach (This    : in out ISVGLength_Type;
                     Pointer : in     Pointer_To_ISVGLength);

   procedure Put_unitType
     (This : ISVGLength_Type;
      p    : Interfaces.C.short);

   function Get_unitType
     (This : ISVGLength_Type)
     return Interfaces.C.short;

   procedure Put_value
     (This : ISVGLength_Type;
      p    : Interfaces.C.C_float);

   function Get_value
     (This : ISVGLength_Type)
     return Interfaces.C.C_float;

   procedure Put_valueInSpecifiedUnits
     (This : ISVGLength_Type;
      p    : Interfaces.C.C_float);

   function Get_valueInSpecifiedUnits
     (This : ISVGLength_Type)
     return Interfaces.C.C_float;

   procedure Put_valueAsString
     (This : ISVGLength_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_valueAsString
     (This : ISVGLength_Type)
     return GNATCOM.Types.BSTR;

   procedure newValueSpecifiedUnits
     (This                  : ISVGLength_Type;
      unitType              : Interfaces.C.short;
      valueInSpecifiedUnits : Interfaces.C.C_float);

   procedure convertToSpecifiedUnits
     (This     : ISVGLength_Type;
      unitType : Interfaces.C.short);

end MSHTML.ISVGLength_Interface;

