69 void write(
const uint8_t in[],
size_t length);
76 { write(in.data(), in.size()); }
82 void write(
const std::vector<uint8_t>& in)
83 { write(in.data(), in.size()); }
89 void write(
const std::string& in);
101 void write(uint8_t in);
108 void process_msg(
const uint8_t in[],
size_t length);
120 void process_msg(
const std::vector<uint8_t>& in);
126 void process_msg(
const std::string& in);
209 size_t peek(uint8_t output[],
size_t length,
220 size_t peek(uint8_t& output,
size_t offset,
226 size_t get_bytes_read()
const override;
231 size_t get_bytes_read(message_id msg)
const;
233 bool check_available(
size_t n)
override;
234 bool check_available_msg(
size_t n, message_id msg);
246 void set_default_msg(message_id msg);
252 message_id message_count()
const;
258 bool end_of_data()
const override;
278 BOTAN_DEPRECATED(
"Runtime modification of Pipe deprecated")
279 void prepend(
Filter* filt);
288 BOTAN_DEPRECATED("Runtime modification of
Pipe deprecated")
289 void append(
Filter* filt);
294 BOTAN_DEPRECATED("Runtime modification of
Pipe deprecated")
300 BOTAN_DEPRECATED("Runtime modification of
Pipe deprecated")
312 void append_filter(
Filter* filt);
323 void prepend_filter(
Filter* filt);
344 void do_append(
Filter* filt);
345 void do_prepend(
Filter* filt);
346 void find_endpoints(
Filter*);
347 void clear_endpoints(
Filter*);