Print

Print


Commit in lcio on rio_v00-00
rootio/instantLCIO.C+3-31.1.2.1 -> 1.1.2.2
src/cpp/include/RIO/RIOReader.h+3-31.1.2.1 -> 1.1.2.2
src/cpp/src/RIO/RIOReader.cc+35-231.1.2.1 -> 1.1.2.2
+41-29
3 modified files
..

lcio/rootio
instantLCIO.C 1.1.2.1 -> 1.1.2.2
diff -u -r1.1.2.1 -r1.1.2.2
--- instantLCIO.C	14 Sep 2009 13:50:47 -0000	1.1.2.1
+++ instantLCIO.C	14 Sep 2009 16:22:10 -0000	1.1.2.2
@@ -27,12 +27,12 @@
   IMPL::LCCollectionVec* col = new IMPL::LCCollectionVec ;
 
   IMPL::LCEventImpl* evt = new IMPL::LCEventImpl ;
-
+  evt->setEventNumber( 42 )  ;
 
 
   std::cout << " mcp pdg: " << mcp->getPDG() << std::endl ;
-  std::cout << " col #entries: " << col->getNumberOfEntries()  << std::endl ;
-  std::cout << " evt : " << evt << std::endl ;
+  //  std::cout << " col #entries: " << col->getNumberOfEntries()  << std::endl ;
+  std::cout << " evt : " << evt->getEventNumber()  << std::endl ;
 
 
 }

lcio/src/cpp/include/RIO
RIOReader.h 1.1.2.1 -> 1.1.2.2
diff -u -r1.1.2.1 -r1.1.2.2
--- RIOReader.h	14 Sep 2009 13:50:48 -0000	1.1.2.1
+++ RIOReader.h	14 Sep 2009 16:22:10 -0000	1.1.2.2
@@ -28,7 +28,7 @@
   /** Concrete implementation of LCWriter using ROOT I/O.
    * 
    * @author gaede
-   * @version $Id: RIOReader.h,v 1.1.2.1 2009/09/14 13:50:48 gaede Exp $
+   * @version $Id: RIOReader.h,v 1.1.2.2 2009/09/14 16:22:10 gaede Exp $
    */
   class RIOReader : public IO::LCReader {
     
@@ -168,9 +168,9 @@
     BranchVector _branches ;
     bool _haveBranches ; 
  
-    IOIMPL::LCEventIOImpl *_evtImpl ;
+    IMPL::LCEventImpl *_evtImpl ;
 
-    IOIMPL::LCRunHeaderIOImpl *_runImpl ;
+    IMPL::LCRunHeaderImpl *_runImpl ;
 
     std::set<IO::LCRunListener*> _runListeners ;
     std::set<IO::LCEventListener*> _evtListeners ;

lcio/src/cpp/src/RIO
RIOReader.cc 1.1.2.1 -> 1.1.2.2
diff -u -r1.1.2.1 -r1.1.2.2
--- RIOReader.cc	14 Sep 2009 13:50:48 -0000	1.1.2.1
+++ RIOReader.cc	14 Sep 2009 16:22:10 -0000	1.1.2.2
@@ -48,6 +48,8 @@
 #else
 #endif  
     
+    _evtImpl = new IMPL::LCEventImpl ;
+
     LCIOExceptionHandler::createInstance() ;
   }
 
@@ -220,19 +222,14 @@
     if( !_haveBranches ) {
       
 
-      // first we create a branch for the event (header) 
-      
-      TBranch* br = (TBranch*) _tree->GetBranch( "LCEvent" ) ;
-      
-      if( br != 0 ){  // branch allready exists -> update/append  mode 
-	
-	br->SetAddress( &_evtImpl ) ;
-	
-      } else {
-	
-	//FIXME: make split level and 'record size' parameters ....
-	_tree->Branch( "LCEvent"  , &_evtImpl , 16000, 2 );
-      }
+//       // first we create a branch for the event (header) 
+//       TBranch* br = (TBranch*) _tree->GetBranch( "LCEvent" ) ;
+//       if( br != 0 ){  // branch allready exists -> update/append  mode 
+// 	  br->SetAddress( &_evtImpl ) ;
+//       } else {
+// 	//FIXME: make split level and 'record size' parameters ....
+// 	_tree->Branch( "LCEvent"  , &_evtImpl , 16000, 2 );
+//       }
 
       // loop over all collections in first event ...
       typedef std::vector< std::string > StrVec ; 
@@ -319,30 +316,45 @@
 
     //------------------------------------------------------  
     
-    if( !_haveBranches ) {
       
       _entry ++ ;
 
       // read event header first
-      TBranch* br = (TBranch*) _tree->GetBranch( "LCEvent" ) ;
       
-      if( br == 0 ){  // branch allready exists -> update/append  mode 
+      TBranch* br = (TBranch*) _tree->GetBranch( "LCEvent" ) ;
       
-	throw IOException( std::string( "[RIOReader::readNextEvent()] cant open branch \"LCEvent\" " ) ) ;
+      if( br == 0 ){        
 	
+	throw IOException( std::string( "[RIOReader::readNextEvent()] cant open branch \"LCEvent\" " ) ) ;
       } 
-
-      br->SetAddress( &_evtImpl ) ;
       
+      br->SetAddress( &_evtImpl ) ;
+
+      Long64_t tentry =  _tree->LoadTree( _entry );
 
-      int nbyte = _tree->LoadTree( _entry );
+      int nbyte = br->GetEntry(tentry);
+
+      if( tentry < 0 ){
+
+	return 0 ; // EOF ?
+      }
+
+      std::cout << " tentry : " << tentry 
+		<< " _entry " << _entry  
+		<< "  eventnum " << _evtImpl->getEventNumber()  
+		<< " ncols: " << _evtImpl->getCollectionNames()->size() 
+		<< " nbyte: " << nbyte
+		<< " _evtImpl " << _evtImpl  
+		<< std::endl ;
 
-      std::cout << " nbyte : " << nbyte << " _entry " << _entry  << std::endl ;
       
-      setUpHandlers( _evtImpl ) ;
-    }    
+      if( !_haveBranches ) {
+
+	setUpHandlers( _evtImpl ) ;
+      }    
 
     
+    
     //------------------------------------------------------
 
     return _evtImpl ;      
CVSspam 0.2.8