common::XorCoder Class Reference
[Stream Module]

Koduje lub dekoduje zapisywane/odczytywane bajty XOR podany bajt lub ciąg bajtów. More...

#include <Stream.hpp>

Inheritance diagram for common::XorCoder:
common::OverlayStream common::Stream

List of all members.

Public Member Functions

 XorCoder (Stream *a_Stream, char KeyByte)
 XorCoder (Stream *a_Stream, const void *KeyData, size_t KeyLength)
 XorCoder (Stream *a_Stream, const string &Key)
virtual void Write (const void *Data, size_t Size)
 Zapisuje dane.
virtual size_t Read (void *Data, size_t Size)
 Odczytuje dane.
void Reset ()
 Resetuje liczniki tak żeby kodowanie i dekodowanie odbywało się od początku klucza.

Static Public Member Functions

static void Code (void *Out, const void *Data, size_t DataLength, const void *Key, size_t KeyLength)
 Po prostu przetwarza podane dane.
static void Code (string *Out, const string &Data, const string &Key)
 Po prostu przetwarza podane dane.
static void Code (wstring *Out, const wstring &Data, const wstring &Key)
 Po prostu przetwarza podane dane.

Detailed Description

Koduje lub dekoduje zapisywane/odczytywane bajty XOR podany bajt lub ciąg bajtów.

Mapuje bezpośrednio bajty na bajty strumienia do którego jest podłączony, nic nie buforuje, więc można operować też na strumieniu Stream.


Constructor & Destructor Documentation

common::XorCoder::XorCoder ( Stream a_Stream,
char  KeyByte 
)
common::XorCoder::XorCoder ( Stream a_Stream,
const void *  KeyData,
size_t  KeyLength 
)
common::XorCoder::XorCoder ( Stream a_Stream,
const string &  Key 
)

Member Function Documentation

static void common::XorCoder::Code ( wstring *  Out,
const wstring &  Data,
const wstring &  Key 
) [static]

Po prostu przetwarza podane dane.

static void common::XorCoder::Code ( string *  Out,
const string &  Data,
const string &  Key 
) [static]

Po prostu przetwarza podane dane.

static void common::XorCoder::Code ( void *  Out,
const void *  Data,
size_t  DataLength,
const void *  Key,
size_t  KeyLength 
) [static]

Po prostu przetwarza podane dane.

virtual size_t common::XorCoder::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::XorCoder::Reset (  )  [inline]

Resetuje liczniki tak żeby kodowanie i dekodowanie odbywało się od początku klucza.

virtual void common::XorCoder::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