#include <ByteStreamEncoder.h>
Inheritance diagram for Core::ByteStreamEncoder:
Public Member Functions | |
ByteStreamEncoder (CharacterEncoder *encoder) | |
virtual String * | className (void) const |
Answer receiver class name. | |
virtual Character * | decodeFrom (Stream *stream) |
virtual void | encodeTo (Stream *stream, Character *character) |
Protected Attributes | |
CharacterEncoder * | _encoder |
|
Definition at line 33 of file ByteStreamEncoder.cc. References _encoder. 00034 { 00035 _encoder = encoder; 00036 }
|
|
Answer receiver class name. Because there isn't any standard way to obtain class name this method comes to place. Every class should rewrite this method but many didn't (yet). Reimplemented from Core::StreamEncoder. Definition at line 39 of file ByteStreamEncoder.cc. 00040 { 00041 return new String("ByteStreamEncoder"); 00042 }
|
|
Reimplemented from Core::StreamEncoder. Definition at line 45 of file ByteStreamEncoder.cc. References _encoder, Core::CharacterEncoder::decode(), Core::Object::error(), Core::Stream::next(), and nil. 00046 { 00047 Object *object = stream->next(); 00048 if (object == nil) { 00049 /* There are no more items on the stream */ 00050 return nil; 00051 } 00052 00053 Integer *item = dynamic_cast<Integer *>(object); 00054 if (item == nil) { 00055 /* Read object is not an Integer instance => the stream is not binary */ 00056 error(new String("Incompatible stream."), new String(__PRETTY_FUNCTION__), stream); 00057 } 00058 return _encoder->decode(item); 00059 }
|
|
Reimplemented from Core::StreamEncoder. Definition at line 61 of file ByteStreamEncoder.cc. References _encoder, and Core::CharacterEncoder::encode().
|
|
Definition at line 39 of file ByteStreamEncoder.h. Referenced by ByteStreamEncoder(), decodeFrom(), and encodeTo(). |