41 virtual int putStr(
const char* msg,
int len ) = 0;
45 virtual int putS(
const char* msg ) = 0;
49 virtual int printf(
const char* msg ) = 0;
52 virtual int flush() = 0;
65 static const unsigned int bufsize = 65536;
68 void cpy2buf(
const char* msg,
size_t len ){
69 if( sz+len > bufsize ) buffer = (
char*) realloc( buffer, sz+len );
71 memcpy( &buffer[sz], msg, len );
85 buffer = (
char*) malloc(bufsize);
92 int putStr(
const char* msg,
int len ){
94 return FCGX_PutStr( msg, len, out );
96 int putS(
const char* msg ){
97 cpy2buf( msg, strlen(msg) );
98 return FCGX_PutS( msg, out );
100 int printf(
const char* msg ){
101 cpy2buf( msg, strlen(msg) );
102 return FCGX_FPrintF( out, msg );
105 return FCGX_FFlush( out );
123 int putStr(
const char* msg,
int len ){
124 return fwrite( (
void*) msg,
sizeof(
char), len, out );
126 int putS(
const char* msg ){
127 return fputs( msg, out );
129 int printf(
const char* msg ){
130 return fprintf( out,
"%s", msg );
133 return fflush( out );
Virtual base class for various writers.
Definition: Writer.h:31
virtual int printf(const char *msg)=0
Write out a string.
virtual int putS(const char *msg)=0
Write out a string.
virtual int flush()=0
Flush the output buffer.
File Writer Class.
Definition: Writer.h:113
~FCGIWriter()
Destructor.
Definition: Writer.h:90
virtual int putStr(const char *msg, int len)=0
Write out a binary string.
FCGI Writer Class.
Definition: Writer.h:59
FCGIWriter(FCGX_Stream *o)
Constructor.
Definition: Writer.h:83