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 );
70 memcpy( &buffer[sz], msg, len );
83 buffer = (
char*) malloc(bufsize);
90 int putStr(
const char* msg,
int len ){
92 return FCGX_PutStr( msg, len, out );
94 int putS(
const char* msg ){
95 cpy2buf( msg, strlen(msg) );
96 return FCGX_PutS( msg, out );
98 int printf(
const char* msg ){
99 cpy2buf( msg, strlen(msg) );
100 return FCGX_FPrintF( out, msg );
103 return FCGX_FFlush( out );
121 int putStr(
const char* msg,
int len ){
122 return fwrite( (
void*) msg,
sizeof(
char), len, out );
124 int putS(
const char* msg ){
125 return fputs( msg, out );
127 int printf(
const char* msg ){
128 return fprintf( out,
"%s", msg );
131 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:111
~FCGIWriter()
Destructor.
Definition: Writer.h:88
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:81