18 #ifndef _DECAF_IO_OUTPUTSTREAM_H
19 #define _DECAF_IO_OUTPUTSTREAM_H
81 virtual void write(
unsigned char c);
101 virtual void write(
const unsigned char* buffer,
int size);
127 virtual void write(
const unsigned char* buffer,
int size,
int offset,
int length);
136 virtual std::string toString()
const;
140 virtual void doWriteByte(
unsigned char value) = 0;
142 virtual void doWriteArray(
const unsigned char* buffer,
int size);
144 virtual void doWriteArrayBounded(
const unsigned char* buffer,
int size,
int offset,
int length);
153 return mutex.tryLock();
164 virtual void wait(
long long millisecs) {
165 mutex.wait(millisecs);
168 virtual void wait(
long long millisecs,
int nanos) {
169 mutex.wait(millisecs, nanos);
virtual void wait()
Waits on a signal from this object, which is generated by a call to Notify.
Definition: OutputStream.h:160
virtual void wait(long long millisecs, int nanos)
Waits on a signal from this object, which is generated by a call to Notify.
Definition: OutputStream.h:168
Mutex object that offers recursive support on all platforms as well as providing the ability to use t...
Definition: Mutex.h:39
virtual void notifyAll()
Signals the waiters on this object that it can now wake up and continue.
Definition: OutputStream.h:176
virtual void lock()
Locks the object.
Definition: OutputStream.h:148
virtual void unlock()
Unlocks the object.
Definition: OutputStream.h:156
virtual void wait(long long millisecs)
Waits on a signal from this object, which is generated by a call to Notify.
Definition: OutputStream.h:164
Interface for a class that implements the close method.
Definition: Closeable.h:30
virtual void notify()
Signals a waiter on this object that it can now wake up and continue.
Definition: OutputStream.h:172
#define DECAF_API
Definition: Config.h:29
Base interface for any class that wants to represent an output stream of bytes.
Definition: OutputStream.h:39
virtual bool tryLock()
Attempts to Lock the object, if the lock is already held by another thread than this method returns f...
Definition: OutputStream.h:152
The interface for all synchronizable objects (that is, objects that can be locked and unlocked)...
Definition: Synchronizable.h:37
A Flushable is a destination of data that can be flushed.
Definition: Flushable.h:34