Qore Programming Language  1.7.0
OutputStreamWrapper Class Reference

Implements the private data for all subclasses of Qore::OutputStream implemented in the Qore language. More...

#include <OutputStreamWrapper.h>

Inheritance diagram for OutputStreamWrapper:
Collaboration diagram for OutputStreamWrapper:

Public Member Methods

 OutputStreamWrapper (QoreObject *self)
 Constructor. More...
 
virtual DLLLOCAL void close (ExceptionSink *xsink) override
 Flushes any buffered (unwritten) bytes, closes the output stream and releases resources. More...
 
virtual DLLLOCAL const char * getName () override
 Returns the name of the class. More...
 
DLLLOCAL bool isClosed () override
 Returns true is the stream has been closed. More...
 
virtual DLLLOCAL void write (const void *ptr, int64 count, ExceptionSink *xsink) override
 Writes bytes to the output stream. More...
 
- Public Member Methods inherited from OutputStream
DLLLOCAL bool check (ExceptionSink *xsink)
 Checks that the current thread is the same as when the instance was created or assigned via unassignThread() and reassignThread() and that the stream has not yet been closed. More...
 
DLLLOCAL void closeHelper (ExceptionSink *xsink)
 Helper method that checks that the current thread is the same as when the instance was created, that the stream has not yet been closed and calls close(). More...
 
DLLLOCAL void writeHelper (const BinaryNode *data, ExceptionSink *xsink)
 Helper method that checks that the current thread is the same as when the instance was created, that the stream has not yet been closed and calls write(). More...
 
DLLLOCAL void writeHelper (const QoreString *data, ExceptionSink *xsink)
 Helper method that checks that the current thread is the same as when the instance was created, that the stream has not yet been closed and calls write(). More...
 
- Public Member Methods inherited from StreamBase
DLLLOCAL bool check (ExceptionSink *xsink)
 Checks that the current thread is the same as when the instance was created or assigned via unassignThread() and reassignThread() and that the stream has not yet been closed. More...
 
DLLLOCAL int getThreadId ()
 Get currently assigned thread id.
 
DLLLOCAL void reassignThread (ExceptionSink *xsink)
 Reassigns current thread as thread used for stream manipulation, see check() More...
 
DLLLOCAL void unassignThread (ExceptionSink *xsink)
 Unassigns current thread as thread used for stream manipulation, see check() More...
 
- Public Member Methods inherited from AbstractPrivateData
virtual DLLLOCAL void deref ()
 decrements the reference count of the object without the possibility of throwing a Qore-language exception
 
virtual DLLLOCAL void deref (ExceptionSink *xsink)
 decrements the reference count of the object More...
 
DLLLOCAL void ref () const
 increments the reference count of the object
 
- Public Member Methods inherited from QoreReferenceCounter
DLLEXPORT QoreReferenceCounter ()
 creates the reference counter object
 
DLLEXPORT QoreReferenceCounter (const QoreReferenceCounter &old)
 creates a new object with a reference count of 1 More...
 
DLLEXPORT ~QoreReferenceCounter ()
 destroys the reference counter object
 
DLLEXPORT bool is_unique () const
 returns true if the reference count is 1 More...
 
DLLEXPORT int reference_count () const
 gets the reference count More...
 
DLLEXPORT bool ROdereference () const
 atomically decrements the reference count More...
 
DLLEXPORT void ROreference () const
 atomically increments the reference count
 

Additional Inherited Members

- Private Member Methods inherited from OutputStream
 OutputStream ()=default
 Constructor.
 
- Private Member Methods inherited from StreamBase
 StreamBase ()
 Constructor.
 
- Private Member Methods inherited from AbstractPrivateData
virtual DLLLOCAL ~AbstractPrivateData ()
 as these objects are reference counted, the destructor should be called only when the reference count = 0 and not manually
 

Detailed Description

Implements the private data for all subclasses of Qore::OutputStream implemented in the Qore language.

Constructor & Destructor Documentation

◆ OutputStreamWrapper()

OutputStreamWrapper::OutputStreamWrapper ( QoreObject self)
inline

Constructor.

Parameters
selfthe QoreObject this private data is associated with

Member Function Documentation

◆ close()

virtual DLLLOCAL void OutputStreamWrapper::close ( ExceptionSink xsink)
inlineoverridevirtual

Flushes any buffered (unwritten) bytes, closes the output stream and releases resources.

Parameters
xsinkthe exception sink

Implements OutputStream.

◆ getName()

virtual DLLLOCAL const char* OutputStreamWrapper::getName ( )
inlineoverridevirtual

Returns the name of the class.

Returns
the name of the class

Implements StreamBase.

◆ isClosed()

DLLLOCAL bool OutputStreamWrapper::isClosed ( )
inlineoverridevirtual

Returns true is the stream has been closed.

Returns
true is the stream has been closed

Implements OutputStream.

◆ write()

virtual DLLLOCAL void OutputStreamWrapper::write ( const void *  ptr,
int64  count,
ExceptionSink xsink 
)
inlineoverridevirtual

Writes bytes to the output stream.

Parameters
ptrthe source buffer to write to the stream
countthe number of bytes to write, must be >= 0
xsinkthe exception sink

Implements OutputStream.


The documentation for this class was generated from the following file: