Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/externals/g4tools/include/tools/rroot/tree_index

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Diff markup

Differences between /externals/g4tools/include/tools/rroot/tree_index (Version 11.3.0) and /externals/g4tools/include/tools/rroot/tree_index (Version 11.0.p1)


  1 // Copyright (C) 2010, Guy Barrand. All rights      1 // Copyright (C) 2010, Guy Barrand. All rights reserved.
  2 // See the file tools.license for terms.            2 // See the file tools.license for terms.
  3                                                     3 
  4 #ifndef tools_rroot_tree_index                      4 #ifndef tools_rroot_tree_index
  5 #define tools_rroot_tree_index                      5 #define tools_rroot_tree_index
  6                                                     6 
  7 #include "named"                                    7 #include "named"
  8                                                     8 
  9 namespace tools {                                   9 namespace tools {
 10 namespace rroot {                                  10 namespace rroot {
 11                                                    11 
 12 class tree_index : public virtual iro {            12 class tree_index : public virtual iro {
 13   static const std::string& s_store_class() {      13   static const std::string& s_store_class() {
 14     static const std::string s_v("TTreeIndex")     14     static const std::string s_v("TTreeIndex");
 15     return s_v;                                    15     return s_v;
 16   }                                                16   }
 17 public:                                            17 public:
 18   static const std::string& s_class() {            18   static const std::string& s_class() {
 19     static const std::string s_v("tools::rroot     19     static const std::string s_v("tools::rroot::tree_index");
 20     return s_v;                                    20     return s_v;
 21   }                                                21   }
 22 public: //iro                                      22 public: //iro
 23   virtual void* cast(const std::string& a_clas     23   virtual void* cast(const std::string& a_class) const {
 24     if(void* p = cmp_cast<tree_index>(this,a_c     24     if(void* p = cmp_cast<tree_index>(this,a_class)) return p;
 25     return 0;                                      25     return 0;
 26   }                                                26   }
 27   virtual const std::string& s_cls() const {re     27   virtual const std::string& s_cls() const {return s_class();}
 28 public:                                            28 public:
 29   static cid id_class() {return branch_cid();}     29   static cid id_class() {return branch_cid();}
 30   virtual void* cast(cid a_class) const {          30   virtual void* cast(cid a_class) const {
 31     if(void* p = cmp_cast<tree_index>(this,a_c     31     if(void* p = cmp_cast<tree_index>(this,a_class)) {return p;}
 32     else return 0;                                 32     else return 0;
 33   }                                                33   }
 34 public:                                            34 public:
 35   virtual iro* copy() const {return new tree_i     35   virtual iro* copy() const {return new tree_index(*this);}
 36   virtual bool stream(buffer& a_buffer) {          36   virtual bool stream(buffer& a_buffer) {
 37     uint32 startpos = a_buffer.length();           37     uint32 startpos = a_buffer.length();
 38                                                    38 
 39     unsigned int _s,_c;                        <<  39     unsigned int s,c;
 40     short v;                                       40     short v;
 41     if(!a_buffer.read_version(v,_s,_c)) return <<  41     if(!a_buffer.read_version(v,s,c)) return false;
 42     //::printf("debug : tree_index::stream : v     42     //::printf("debug : tree_index::stream : version %d count %d\n",v,c);
 43                                                    43 
 44     if(!virtual_index_stream(a_buffer)) return     44     if(!virtual_index_stream(a_buffer)) return false;
 45                                                    45 
 46     std::string ds;                                46     std::string ds;
 47     if(!a_buffer.read(ds)) return false;           47     if(!a_buffer.read(ds)) return false;           //fMajorName
 48     //::printf("debug : tree_index::stream : f     48     //::printf("debug : tree_index::stream : fMajorName \"%s\"\n",ds.c_str());
 49     if(!a_buffer.read(ds)) return false;           49     if(!a_buffer.read(ds)) return false;           //fMinorName
 50     //::printf("debug : tree_index::stream : f     50     //::printf("debug : tree_index::stream : fMinorName \"%s\"\n",ds.c_str());
 51                                                    51 
 52     int64 m_n;                                     52     int64 m_n;
 53     if(!a_buffer.read(m_n)) return false; //fN     53     if(!a_buffer.read(m_n)) return false; //fN
 54     //::printf("debug : tree_index::stream : f     54     //::printf("debug : tree_index::stream : fN %ld\n",m_n);
 55                                                    55 
 56     if(!dummy_array_stream<int64>(a_buffer,int     56     if(!dummy_array_stream<int64>(a_buffer,int(m_n))) return false;
 57     if(!dummy_array_stream<int64>(a_buffer,int     57     if(!dummy_array_stream<int64>(a_buffer,int(m_n))) return false;
 58                                                    58 
 59     //FIXME : still problem with this streamer     59     //FIXME : still problem with this streamer.
 60                                                    60 
 61     a_buffer.set_offset(startpos+_c+sizeof(uns <<  61     a_buffer.set_offset(startpos+c+sizeof(unsigned int));
 62                                                    62 
 63     if(!a_buffer.check_byte_count(_s,_c,s_stor <<  63     if(!a_buffer.check_byte_count(s,c,s_store_class())) return false;
 64                                                    64 
 65     //::printf("debug : tree_index::stream : o     65     //::printf("debug : tree_index::stream : ok\n");
 66     return true;                                   66     return true;
 67   }                                                67   }
 68                                                    68 
 69 public:                                            69 public:
 70   tree_index()                                     70   tree_index()
 71   {                                                71   {
 72 #ifdef TOOLS_MEM                                   72 #ifdef TOOLS_MEM
 73     mem::increment(s_class().c_str());             73     mem::increment(s_class().c_str());
 74 #endif                                             74 #endif
 75   }                                                75   }
 76   virtual ~tree_index(){                           76   virtual ~tree_index(){
 77 #ifdef TOOLS_MEM                                   77 #ifdef TOOLS_MEM
 78     mem::decrement(s_class().c_str());             78     mem::decrement(s_class().c_str());
 79 #endif                                             79 #endif
 80   }                                                80   }
 81 protected:                                         81 protected:
 82   tree_index(const tree_index& a_from):iro(a_f     82   tree_index(const tree_index& a_from):iro(a_from){}
 83   tree_index& operator=(const tree_index&){ret     83   tree_index& operator=(const tree_index&){return *this;}
 84 protected:                                         84 protected:
 85   static const std::string& virtual_index_s_st     85   static const std::string& virtual_index_s_store_class() {
 86     static const std::string s_v("TVirtualInde     86     static const std::string s_v("TVirtualIndex");
 87     return s_v;                                    87     return s_v;
 88   }                                                88   }
 89   bool virtual_index_stream(buffer& a_buffer){     89   bool virtual_index_stream(buffer& a_buffer){
 90     short v;                                       90     short v;
 91     unsigned int _s,_c;                        <<  91     unsigned int s, c;
 92     if(!a_buffer.read_version(v,_s,_c)) return <<  92     if(!a_buffer.read_version(v,s,c)) return false;
 93     //::printf("debug : virtual_index::stream      93     //::printf("debug : virtual_index::stream : version %d count %d\n",v,c);
 94     std::string ds;                                94     std::string ds;
 95     if(!Named_stream(a_buffer,ds,ds)) return f     95     if(!Named_stream(a_buffer,ds,ds)) return false;
 96     if(!a_buffer.check_byte_count(_s,_c,virtua <<  96     if(!a_buffer.check_byte_count(s,c,virtual_index_s_store_class()))
 97       return false;                                97       return false;
 98     return true;                                   98     return true;
 99   }                                                99   }
100                                                   100 
101 };                                                101 };
102                                                   102 
103 }}                                                103 }}
104                                                   104 
105 #endif                                            105 #endif