Lines Matching full:iobuffer
23 // IMPORTANT: Never re-use an IOBuffer after cancelling the IO operation that
36 // Instead, think of the underlying |char*| buffer contained by the IOBuffer
39 // Whenever you call an asynchronous operation that takes an IOBuffer,
43 // ==> The IOBuffer's data should NOT be manipulated, destroyed, or read
47 // an IOBuffer is cancelled, the caller should release their
48 // reference to this IOBuffer at the time of cancellation since
52 // takes an IOBuffer, and then delete that class (which generally will
53 // trigger cancellation), the IOBuffer which had been passed to Read() should
56 // This usage contract is assumed by any API which takes an IOBuffer, even
71 // reference counting we can add a reference to the IOBuffer and make sure
73 class NET_EXPORT IOBuffer : public base::RefCountedThreadSafe<IOBuffer> {
75 IOBuffer();
76 explicit IOBuffer(int buffer_size);
81 friend class base::RefCountedThreadSafe<IOBuffer>;
85 explicit IOBuffer(char* data);
87 virtual ~IOBuffer();
95 // argument to IO functions. Please keep using IOBuffer* for API declarations.
96 class NET_EXPORT IOBufferWithSize : public IOBuffer {
104 // constructor IOBuffer(char*) thus allowing subclass to use underlying
112 // This is a read only IOBuffer. The data is stored in a string and
113 // the IOBuffer interface does not provide a proper way to modify it.
114 class NET_EXPORT StringIOBuffer : public IOBuffer {
126 // This version wraps an existing IOBuffer and provides convenient functions
129 // DrainableIOBuffer is useful when you have an IOBuffer that contains data
130 // to be written progressively, and Write() function takes an IOBuffer rather
133 // // payload is the IOBuffer containing the data to be written.
137 // // Write() takes an IOBuffer. If it takes char*, we could
138 // // simply use the regular IOBuffer like payload->data() + offset.
143 class NET_EXPORT DrainableIOBuffer : public IOBuffer {
145 DrainableIOBuffer(IOBuffer* base, int size);
166 scoped_refptr<IOBuffer> base_;
188 class NET_EXPORT GrowableIOBuffer : public IOBuffer {
213 class NET_EXPORT PickledIOBuffer : public IOBuffer {
229 // This class allows the creation of a temporary IOBuffer that doesn't really
234 class NET_EXPORT WrappedIOBuffer : public IOBuffer {