
"Carlo Wood" <carlo@alinoe.com> wrote in message news:20040831215546.GA15507@alinoe.com...
On Tue, Aug 31, 2004 at 12:45:30PM -0600, Jonathan Turkanis wrote:
pubsync is called, the contents of the buffer will be sent to the first filter in the chain, like so (assuming it's a 'buffered filter'):
filter_.write(buf, buf + n); [...] Yes, for the time being. If your ideas can eliminate copying further, I'd be glad to try to incorporate them. (But I haven't looked at your library yet.)
My idea then would involve the introduction of a 'message' object,
I was hoping to avoid that. At most, I'd want to introduce a category of 'message-aware' filters. In cases where copying is a performance bottleneck, you would make sure that all your filters are message-aware. I definitely wan't to keep the simpler interface as an option -- preferably the default option.
something that abstracts a contiguous piece of data with a finite size that can be processed as a unit. For example, one line of text in the case of text filters - or one packet of data when processing a UDP stream - or one binary packet that starts with an envelope/header followed by a payload etc.
<snip details> I'm planning to look at your code tonight. Could you take a quick glance at some of these links about the Apache filtering API and let me know if its similar to what you're talking about? 1. Filtering I/O in Apache 2.0, by Ryan Bloom, http://tinyurl.com/6p5r5 2. Other stuff on Apache filtering by Ryan Bloom, http://tinyurl.com/646os 3. Slide show about Apache Filtering, http://tinyurl.com/5a6b4 Best Regards, Jonathan