common::LimitOverlayStream Class Reference
[Stream Module]

Nakładka na strumień ograniczająca liczbę odczytywanych i zapisywanych bajtów. More...

#include <Stream.hpp>

Inheritance diagram for common::LimitOverlayStream:
common::OverlayStream common::Stream

List of all members.

Public Member Functions

 LimitOverlayStream (Stream *a_Stream, uint4 WriteLimit, uint4 ReadLimit)
virtual void Write (const void *Data, size_t Size)
 Zapisuje dane.
virtual size_t Read (void *Data, size_t Size)
 Odczytuje dane.
virtual void Flush ()
void SetWriteLimit (uint4 WriteLimit)
 Ustawia nowy limit.
void SetReadLimit (uint4 ReadLimit)
 Ustawia nowy limit.

Detailed Description

Nakładka na strumień ograniczająca liczbę odczytywanych i zapisywanych bajtów.

Jesli przekroczy limit podczas zapisywania, zapisuje ile się da i rzuca błąd zapisu. Jeśli przekroczy limit podczas odczytywania zachowuje się tak, jakby strumień osiągnął koniec.


Constructor & Destructor Documentation

common::LimitOverlayStream::LimitOverlayStream ( Stream a_Stream,
uint4  WriteLimit,
uint4  ReadLimit 
)

Member Function Documentation

virtual void common::LimitOverlayStream::Flush (  )  [virtual]

Reimplemented from common::OverlayStream.

virtual size_t common::LimitOverlayStream::Read ( void *  Data,
size_t  MaxLength 
) [virtual]

Odczytuje dane.

Jeśli osiągnięto koniec, funkcja nie zwraca błędu, a liczba odczytanych bajtów to 0. (W oryginale: zgłasza błąd)

Parameters:
Size Liczba bajtów do odczytania
Returns:
Zwraca liczbę bajtów, jakie udało się odczytać

Reimplemented from common::Stream.

void common::LimitOverlayStream::SetReadLimit ( uint4  ReadLimit  ) 

Ustawia nowy limit.

void common::LimitOverlayStream::SetWriteLimit ( uint4  WriteLimit  ) 

Ustawia nowy limit.

virtual void common::LimitOverlayStream::Write ( const void *  Data,
size_t  Size 
) [virtual]

Zapisuje dane.

(W oryginale: zgłasza błąd)

Reimplemented from common::Stream.


The documentation for this class was generated from the following file:

Generated on Wed Dec 16 20:44:55 2009 for CommonLib by  doxygen 1.6.1