Lines Matching full:stream
19 procedure Close (Stream : in out Stream_Type) is
23 if Stream.Mode = Out_Stream or Stream.Mode = Duplex then
26 Flush (Stream, Finish);
28 Close (Stream.Writer);
31 if Stream.Mode = In_Stream or Stream.Mode = Duplex then
32 Close (Stream.Reader);
33 Free (Stream.Buffer);
42 (Stream : out Stream_Type;
78 Stream.Back := Back;
79 Stream.Mode := Mode;
82 Init_Filter (Stream.Writer, Back_Compressed);
83 Stream.Buffer_Size := Write_Buffer_Size;
85 Stream.Buffer_Size := 0;
89 Init_Filter (Stream.Reader, not Back_Compressed);
91 Stream.Buffer := new Buffer_Subtype;
92 Stream.Rest_First := Stream.Buffer'Last + 1;
93 Stream.Rest_Last := Stream.Buffer'Last;
102 (Stream : in out Stream_Type;
105 Buffer : Stream_Element_Array (1 .. Stream.Buffer_Size);
109 Flush (Stream.Writer, Buffer, Last, Mode);
111 Ada.Streams.Write (Stream.Back.all, Buffer (1 .. Last));
121 function Is_Open (Stream : Stream_Type) return Boolean is
123 return Is_Open (Stream.Reader) or else Is_Open (Stream.Writer);
131 (Stream : in out Stream_Type;
148 Ada.Streams.Read (Stream.Back.all, Item, Last);
153 Buffer => Stream.Buffer.all,
154 Rest_First => Stream.Rest_First,
155 Rest_Last => Stream.Rest_Last);
158 Read (Stream.Reader, Item, Last);
165 function Read_Total_In (Stream : in Stream_Type) return Count is
167 return Total_In (Stream.Reader);
174 function Read_Total_Out (Stream : in Stream_Type) return Count is
176 return Total_Out (Stream.Reader);
184 (Stream : in out Stream_Type;
196 Ada.Streams.Write (Stream.Back.all, Item);
201 Buffer_Size => Stream.Buffer_Size);
204 Write (Stream.Writer, Item, No_Flush);
211 function Write_Total_In (Stream : in Stream_Type) return Count is
213 return Total_In (Stream.Writer);
220 function Write_Total_Out (Stream : in Stream_Type) return Count is
222 return Total_Out (Stream.Writer);