LCIO  02.17
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
lcrdr.cc
Go to the documentation of this file.
1 #include "CPPFORT/lcrdr.h"
2 
3 #include "lcio.h"
4 #include "Exceptions.h"
5 #include "IOIMPL/LCFactory.h"
6 #include "IMPL/LCRunHeaderImpl.h"
7 #include "IMPL/LCEventImpl.h"
8 #include "IMPL/LCTOOLS.h"
9 #include <iostream>
10 
11 using namespace lcio ;
12 
13 
16  return reinterpret_cast<PTRTYPE>(lcReader) ;
17 }
18 
19 int lcrdrdelete(PTRTYPE reader){
20  LCReader* lcReader = reinterpret_cast<LCReader*>( (reader) ) ;
21  delete lcReader ;
22  return LCIO::SUCCESS ;
23 }
24 
25 int lcrdropen(PTRTYPE reader, const char* filename ){
26  try{
27  LCReader* lcReader = reinterpret_cast<LCReader*>(reader) ;
28  lcReader->open( filename ) ;
29  }catch(...){ return LCIO::ERROR ; }
30  return LCIO::SUCCESS ;
31 }
32 
33 int lcrdrclose(PTRTYPE reader){
34  try{
35  LCReader* lcReader = reinterpret_cast<LCReader*>(reader) ;
36  lcReader->close() ;
37  }catch(...){ return LCIO::ERROR ; }
38  return LCIO::SUCCESS ;
39 }
40 
41 int lcrdrreadstream(PTRTYPE reader, int maxRecord){
42  try{
43  LCReader* lcReader = reinterpret_cast<LCReader*>(reader) ;
44  lcReader->readStream( maxRecord ) ;
45  }catch(...){ return LCIO::ERROR ; }
46  return LCIO::SUCCESS ;
47 }
48 
49 PTRTYPE lcrdrreadnextrunheader(PTRTYPE reader, int accessMode){
50  LCReader* rdr = reinterpret_cast<LCReader*>(reader) ;
51  return C2F_POINTER( LCRunHeader*, rdr->readNextRunHeader( accessMode ) ) ;
52 }
53 
54 PTRTYPE lcrdrreadnextevent(PTRTYPE reader, int accessMode){
55  LCReader* rdr = reinterpret_cast<LCReader*>(reader) ;
56  return C2F_POINTER( LCEvent*, rdr->readNextEvent( accessMode ) );
57 }
58 
59 PTRTYPE lcrdrreadevent(PTRTYPE reader, int runNumber, int evtNumber ){
60  LCReader* rdr = reinterpret_cast<LCReader*>(reader) ;
61  return C2F_POINTER( LCEvent*, rdr->readEvent( runNumber, evtNumber ) );
62 }
63 
64 int lcrdrskipnevents( PTRTYPE reader, int n ) {
65  LCReader* rdr = reinterpret_cast<LCReader*>(reader) ;
66  rdr->skipNEvents( n ) ;
67  return LCIO::SUCCESS ;
68 }
LCIO_DEPRECATED_CAPI PTRTYPE lcrdrcreate()
Header file for the f77-wrapper functions of the LCReader class.
Definition: lcrdr.cc:14
static LCFactory * getInstance()
Returns the instance of the factory.
Definition: LCFactory.cc:25
LCIO_DEPRECATED_CAPI int lcrdrreadstream(PTRTYPE reader, int maxRecord)
Definition: lcrdr.cc:41
LCIO_DEPRECATED_CAPI int lcrdrskipnevents(PTRTYPE reader, int n)
Definition: lcrdr.cc:64
virtual IO::LCReader * createLCReader(int lcReaderFlag=0)
Creates an LCReader object for the current persistency type.
Definition: LCFactory.cc:45
LCIO_DEPRECATED_CAPI PTRTYPE lcrdrreadevent(PTRTYPE reader, int runNumber, int evtNumber)
Definition: lcrdr.cc:59
long PTRTYPE
Fortran interface - define the length of pointers this has to made machine independent ...
Definition: cpointer.h:12
LCIO_DEPRECATED_CAPI int lcrdropen(PTRTYPE reader, const char *filename)
Definition: lcrdr.cc:25
LCIO_DEPRECATED_CAPI int lcrdrdelete(PTRTYPE reader)
Definition: lcrdr.cc:19
LCReader * lcReader
Definition: lsh.cc:78
LCIO_DEPRECATED_CAPI PTRTYPE lcrdrreadnextrunheader(PTRTYPE reader, int accessMode)
Definition: lcrdr.cc:49
LCIO_DEPRECATED_CAPI int lcrdrclose(PTRTYPE reader)
Definition: lcrdr.cc:33
#define C2F_POINTER(T, ptr)
Definition: cpointer.h:33
LCIO_DEPRECATED_CAPI PTRTYPE lcrdrreadnextevent(PTRTYPE reader, int accessMode)
Definition: lcrdr.cc:54