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