CMS 3D CMS Logo

BufferOutputStream.h

Go to the documentation of this file.
00001 #ifndef CLASSLIB_BUFFER_OUTPUT_STREAM_H
00002 # define CLASSLIB_BUFFER_OUTPUT_STREAM_H
00003 
00004 //<<<<<< INCLUDES                                                       >>>>>>
00005 
00006 # include "classlib/iotools/FilterOutputStream.h"
00007 
00008 namespace lat {
00009 //<<<<<< PUBLIC DEFINES                                                 >>>>>>
00010 //<<<<<< PUBLIC CONSTANTS                                               >>>>>>
00011 //<<<<<< PUBLIC TYPES                                                   >>>>>>
00012 //<<<<<< PUBLIC VARIABLES                                               >>>>>>
00013 //<<<<<< PUBLIC FUNCTIONS                                               >>>>>>
00014 //<<<<<< CLASS DECLARATIONS                                             >>>>>>
00015 
00016 class BufferOutputStream : public FilterOutputStream
00017 {
00018 public:
00019     BufferOutputStream (OutputStream *output, IOSize bufsize = 0);
00020     ~BufferOutputStream (void);
00021 
00022     using FilterOutputStream::write;
00023     virtual IOSize      write (const void *from, IOSize n);
00024     virtual IOSize      flush (void);
00025     virtual void        finish (void);
00026     virtual void        close (void);
00027 
00028 protected:
00029     unsigned char       *m_buffer;
00030     unsigned char       *m_top;
00031     unsigned char       *m_limit;
00032 };
00033 
00034 //<<<<<< INLINE PUBLIC FUNCTIONS                                        >>>>>>
00035 //<<<<<< INLINE MEMBER FUNCTIONS                                        >>>>>>
00036 
00037 } // namespace lat
00038 #endif // CLASSLIB_BUFFER_OUTPUT_STREAM_H

Generated on Tue Jun 9 17:38:52 2009 for CMSSW by  doxygen 1.5.4