8 modified files
lcio/src/aid/IO
diff -u -r1.1.20.1 -r1.1.20.2
--- ILCFactory.aid 14 Nov 2008 13:21:49 -0000 1.1.20.1
+++ ILCFactory.aid 9 Dec 2008 11:32:31 -0000 1.1.20.2
@@ -1,8 +1,7 @@
package hep.lcio.io;
-@ifdef cpp
-@cpp{class LCReader;
-}
+@ifdef cpp
+@cpp{class LCReader; }
/**Factory to create LCWriter and Reader object for the known data
* formats, e.g. SIO. The implementation (LCFactory) will be a singleton class
@@ -13,32 +12,20 @@
*/
public interface ILCFactory {
-
-// /** Returns the instance of the factory.
-// * In the future we need to specify the data format here...
-// * This doesn't work for java as an interface can't have static members ...
-// */
- // this needs more thought ....
-// @ifdef cpp
-// @cpp{ static LCFactory* getInstance() ;
-// }
-// @else
-// public LCFactory getInstance() ;
-// @endif
-
-
-/**Creates an LCWriter object for the current persistency type.
- */
- public LCWriter* createLCWriter() ;
-
-/**Creates an LCReader object for the current persistency type.
- */
-@ifdef cpp
-@cpp{
- virtual LCReader * createLCReader(const bool) = 0;
-}
-@else
- public LCReader* createLCReader() ;
-@endif
-
+ /**Creates an LCWriter object for the current persistency type.
+ */
+ public LCWriter* createLCWriter() ;
+
+ /**Creates an LCReader object for the current persistency type.
+ */
+ public LCReader* createLCReader(int lcReaderFlag=0) ;
+
+ // @ifdef cpp
+ // @cpp{
+ // virtual LCReader * createLCReader(const bool) = 0;
+ // }
+ // @else
+ // public LCReader* createLCReader() ;
+ // @endif
+
}
lcio/src/aid/IO
diff -u -r1.13 -r1.13.16.1
--- LCReader.aid 21 Oct 2005 13:53:19 -0000 1.13
+++ LCReader.aid 9 Dec 2008 11:32:31 -0000 1.13.16.1
@@ -11,6 +11,15 @@
*/
public interface LCReader {
+ /** Configuration flags for the LCReader instance - to be used with LCFactory::createLCReader(). */
+@ifdef cpp
+@cpp{
+ static const int directAccess = 0x00000001 << 0 ;
+}@else
+ public static const int directAccess = 0x00000001 ;
+@endif
+
+
/** Opens a file for reading (read-only).
*
* @throws IOException
lcio/src/cpp/include/IOIMPL
diff -u -r1.2.18.1 -r1.2.18.2
--- LCFactory.h 14 Nov 2008 13:21:49 -0000 1.2.18.1
+++ LCFactory.h 9 Dec 2008 11:32:32 -0000 1.2.18.2
@@ -1,13 +1,6 @@
// -*- C++ -*-
-/**Factory to create LCWriter and Reader object for the known data
- * formats, e.g. SIO. Singleton class
- * that knows all concrete reader/writer implementations.
- *
- * @author gaede
- * @version Mar 10, 2003
- */
-#ifndef IOIMPL_LCFACTORY_H
-#define IOIMPL_LCFACTORY_H 1
+#ifndef IOIMPL_LCFactory_h
+#define IOIMPL_LCFactory_h 1
#include "IO/ILCFactory.h"
@@ -16,6 +9,13 @@
namespace IOIMPL {
+/**Factory to create LCWriter and Reader object for the known data
+ * formats, e.g. SIO. Singleton class
+ * that knows all concrete reader/writer implementations.
+ *
+ * @author gaede
+ * @version Mar 10, 2003
+ */
class LCFactory : public IO::ILCFactory {
@@ -38,10 +38,11 @@
*/
virtual IO::LCWriter * createLCWriter() ;
- /**Creates an LCReader object for the current persistency type.
+ /** Creates an LCReader object for the current persistency type.
+ * lcReaderFlag: configuration options for the LCReader object -
+ * combine multible options with '|'. So far only LCReader::directAccess.
*/
- virtual IO::LCReader * createLCReader(
- const bool readEventMap=false ) ;
+ virtual IO::LCReader * createLCReader(int lcReaderFlag=0 ) ;
private:
@@ -50,4 +51,4 @@
}; // class
} // namespace IOIMPL
-#endif /* ifndef IOIMPL_LCFACTORY_H */
+#endif /* ifndef IOIMPL_LCFactory_h */
lcio/src/cpp/include/SIO
diff -u -r1.25.6.1 -r1.25.6.2
--- SIOReader.h 14 Nov 2008 13:21:49 -0000 1.25.6.1
+++ SIOReader.h 9 Dec 2008 11:32:32 -0000 1.25.6.2
@@ -24,7 +24,7 @@
/** Concrete implementation of LCWriter using SIO.
*
* @author gaede
- * @version $Id: SIOReader.h,v 1.25.6.1 2008/11/14 13:21:49 engels Exp $
+ * @version $Id: SIOReader.h,v 1.25.6.2 2008/12/09 11:32:32 gaede Exp $
*/
class SIOReader : public IO::LCReader {
@@ -34,7 +34,7 @@
/** Default constructor.
*/
- SIOReader( const bool readEventMap=false ) ;
+ SIOReader( int lcReaderFlag=0 ) ;
// Destructor
virtual ~SIOReader() ;
lcio/src/cpp/src/EXAMPLE
diff -u -r1.16.4.1 -r1.16.4.2
--- anajob.cc 14 Nov 2008 13:21:49 -0000 1.16.4.1
+++ anajob.cc 9 Dec 2008 11:32:32 -0000 1.16.4.2
@@ -33,7 +33,6 @@
int nFiles = argc-1 ;
LCReader* lcReader = LCFactory::getInstance()->createLCReader() ;
- //LCReader* lcReader = LCFactory::getInstance()->createLCReader(LCIO::READ_EVENT_MAP) ;
// first we read the run information
lcio/src/cpp/src/EXAMPLE
diff -u -r1.10 -r1.10.4.1
--- dumpevent.cc 28 May 2008 14:02:09 -0000 1.10
+++ dumpevent.cc 9 Dec 2008 11:32:32 -0000 1.10.4.1
@@ -1,4 +1,5 @@
#include "lcio.h"
+#include <stdio.h>
#include "IO/LCReader.h"
#include "IMPL/LCTOOLS.h"
@@ -67,7 +68,11 @@
CellIDDecoder<CalorimeterHit>::setDefaultEncoding("M:3,S-1:3,I:9,J:9,K-1:6") ;
CellIDDecoder<RawCalorimeterHit>::setDefaultEncoding("M:3,S-1:3,I:9,J:9,K-1:6") ;
- LCReader* lcReader = LCFactory::getInstance()->createLCReader() ;
+ LCReader* lcReader ;
+ if ( getenv ("LCIO_DIRECT_ACCESS") !=0 )
+ lcReader = LCFactory::getInstance()->createLCReader(LCReader::directAccess) ;
+ else
+ lcReader = LCFactory::getInstance()->createLCReader() ;
LCEvent* evt(0) ;
lcio/src/cpp/src/IOIMPL
diff -u -r1.2.18.1 -r1.2.18.2
--- LCFactory.cc 14 Nov 2008 13:21:50 -0000 1.2.18.1
+++ LCFactory.cc 9 Dec 2008 11:32:32 -0000 1.2.18.2
@@ -41,10 +41,10 @@
return new SIOWriter ;
}
- LCReader * LCFactory::createLCReader(
- const bool readEventMap ) {
+ LCReader * LCFactory::createLCReader(int lcReaderFlag) {
+
// so far we just create SIO objects
- return new SIOReader( readEventMap );
+ return new SIOReader( lcReaderFlag );
}
lcio/src/cpp/src/SIO
diff -u -r1.51.4.1 -r1.51.4.2
--- SIOReader.cc 14 Nov 2008 13:21:50 -0000 1.51.4.1
+++ SIOReader.cc 9 Dec 2008 11:32:32 -0000 1.51.4.2
@@ -57,8 +57,8 @@
//#define DEBUG 1
- SIOReader::SIOReader( const bool readEventMap ) :
- _readEventMap( readEventMap )
+ SIOReader::SIOReader( int lcReaderFlag ) :
+ _readEventMap( lcReaderFlag & LCReader::directAccess )
// :
// _myFilenames(0),
// _currentFileIndex(0)
CVSspam 0.2.8