Qore Programming Language  1.12.0
Transform Class Referenceabstract

Interface for private data of transformations. More...

#include <Transform.h>

Inheritance diagram for Transform:
Collaboration diagram for Transform:

Public Member Methods

virtual std::pair< int64, int64apply (const void *src, int64 srcLen, void *dst, int64 dstLen, ExceptionSink *xsink)=0
 Applies the transformation. More...
 
virtual DLLLOCAL size_t inputBufferSize ()
 returns the default input buffer size for the object
 
virtual DLLLOCAL size_t outputBufferSize ()
 returns the default output buffer size for the object
 
- 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
 

Private Member Methods

 Transform ()=default
 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

Interface for private data of transformations.

Member Function Documentation

◆ apply()

virtual std::pair<int64, int64> Transform::apply ( const void *  src,
int64  srcLen,
void *  dst,
int64  dstLen,
ExceptionSink xsink 
)
pure virtual

Applies the transformation.

Parameters
srcpointer to source data or nullptr for flushing when no more input data is available
srcLenthe number of bytes in the src buffer
dstpointer to destination buffer
dstLenthe number of bytes that can be written to dst
xsinkthe exception sink
Returns
a pair (rc, wc) where rc is the number of bytes read from src and wc is the number of bytes written to dst

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