class CCL::JsonUtils::TransformStream

class TransformStream:
    public CCL::Unknown,
    public CCL::ITransformStream
{
public:
    // fields

    CLASS_INTERFACE2 (IStream, ITransformStream, Unknown) private SharedPtr <IStream> targetStream;
    bool toBinary;

    // construction

    TransformStream (bool toBinary);

    // methods

    void CCL_API setTargetStream (IStream* targetStream);
    void CCL_API flush ();
    int CCL_API write (const void* buffer, int size);
    int CCL_API read (void* buffer, int size);
    int64 CCL_API tell ();
    tbool CCL_API isSeekable () const;
    int64 CCL_API seek (int64 pos, int mode);
};

Inherited Members

public:
    // enums

    enum OpenMode;
    enum SeekMode;

    // methods

    virtual tresult CCL_API queryInterface (UIDRef iid, void** ptr) = 0;
    virtual unsigned int CCL_API retain () = 0;
    virtual unsigned int CCL_API release () = 0;
    Unknown& operator = (const Unknown&);
    unsigned int getRetainCount () const;
    virtual int CCL_API read (void* buffer, int size) = 0;
    virtual int CCL_API write (const void* buffer, int size) = 0;
    virtual int64 CCL_API tell () = 0;
    virtual tbool CCL_API isSeekable () const = 0;
    virtual int64 CCL_API seek (int64 pos, int mode) = 0;
    IStream bool rewind ();
    virtual void CCL_API setTargetStream (IStream* targetStream) = 0;
    virtual void CCL_API flush () = 0;