Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

AxPipe::CFilterBlock Class Reference

A buffering filter class returning chunks of requested size. More...

#include <AxPipe.h>

Inheritance diagram for AxPipe::CFilterBlock:

Inheritance graph
[legend]
Collaboration diagram for AxPipe::CFilterBlock:

Collaboration graph
[legend]
List of all members.

Protected Member Functions

CSegReadBlock (size_t cb)
 Attempt to get a segment of a requested size.


Detailed Description

A buffering filter class returning chunks of requested size.

Definition at line 507 of file AxPipe.h.


Member Function Documentation

CSeg * AxPipe::CFilterBlock::ReadBlock size_t  cb  )  [protected]
 

Attempt to get a segment of a requested size.

Always get the amount requested if possible. Return less than requested if EOS is detected. Can return NULL. Cannot return zero-length For this type of filter, honoring and handling flush-requests do not really make sense. Use a regular CFilter or CPipe if you need do do that. Asking for zero bytes means that we'll take what we get, right now we don't care about how much we get.

Parameters:
cb The number of bytes we want in the returned segment.
Returns:
A segment with the request number of bytes, or less if eos, or NULL if no data at all.

Definition at line 239 of file CFilter.cpp.

References _T, AxPipe::CSeg::Clone(), AxPipe::CSeg::Drop(), AxPipe::ERROR_CODE_GENERIC, AxPipe::CFilterByte::GetNextSeg(), AxPipe::CSeg::Len(), AxPipe::CSeg::PtrRd(), AxPipe::CSeg::PtrWr(), AxPipe::CSeg::Release(), and AxPipe::CError::SetError().


The documentation for this class was generated from the following files:
Generated on Mon Feb 2 13:19:21 2004 for AxPipe by doxygen 1.3.5