CMS 3D CMS Logo

StorageInputStream.h

Go to the documentation of this file.
00001 #ifndef CLASSLIB_STORAGE_INPUT_STREAM_H
00002 # define CLASSLIB_STORAGE_INPUT_STREAM_H
00003 
00004 //<<<<<< INCLUDES                                                       >>>>>>
00005 
00006 # include "classlib/iotools/InputStream.h"
00007 
00008 namespace lat {
00009 //<<<<<< PUBLIC DEFINES                                                 >>>>>>
00010 //<<<<<< PUBLIC CONSTANTS                                               >>>>>>
00011 //<<<<<< PUBLIC TYPES                                                   >>>>>>
00012 
00013 class Storage;
00014 
00015 //<<<<<< PUBLIC VARIABLES                                               >>>>>>
00016 //<<<<<< PUBLIC FUNCTIONS                                               >>>>>>
00017 //<<<<<< CLASS DECLARATIONS                                             >>>>>>
00018 
00019 class StorageInputStream : public InputStream
00020 {
00021 public:
00022     StorageInputStream (Storage *input);
00023     ~StorageInputStream (void);
00024 
00025     using InputStream::read;
00026     virtual IOSize      available (void);
00027     virtual IOSize      read (void *into, IOSize n);
00028     virtual IOSize      readv (IOBuffer *into, IOSize buffers);
00029     virtual IOSize      skip (IOSize n);
00030     virtual void        close (void);
00031     virtual void        reset (void);
00032 
00033 protected:
00034     Storage             *m_storage;     //< Actual input.
00035 };
00036 
00037 //<<<<<< INLINE PUBLIC FUNCTIONS                                        >>>>>>
00038 //<<<<<< INLINE MEMBER FUNCTIONS                                        >>>>>>
00039 
00040 } // namespace lat
00041 #endif // CLASSLIB_STORAGE_INPUT_STREAM_H

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