Back to home page

EIC code displayed by LXR

 
 

    


Warning, /include/Geant4/tools/rroot/ifile is written in an unsupported language. File is not indexed.

0001 // Copyright (C) 2010, Guy Barrand. All rights reserved.
0002 // See the file tools.license for terms.
0003 
0004 #ifndef tools_rroot_ifile
0005 #define tools_rroot_ifile
0006 
0007 #include "seek"
0008 #include "../press_func"
0009 
0010 namespace tools {
0011 namespace rroot {
0012 
0013 class key;
0014 class streamer_info;
0015 
0016 class ifile {
0017 public:
0018   virtual ~ifile(){}
0019 public:
0020   virtual const std::string& path() const = 0;
0021 
0022   virtual bool verbose() const = 0;
0023   virtual std::ostream& out() const = 0;
0024   virtual bool byte_swap() const = 0;
0025   enum from {
0026     begin,
0027     current,
0028     end
0029   };
0030   virtual bool set_pos(seek = 0,from = begin) = 0;
0031   virtual bool read_buffer(char*,uint32) = 0;
0032 
0033   virtual bool unziper(char,decompress_func&) const = 0;
0034 
0035   virtual key& sinfos_key() = 0;
0036 
0037   virtual streamer_info* find_streamer_info(const std::string&) = 0;
0038 };
0039 
0040 }}
0041 
0042 #endif