CMS 3D CMS Logo

CheckedInputStream.h

Go to the documentation of this file.
00001 #ifndef CLASSLIB_CHECKED_INPUT_STREAM_H
00002 # define CLASSLIB_CHECKED_INPUT_STREAM_H
00003 
00004 //<<<<<< INCLUDES                                                       >>>>>>
00005 
00006 # include "classlib/sysapi/system.h"
00007 # include "classlib/iotools/FilterInputStream.h"
00008 
00009 namespace lat {
00010 //<<<<<< PUBLIC DEFINES                                                 >>>>>>
00011 //<<<<<< PUBLIC CONSTANTS                                               >>>>>>
00012 //<<<<<< PUBLIC TYPES                                                   >>>>>>
00013 
00014 class Checksum;
00015 
00016 //<<<<<< PUBLIC VARIABLES                                               >>>>>>
00017 //<<<<<< PUBLIC FUNCTIONS                                               >>>>>>
00018 //<<<<<< CLASS DECLARATIONS                                             >>>>>>
00019 
00020 class CheckedInputStream : public FilterInputStream
00021 {
00022 public:
00023     CheckedInputStream (InputStream *input, Checksum *validator);
00024     ~CheckedInputStream (void);
00025 
00026     using FilterInputStream::read;
00027     virtual IOSize      read (void *into, IOSize n);
00028     virtual IOSize      skip (IOSize n);
00029     virtual void        reset (void);
00030     virtual Checksum *  checksum (void) const;
00031 
00032 private:
00033     Checksum            *m_checksum;    //< Checksum calculator
00034 };
00035 
00036 //<<<<<< INLINE PUBLIC FUNCTIONS                                        >>>>>>
00037 //<<<<<< INLINE MEMBER FUNCTIONS                                        >>>>>>
00038 
00039 } // namespace lat
00040 #endif // CLASSLIB_CHECKED_INPUT_STREAM_H

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