Abstrakcyjna klasa bazowa strumieni danych binarnych. More...
#include <Stream.hpp>
Public Member Functions | |
| virtual | ~Stream () |
Zapisywanie | |
| virtual void | Write (const void *Data, size_t Size) |
| Zapisuje dane. | |
| virtual void | Flush () |
| template<typename T > | |
| void | WriteEx (const T &x) |
| Zapisuje dane, sama odczytuje rozmiar przekazanej zmiennej. | |
| void | WriteString1 (const string &s) |
| Zapisuje długość na 1B i łańcuch. | |
| void | WriteString1 (const char *s) |
| void | WriteString1 (const char *s, unsigned NumChars) |
| void | WriteString1 (const wstring &s) |
| void | WriteString1 (const wchar_t *s) |
| void | WriteString1 (const wchar_t *s, unsigned NumChars) |
| void | WriteString2 (const string &s) |
| Zapisuje długość na 2B i łańcuch. | |
| void | WriteString2 (const char *s) |
| void | WriteString2 (const char *s, unsigned NumChars) |
| void | WriteString2 (const wstring &s) |
| void | WriteString2 (const wchar_t *s) |
| void | WriteString2 (const wchar_t *s, unsigned NumChars) |
| void | WriteString4 (const string &s) |
| Zapisuje długość na 4B i łańcuch. | |
| void | WriteString4 (const char *s) |
| void | WriteString4 (const char *s, unsigned NumChars) |
| void | WriteString4 (const wstring &s) |
| void | WriteString4 (const wchar_t *s) |
| void | WriteString4 (const wchar_t *s, unsigned NumChars) |
| void | WriteStringF (const string &s) |
| Zapisuje łańcuch bez długości. | |
| void | WriteStringF (const wstring &s) |
| void | WriteBool (bool b) |
| Zapisuje wartość logiczną za pomocą jednego bajtu. | |
Odczytywanie | |
| virtual size_t | Read (void *Data, size_t MaxLength) |
| Odczytuje dane. | |
| virtual void | MustRead (void *Data, size_t Length) |
| Odczytuje tyle bajtów, ile się zażąda. | |
| virtual bool | End () |
| Tak samo jak MustRead(), ale sama odczytuje rozmiar przekazanej zmiennej. | |
| virtual size_t | Skip (size_t MaxLength) |
| Pomija co najwyżej podaną liczbę bajtów (chyba że wcześniej osiągnięto koniec). | |
| template<typename T > | |
| void | ReadEx (T *x) |
| Odczytuje dane, sama odczytuje rozmiar przekazanej zmiennej. | |
| void | ReadString1 (string *s) |
| Odczytuje łańcuch poprzedzony rozmiarem 1B. | |
| void | ReadString2 (string *s) |
| Odczytuje łańcuch poprzedzony rozmiarem 2B. | |
| void | ReadString4 (string *s) |
| Odczytuje łańcuch poprzedzony rozmiarem 4B. | |
| void | ReadStringF (string *s, size_t NumChars) |
| Odczytuje łańcuch bez zapisanego rozmiaru. | |
| void | ReadStringToEnd (string *s) |
| Odczytuje tyle znaków do łańcucha, ile się da do końca strumienia. | |
| void | ReadString1 (wstring *s) |
| Wersje powyższych funkcji dla Unicode. | |
| void | ReadString2 (wstring *s) |
| void | ReadString4 (wstring *s) |
| void | ReadStringF (wstring *s, size_t NumChars) |
| void | ReadStringToEnd (wstring *s) |
| void | ReadBool (bool *b) |
| Odczytuje wartość logiczną za pomocą jednego bajtu. | |
| void | MustSkip (size_t Length) |
| Pomija koniecznie podaną liczbę bajtów. | |
Kopiowanie | |
| size_t | CopyFrom (Stream *s, size_t Size) |
| Odczytuje podaną co najwyżej liczbę bajtów z podanego strumienia. | |
| void | MustCopyFrom (Stream *s, size_t Size) |
| Odczytuje dokładnie podaną liczbę bajtów z podanego strumienia. | |
| size_t | CopyFromToEnd (Stream *s) |
| Odczytuje dane do końca z podanego strumienia. | |
Abstrakcyjna klasa bazowa strumieni danych binarnych.
| virtual common::Stream::~Stream | ( | ) | [inline, virtual] |
| size_t common::Stream::CopyFrom | ( | Stream * | s, | |
| size_t | Size | |||
| ) |
Odczytuje podaną co najwyżej liczbę bajtów z podanego strumienia.
| size_t common::Stream::CopyFromToEnd | ( | Stream * | s | ) |
Odczytuje dane do końca z podanego strumienia.
| virtual bool common::Stream::End | ( | ) | [virtual] |
Tak samo jak MustRead(), ale sama odczytuje rozmiar przekazanej zmiennej.
Zwraca true, jeśli osiągnięto koniec strumienia (W oryginale: zgłasza błąd)
Reimplemented in common::FileStream, common::SeekableStream, common::NullStream, common::OverlayStream, common::BufferingStream, common::BinDecoder, common::HexDecoder, common::Base64Decoder, common::RingBuffer, common::ZlibDecompressionStream, common::GzipDecompressionStream, and common::GzipFileStream.
| virtual void common::Stream::Flush | ( | ) | [inline, virtual] |
Reimplemented in common::FileStream, common::OverlayStream, common::CounterOverlayStream, common::LimitOverlayStream, common::BufferingStream, common::MultiWriterStream, common::BinEncoder, common::HexEncoder, common::Base64Encoder, common::ZlibCompressionStream, common::GzipCompressionStream, and common::GzipFileStream.
| void common::Stream::MustCopyFrom | ( | Stream * | s, | |
| size_t | Size | |||
| ) |
Odczytuje dokładnie podaną liczbę bajtów z podanego strumienia.
Jeśli odczyta mniej, zgłasza błąd.
| virtual void common::Stream::MustRead | ( | void * | Data, | |
| size_t | Length | |||
| ) | [virtual] |
Odczytuje tyle bajtów, ile się zażąda.
Jeśli koniec pliku albo jeśli odczytano mniej, zgłasza błąd. (Można ją przeładować, ale nie trzeba - ma swoją wersję oryginalną)
Reimplemented in common::MemoryStream, common::VectorStream, common::StringStream, common::CounterOverlayStream, and common::RingBuffer.
| void common::Stream::MustSkip | ( | size_t | Length | ) |
Pomija koniecznie podaną liczbę bajtów.
Jeśli wcześniej osiągnięto koniec, zgłasza błąd.
| virtual size_t common::Stream::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)
| Size | Liczba bajtów do odczytania |
Reimplemented in common::FileStream, common::NullStream, common::MemoryStream, common::VectorStream, common::StringStream, common::CounterOverlayStream, common::LimitOverlayStream, common::BufferingStream, common::XorCoder, common::BinDecoder, common::HexDecoder, common::Base64Decoder, common::RingBuffer, common::ZlibDecompressionStream, common::GzipDecompressionStream, and common::GzipFileStream.
| void common::Stream::ReadBool | ( | bool * | b | ) |
Odczytuje wartość logiczną za pomocą jednego bajtu.
| void common::Stream::ReadEx | ( | T * | x | ) | [inline] |
Odczytuje dane, sama odczytuje rozmiar przekazanej zmiennej.
| void common::Stream::ReadString1 | ( | wstring * | s | ) |
Wersje powyższych funkcji dla Unicode.
| void common::Stream::ReadString1 | ( | string * | s | ) |
Odczytuje łańcuch poprzedzony rozmiarem 1B.
| void common::Stream::ReadString2 | ( | wstring * | s | ) |
| void common::Stream::ReadString2 | ( | string * | s | ) |
Odczytuje łańcuch poprzedzony rozmiarem 2B.
| void common::Stream::ReadString4 | ( | wstring * | s | ) |
| void common::Stream::ReadString4 | ( | string * | s | ) |
Odczytuje łańcuch poprzedzony rozmiarem 4B.
| void common::Stream::ReadStringF | ( | wstring * | s, | |
| size_t | NumChars | |||
| ) |
| void common::Stream::ReadStringF | ( | string * | s, | |
| size_t | NumChars | |||
| ) |
Odczytuje łańcuch bez zapisanego rozmiaru.
| void common::Stream::ReadStringToEnd | ( | wstring * | s | ) |
| void common::Stream::ReadStringToEnd | ( | string * | s | ) |
Odczytuje tyle znaków do łańcucha, ile się da do końca strumienia.
| virtual size_t common::Stream::Skip | ( | size_t | MaxLength | ) | [virtual] |
Pomija co najwyżej podaną liczbę bajtów (chyba że wcześniej osiągnięto koniec).
(Można ją przeładować, ale nie trzeba - ma swoją wersję oryginalną)
Reimplemented in common::SeekableStream, common::NullStream, common::BufferingStream, and common::RingBuffer.
| virtual void common::Stream::Write | ( | const void * | Data, | |
| size_t | Size | |||
| ) | [virtual] |
Zapisuje dane.
(W oryginale: zgłasza błąd)
Reimplemented in common::FileStream, common::NullStream, common::MemoryStream, common::VectorStream, common::StringStream, common::CounterOverlayStream, common::LimitOverlayStream, common::BufferingStream, common::MultiWriterStream, common::Hash_Calc, common::CRC32_Calc, common::MD5_Calc, common::XorCoder, common::BinEncoder, common::HexEncoder, common::Base64Encoder, common::RingBuffer, common::ZlibCompressionStream, common::GzipCompressionStream, and common::GzipFileStream.
| void common::Stream::WriteBool | ( | bool | b | ) |
Zapisuje wartość logiczną za pomocą jednego bajtu.
| void common::Stream::WriteEx | ( | const T & | x | ) | [inline] |
Zapisuje dane, sama odczytuje rozmiar przekazanej zmiennej.
| void common::Stream::WriteString1 | ( | const wchar_t * | s, | |
| unsigned | NumChars | |||
| ) |
| void common::Stream::WriteString1 | ( | const wchar_t * | s | ) |
| void common::Stream::WriteString1 | ( | const wstring & | s | ) |
| void common::Stream::WriteString1 | ( | const char * | s, | |
| unsigned | NumChars | |||
| ) |
| void common::Stream::WriteString1 | ( | const char * | s | ) |
| void common::Stream::WriteString1 | ( | const string & | s | ) |
Zapisuje długość na 1B i łańcuch.
Jeśli łańcuch za długi - błąd.
| void common::Stream::WriteString2 | ( | const wchar_t * | s, | |
| unsigned | NumChars | |||
| ) |
| void common::Stream::WriteString2 | ( | const wchar_t * | s | ) |
| void common::Stream::WriteString2 | ( | const wstring & | s | ) |
| void common::Stream::WriteString2 | ( | const char * | s, | |
| unsigned | NumChars | |||
| ) |
| void common::Stream::WriteString2 | ( | const char * | s | ) |
| void common::Stream::WriteString2 | ( | const string & | s | ) |
Zapisuje długość na 2B i łańcuch.
Jeśli łańcuch za długi - błąd.
| void common::Stream::WriteString4 | ( | const wchar_t * | s, | |
| unsigned | NumChars | |||
| ) |
| void common::Stream::WriteString4 | ( | const wchar_t * | s | ) |
| void common::Stream::WriteString4 | ( | const wstring & | s | ) |
| void common::Stream::WriteString4 | ( | const char * | s, | |
| unsigned | NumChars | |||
| ) |
| void common::Stream::WriteString4 | ( | const char * | s | ) |
| void common::Stream::WriteString4 | ( | const string & | s | ) |
Zapisuje długość na 4B i łańcuch.
| void common::Stream::WriteStringF | ( | const wstring & | s | ) |
| void common::Stream::WriteStringF | ( | const string & | s | ) |
Zapisuje łańcuch bez długości.
1.6.1