Package Name: java.io.pipedinputstream

Return to: Package List


with java.io.InputStream; use java.io.InputStream;
with java.io.PipedOutputStream; use java.io.PipedOutputStream;

package java.io.PipedInputStream is
    type PipedInputStream_Obj is new InputStream_Obj with null record;

    type PipedInputStream_Ptr is access all PipedInputStream_Obj'Class;
    function new_PipedInputStream(
        src : PipedOutputStream_Ptr;
        Obj : PipedInputStream_Ptr := null)

      return PipedInputStream_Ptr;
    procedure init_PipedInputStream(Obj : access PipedInputStream_Obj'Class);

    function new_PipedInputStream(Obj : PipedInputStream_Ptr := null) return PipedInputStream_Ptr;
    procedure connect(Obj : access PipedInputStream_Obj;

        src : PipedOutputStream_Ptr);

    function read(Obj : access PipedInputStream_Obj) return Integer;
    function read(Obj : access PipedInputStream_Obj;
        b : String;
        off : Integer;
        len : Integer)

      return Integer;

    procedure close(Obj : access PipedInputStream_Obj);
    -- The next two operations are from the class PipedOutputStream,
    -- and are here to avoid circularity
    function new_PipedOutputStream(
        snk : PipedInputStream_Ptr;
        Obj : PipedOutputStream_Ptr := null)

      return PipedOutputStream_Ptr;
    procedure connect_to_input(Obj : access PipedOutputStream_Obj'Class;

        snk : PipedInputStream_Ptr);
    pragma Import(Java, close);
    pragma Import(Java, connect);

    pragma Import(Java, read);
    pragma Import(Java_Constructor, init_PipedInputStream);

    pragma Import(Java_Constructor, new_PipedInputStream);
    pragma Import(Java, connect_to_input, "java/io/PipedOutputStream.connect");
    pragma Import(Java_Constructor, new_PipedOutputStream,

      "java/io/PipedOutputStream.");
end java.io.PipedInputStream;