LCIO  02.17
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
lcwrt.cc
Go to the documentation of this file.
1 #include "CPPFORT/lcwrt.h"
2 
3 #include "lcio.h"
4 #include "IOIMPL/LCFactory.h"
5 #include "IMPL/LCRunHeaderImpl.h"
6 #include "IMPL/LCEventImpl.h"
7 #include <iostream>
8 
9 using namespace lcio ;
10 
11 #define LCWRITER_PNTR( writer ) if(! (writer) ) return 0 ; \
12 LCWriter* lcWriter = reinterpret_cast<LCWriter*>( (writer) ) ;
13 
14 
16  LCWriter* lcWriter = LCFactory::getInstance()->createLCWriter() ;
17  return reinterpret_cast<PTRTYPE>(lcWriter) ;
18 }
19 
20 int lcwrtdelete(PTRTYPE writer){
21  LCWRITER_PNTR( writer ) ;
22  delete lcWriter ;
23  return LCIO::SUCCESS ;
24 }
25 
26 int lcwrtopen(PTRTYPE writer, const char* filename, int writeMode ){
27  try{
28  LCWriter* wrt = reinterpret_cast<LCWriter*>( writer ) ;
29  wrt->open( filename , writeMode ) ;
30 
31  }catch(...){ return LCIO::ERROR ; }
32  return LCIO::SUCCESS ;
33 
34 }
35 
36 int lcwrtclose(PTRTYPE writer){
37  try{
38  LCWriter* wrt = reinterpret_cast<LCWriter*>( writer ) ;
39  wrt->close() ;
40  }catch(...){ return LCIO::ERROR ; }
41 
42  return LCIO::SUCCESS ;
43 }
44 
46  try{
47 
48  LCWriter* wrt = reinterpret_cast<LCWriter*>( writer ) ;
49  LCRunHeader* hdr = reinterpret_cast<LCRunHeader*>( header ) ;
50 
51  wrt->writeRunHeader( hdr ) ;
52 
53  }catch(...){ return LCIO::ERROR ; }
54 
55  return LCIO::SUCCESS ;
56 }
58 
59  try{
60 
61  LCWriter* wrt = reinterpret_cast<LCWriter*>( writer ) ;
62  LCEvent* evt = reinterpret_cast<LCEvent*>( event ) ;
63 
64  wrt->writeEvent( evt ) ;
65 
66  }catch(...){ return LCIO::ERROR ; }
67 
68  return LCIO::SUCCESS ;
69 }
const std::string & header(const EVENT::Vertex *)
operator for detailed output of a vertex object (e.g.
Definition: Operators.cc:2756
LCIO_DEPRECATED_CAPI int lcwrtopen(PTRTYPE writer, const char *filename, int writeMode)
Definition: lcwrt.cc:26
LCIO_DEPRECATED_CAPI int lcwrtwriteevent(PTRTYPE writer, PTRTYPE event)
Definition: lcwrt.cc:57
LCEvent * event
Definition: lsh.cc:80
long PTRTYPE
Fortran interface - define the length of pointers this has to made machine independent ...
Definition: cpointer.h:12
LCIO_DEPRECATED_CAPI int lcwrtwriterunheader(PTRTYPE writer, PTRTYPE header)
Definition: lcwrt.cc:45
#define LCWRITER_PNTR(writer)
Definition: lcwrt.cc:11
LCIO_DEPRECATED_CAPI PTRTYPE lcwrtcreate()
Header file for the f77-wrapper functions of the LCWriter class.
Definition: lcwrt.cc:15
LCIO_DEPRECATED_CAPI int lcwrtdelete(PTRTYPE writer)
Definition: lcwrt.cc:20
LCIO_DEPRECATED_CAPI int lcwrtclose(PTRTYPE writer)
Definition: lcwrt.cc:36