C++ stream types that adapt stream types to C2paStream.
C++ stream types that adapt stream types to C2paStream.
The C2PA C API expects a C2paStream with four callbacks: reader, writer, seeker, flusher. The contract for each callback is:
- reader(context, buffer, size): read up to size bytes into buffer; return bytes read, or -1 on error (set errno).
- writer(context, buffer, size): write size bytes from buffer; return bytes written, or -1 on error (set errno).
- seeker(context, offset, whence): seek to offset (whence = Start/Current/End); return new position or -1 (set errno).
- flusher(context): flush; return 0 on success, -1 on error (set errno).