Commit in lcio on MAIN
examples/f77/lciohbook/lciohbook.F+1-11.4 -> 1.5
examples/f77/pythia/pyanajob.F+1-11.4 -> 1.5
                   /pysimjob.F+1-11.5 -> 1.6
sio/include/SIO_functions.h+9-61.4 -> 1.5
sio/src/SIO_functions.cc+4-31.5 -> 1.6
src/cpp/include/LCRTRelations.h+1-11.7 -> 1.8
src/cpp/include/CPPFORT/lcrdr.h+3-31.4 -> 1.5
src/cpp/include/SIO/LCSIO.h+2-11.15 -> 1.16
                   /SIOVertexHandler.h+3-21.2 -> 1.3
src/cpp/src/SIO/LCSIO.cc+2-21.13 -> 1.14
               /SIOEventHandler.cc+2-11.17 -> 1.18
               /SIOVertexHandler.cc+3-11.2 -> 1.3
src/f77/GNUmakefile+15-121.13 -> 1.14
       /lciof77pointer.inc+3-21.1 -> 1.2
       /simjob_chain.F+15-31.4 -> 1.5
+65-40
15 modified files
Itanium+gcc4+bug corrections

lcio/examples/f77/lciohbook
lciohbook.F 1.4 -> 1.5
diff -u -r1.4 -r1.5
--- lciohbook.F	22 Mar 2006 16:42:37 -0000	1.4
+++ lciohbook.F	6 Dec 2006 19:09:18 -0000	1.5
@@ -64,7 +64,7 @@
 c     ---- event loop ------
       do 
          
-         event = lcrdrreadnextevent( reader )
+         event = lcrdrreadnextevent( reader , LCIO_READ_ONLY )
          if( event.eq.0 ) goto 11 
          
          mccol = lcevtgetcollection( event, mcpcolname )

lcio/examples/f77/pythia
pyanajob.F 1.4 -> 1.5
diff -u -r1.4 -r1.5
--- pyanajob.F	24 Feb 2004 17:20:05 -0000	1.4
+++ pyanajob.F	6 Dec 2006 19:09:18 -0000	1.5
@@ -77,7 +77,7 @@
 
 c     ---- event loop ------
       do   ievt = 1,100000
-         event = lcrdrreadnextevent( reader )
+         event = lcrdrreadnextevent( reader , LCIO_READ_ONLY )
          if( event.eq.0 ) goto 10
 
           print '(a,z8)', ' event pointer: ',  event

lcio/examples/f77/pythia
pysimjob.F 1.5 -> 1.6
diff -u -r1.5 -r1.6
--- pysimjob.F	24 Feb 2004 17:18:43 -0000	1.5
+++ pysimjob.F	6 Dec 2006 19:09:18 -0000	1.6
@@ -234,7 +234,7 @@
 
 C *** Event loop **************************************************************
       do  i = 1,1000000
-         event = lcrdrreadnextevent( reader )
+         event = lcrdrreadnextevent( reader , LCIO_READ_ONLY )
          if( event.eq.0 ) goto 110
 
 C ***    Get event header

lcio/sio/include
SIO_functions.h 1.4 -> 1.5
diff -u -r1.4 -r1.5
--- SIO_functions.h	20 Oct 2005 01:46:17 -0000	1.4
+++ SIO_functions.h	6 Dec 2006 19:09:18 -0000	1.5
@@ -1,5 +1,5 @@
 // ----------------------------------------------------------------------------
-// CVS $Id: SIO_functions.h,v 1.4 2005/10/20 01:46:17 jeremy Exp $
+// CVS $Id: SIO_functions.h,v 1.5 2006/12/06 19:09:18 hvogt Exp $
 // ----------------------------------------------------------------------------
 // => Primitive functions for reading/writing SIO streams         
 // ----------------------------------------------------------------------------
@@ -31,14 +31,16 @@
 // AIX           PPC(?)        _AIX          GNU compiler  long long
 // OSF1          Alpha         __alpha__     GNU compiler  long long
 // Linux         x86           __i386__      GNU compiler  long long
-// Linux         Opteron       __x86_64__    GNU compiler  long long
+// Linux         Opteron       _LP64         GNU compiler  long long
+// Linux         Itanium       _LP64         GNU compiler  long long
 // SunOS         Sparc         __sparc__     GNU compiler  long long
 // Windows/NT    Alpha         _M_ALPHA      VC  compiler  __int64
 // Windows/NT    x86           _M_IX86       VC  compiler  __int64
 // Windows/NT    MIPS          _M_MRX000     VC  compiler  __int64
 // Windows/NT    PPC           _M_PPC        VC  compiler  __int64
 // ----------------------------------------------------------------------------
-#if defined(_AIX)      ||  defined(__alpha__) || defined(__i386__)  || defined(__sparc__) || defined(__x86_64__) || defined(__APPLE_CC__)
+#if defined(_AIX)      ||  defined(__alpha__) || defined(__i386__)  || defined(__sparc__) || defined(__APPLE_CC__) || defined(_LP64)
+
 // fg: gcc complains about long long - what to do about it ?
 // warning: ANSI C++ does not support `long long'
  #define SIO_64BITINT   long long
@@ -58,15 +60,16 @@
 // AIX           PPC(?)        _AIX          GNU compiler  4 bytes
 // OSF1          Alpha         __alpha__     GNU compiler  8 bytes
 // Linux         x86           __i386__      GNU compiler  4 bytes
-// Linux         Opteron       __x86_64__    GNU compiler  8 bytes
+// Linux         Opteron       _LP64    _    GNU compiler  8 bytes
+// Linux         Itanium       _LP64         GNU compiler  8 bytes
 // SunOS         Sparc         __sparc__     GNU compiler  4 bytes
 // Windows/NT    Alpha         _M_ALPHA      VC  compiler  8 bytes
 // Windows/NT    x86           _M_IX86       VC  compiler  4 bytes
 // Windows/NT    MIPS          _M_MRX000     VC  compiler  ? bytes
 // Windows/NT    PPC           _M_PPC        VC  compiler  4 bytes
 // ----------------------------------------------------------------------------
-#if defined(__alpha__) || defined(_M_ALPHA) || defined(__x86_64__)
- #define SIO_POINTER_DECL   unsigned SIO_64BITINT
+#if defined(__alpha__) || defined(_M_ALPHA) || defined(_LP64)
+ #define SIO_POINTER_DECL   size_t
 #endif
 
 #if defined(_AIX)      || defined(__i386__)  || defined(__sparc__) || defined(_M_IX86) || defined(_M_PPC) || defined(__APPLE_CC__)

lcio/sio/src
SIO_functions.cc 1.5 -> 1.6
diff -u -r1.5 -r1.6
--- SIO_functions.cc	20 Oct 2005 01:46:18 -0000	1.5
+++ SIO_functions.cc	6 Dec 2006 19:09:18 -0000	1.6
@@ -1,5 +1,5 @@
 // ----------------------------------------------------------------------------
-// CVS $Id: SIO_functions.cc,v 1.5 2005/10/20 01:46:18 jeremy Exp $
+// CVS $Id: SIO_functions.cc,v 1.6 2006/12/06 19:09:18 hvogt Exp $
 // ----------------------------------------------------------------------------
 // => Function package for SIO                            
 // ----------------------------------------------------------------------------
@@ -32,14 +32,15 @@
 // AIX           PPC(?)        _AIX          GNU compiler  Big
 // OSF1          Alpha         __alpha__     GNU compiler  Little
 // Linux         x86           __i386__      GNU compiler  Little
-// Linux         Opteron       __x86_64__    GNU compiler  Little
+// Linux         Opteron       _LP64         GNU compiler  Little
+// Linux         itanium       _LP64         GNU compiler  Little
 // SunOS         Sparc         __sparc__     GNU compiler  Big
 // Windows/NT    Alpha         _M_ALPHA      VC  compiler  Little
 // Windows/NT    x86           _M_IX86       VC  compiler  Little
 // Windows/NT    MIPS          _M_MRX000     VC  compiler  ?
 // Windows/NT    PPC           _M_PPC        VC  compiler  Big
 // ----------------------------------------------------------------------------
-#if defined(__alpha__) ||   defined(__i386__)  ||   defined(_M_ALPHA)  ||   defined(_M_IX86) || defined(__x86_64__)
+#if defined(__alpha__) ||   defined(__i386__)  ||   defined(_M_ALPHA)  ||   defined(_M_IX86) || defined(_LP64)
 #define SIO_LITTLE_ENDIAN
 #endif
 

lcio/src/cpp/include
LCRTRelations.h 1.7 -> 1.8
diff -u -r1.7 -r1.8
--- LCRTRelations.h	1 Dec 2006 14:10:09 -0000	1.7
+++ LCRTRelations.h	6 Dec 2006 19:09:18 -0000	1.8
@@ -537,7 +537,7 @@
       static const unsigned uid  = nextID( T::deletePtr() ) ;
 
       return uid ;
-    } ;
+    } 
   
   
     //   PtrVec* _vec ; 

lcio/src/cpp/include/CPPFORT
lcrdr.h 1.4 -> 1.5
diff -u -r1.4 -r1.5
--- lcrdr.h	21 Oct 2005 13:53:19 -0000	1.4
+++ lcrdr.h	6 Dec 2006 19:09:18 -0000	1.5
@@ -33,9 +33,9 @@
 FCALLSCFUN1(INT, lcrdrclose, LCRDRCLOSE, lcrdrclose, CFORTRANPNTR ) 
 FCALLSCFUN2(INT, lcrdrreadstream, LCRDRREADSTREAM, lcrdrreadstream, CFORTRANPNTR, INT ) 
 
-FCALLSCFUN2(INT,lcrdrreadnextrunheader,LCRDRREADNEXTRUNHEADER,lcrdrreadnextrunheader,CFORTRANPNTR,INT) 
-FCALLSCFUN2(INT,lcrdrreadnextevent,LCRDRREADNEXTEVENT,lcrdrreadnextevent,CFORTRANPNTR,INT) 
-FCALLSCFUN3(INT,lcrdrreadevent,LCRDRREADEVENT,lcrdrreadevent,CFORTRANPNTR,INT,INT) 
+FCALLSCFUN2(CFORTRANPNTR,lcrdrreadnextrunheader,LCRDRREADNEXTRUNHEADER,lcrdrreadnextrunheader,CFORTRANPNTR,INT)
+FCALLSCFUN2(CFORTRANPNTR,lcrdrreadnextevent,LCRDRREADNEXTEVENT,lcrdrreadnextevent,CFORTRANPNTR,INT)
+FCALLSCFUN3(CFORTRANPNTR,lcrdrreadevent,LCRDRREADEVENT,lcrdrreadevent,CFORTRANPNTR,INT,INT)
 
 FCALLSCFUN2(INT, lcrdrskipnevents, LCRDRSKIPNEVENTS, lcrdrskipnevents, CFORTRANPNTR, INT ) 
 

lcio/src/cpp/include/SIO
LCSIO.h 1.15 -> 1.16
diff -u -r1.15 -r1.16
--- LCSIO.h	20 Oct 2005 01:46:18 -0000	1.15
+++ LCSIO.h	6 Dec 2006 19:09:18 -0000	1.16
@@ -65,7 +65,8 @@
   
     /** Write a vector size to the stream (needed for AMD64 architectures)
      */
-#if defined(__x86_64__) || defined(__APPLE_CC__)
+#if defined(_LP64)  || defined(__APPLE_CC__)
+//    static unsigned int write( SIO_stream* stream , SIO_POINTER_DECL i) ;
     static unsigned int write( SIO_stream* stream , size_t i) ;
 #endif
 

lcio/src/cpp/include/SIO
SIOVertexHandler.h 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- SIOVertexHandler.h	21 Sep 2006 06:10:38 -0000	1.2
+++ SIOVertexHandler.h	6 Dec 2006 19:09:18 -0000	1.3
@@ -2,7 +2,8 @@
 #define SIO_SIOVERTEXHANDLER_H 1
 
 #include "SIO/SIOObjectHandler.h"
-#include "LCIOSTLTypes.h"
+// #include "LCIOSTLTypes.h"
+#include "EVENT/LCParameters.h"
 
 #include <map>
 #include <set>
@@ -14,7 +15,7 @@
 /** Implementation of SIOObjectHandler to handle IO of Vertexes.
  *
  * @author gaede, engels
- * @version $Id: SIOVertexHandler.h,v 1.2 2006/09/21 06:10:38 gaede Exp $
+ * @version $Id: SIOVertexHandler.h,v 1.3 2006/12/06 19:09:18 hvogt Exp $
  */
 
   class SIOVertexHandler : public SIOObjectHandler {

lcio/src/cpp/src/SIO
LCSIO.cc 1.13 -> 1.14
diff -u -r1.13 -r1.14
--- LCSIO.cc	20 Oct 2005 01:46:18 -0000	1.13
+++ LCSIO.cc	6 Dec 2006 19:09:19 -0000	1.14
@@ -98,8 +98,8 @@
  
 }
 
-// needed for AMD64 architectures
-#if defined(__x86_64__) || defined(__APPLE_CC__)
+// needed for LP64 architectures
+#if defined(_LP64) || defined(__APPLE_CC__)
 unsigned int LCSIO::write( SIO_stream* stream , size_t i){
 
   unsigned int local = i ;

lcio/src/cpp/src/SIO
SIOEventHandler.cc 1.17 -> 1.18
diff -u -r1.17 -r1.18
--- SIOEventHandler.cc	15 Apr 2005 08:37:49 -0000	1.17
+++ SIOEventHandler.cc	6 Dec 2006 19:09:19 -0000	1.18
@@ -96,7 +96,8 @@
 // 	 }else{
 
 	std::string colType( type ) ;
-	unsigned  idx ;
+//  	unsigned  idx ;
+	std::string::size_type idx ;
 	if( ( idx = colType.rfind( SUBSETPOSTFIX ) ) != std::string::npos ){
 	  colType = std::string( colType , 0 , idx ) ;
 	}

lcio/src/cpp/src/SIO
SIOVertexHandler.cc 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- SIOVertexHandler.cc	21 Sep 2006 06:10:44 -0000	1.2
+++ SIOVertexHandler.cc	6 Dec 2006 19:09:19 -0000	1.3
@@ -1,5 +1,6 @@
 #include "SIO/SIOVertexHandler.h"
 
+#include <algorithm>
 #include "SIO/LCSIO.h"
 
 #include "EVENT/LCIO.h"
@@ -166,7 +167,8 @@
     //write data
     LCSIO_WRITE( stream, vtx->isPrimary()  ) ;
     //LCSIO_WRITE( stream, imw[vtx->getAlgorithmType()]  ) ;
-    LCSIO_WRITE( stream, distance( _set.begin(),_set.find( vtx->getAlgorithmType() ))) ;
+   
+    LCSIO_WRITE( stream, static_cast<size_t> (distance( _set.begin(),_set.find( vtx->getAlgorithmType() )))) ;
     
     //dbg
     //std::cout<<"Writing... (string)["<<vtx->getAlgorithmType()<<"] (int)["<<distance( _set.begin(),_set.find( vtx->getAlgorithmType() ))<<"]\n";

lcio/src/f77
GNUmakefile 1.13 -> 1.14
diff -u -r1.13 -r1.14
--- GNUmakefile	3 Jun 2005 10:52:42 -0000	1.13
+++ GNUmakefile	6 Dec 2006 19:09:19 -0000	1.14
@@ -14,17 +14,25 @@
 # check the gcc compiler version if libfrtbegin.a has to be included
 COMPILER_VERSION := $(shell gcc --version 2>&1 | grep "gcc" | cut -d' ' -f3 | cut -c1 )
 COMPILER_MINOR_VERSION := $(shell gcc --version 2>&1 | grep "gcc" | cut -d' ' -f3 | cut -c3 )
+
+FC = g77
 ifeq ($(COMPILER_VERSION),3)
- ifneq ($(COMPILER_MINOR_VERSION),0)
-  FTN_START_LIB = -lfrtbegin
- endif
+  ifneq ($(COMPILER_MINOR_VERSION),0)
+    FTN_START_LIB = -lfrtbegin
+  endif
+  LIBS = -L $(INSTALL) -L $(SIOINSTALL)/lib  -llcio -lsio -lz -lg2c $(FTN_START_LIB) -lg2c -llcio -lsio -lz
+endif
+ifeq ($(COMPILER_VERSION),4)
+  FC = gfortran
+  LIBS = -L $(INSTALL) -L $(SIOINSTALL)/lib -lgfortran -lgfortranbegin -lgfortran -llcio -lsio -lz
 endif
 
 # check for AMD64 Linux and set -fno-f2c to get correct results
-OS_TYPE:= $(shell uname -m)
-ifeq ($(OS_TYPE),x86_64)
-  X86_64_OPTION = -fno-f2c
-endif
+# not needed anymore with the modified "cfortran.h"
+# /OS_TYPE:= $(shell uname -m)
+# /ifeq ($(OS_TYPE),x86_64)
+# /  X86_64_OPTION = -fno-f2c
+# /endif
 
 # check for private compiler definitions
 ifdef MY_CXX
@@ -34,8 +42,6 @@
 endif
 ifdef MY_FC
   FC = $(MY_FC)
-else
-  FC = g77 $(X86_64_OPTION)
 endif
 
 
@@ -43,9 +49,6 @@
 BINS := $(patsubst %.F,$(BINDIR)/%_F,$(wildcard *.F))
 
 INSTALL = $(LCIOBASE)/lib
-#LIBG2CPATH = /products/gcc-2.95/lib/gcc-lib/i686-pc-linux-gnu/2.95.3
-LIBS = -L $(INSTALL) -L $(SIOINSTALL)/lib -L$(LIBG2CPATH) -llcio -lsio -lz -lg2c $(FTN_START_LIB) -lg2c -llcio -lsio -lz
-
 
 
 bin: $(BINS)

lcio/src/f77
lciof77pointer.inc 1.1 -> 1.2
diff -u -r1.1 -r1.2
--- lciof77pointer.inc	14 May 2004 16:17:20 -0000	1.1
+++ lciof77pointer.inc	6 Dec 2006 19:09:19 -0000	1.2
@@ -20,14 +20,15 @@
 ** AIX           PPC(?)        _AIX          GNU compiler  4 bytes
 ** OSF1          Alpha         __alpha__     GNU compiler  8 bytes
 ** Linux         x86           __i386__      GNU compiler  4 bytes
-** Linux         Opteron       __x86_64__    GNU compiler  8 bytes
+** Linux         Opteron       _LP64         GNU compiler  8 bytes
+** Linux         Itanium       _LP64         GNU compiler  8 bytes
 ** SunOS         Sparc         __sparc__     GNU compiler  4 bytes
 ** Windows/NT    Alpha         _M_ALPHA      VC  compiler  8 bytes
 ** Windows/NT    x86           _M_IX86       VC  compiler  4 bytes
 ** Windows/NT    MIPS          _M_MRX000     VC  compiler  ? bytes
 ** Windows/NT    PPC           _M_PPC        VC  compiler  4 bytes
 ** ----------------------------------------------------------------------------
-#if defined(__alpha__) || defined(_M_ALPHA) || defined(__x86_64__)
+#if defined(__alpha__) || defined(_M_ALPHA) || defined(_LP64)
 #define PTRTYPE integer*8
 #endif
 

lcio/src/f77
simjob_chain.F 1.4 -> 1.5
diff -u -r1.4 -r1.5
--- simjob_chain.F	24 Sep 2004 16:14:46 -0000	1.4
+++ simjob_chain.F	6 Dec 2006 19:09:19 -0000	1.5
@@ -77,8 +77,9 @@
       PTRTYPE  mcpv(50), pointerv(50), ppointerv
       integer npointers
       integer status
-      integer i, j, k, irun, nrun, iev, nev, itim, locf
+      integer i, j, k, irun, nrun, iev, nev, itimv(8), itim, locf
       integer nhit, flag
+      character*10 dum1, dum2, dum3
 
       integer ipass
       character*16 filename
@@ -126,11 +127,14 @@
 c-----  event loop 
          do iev = 1,nev
             
-            itim   = 20031009*1000+iev
             event = lcevtcreate()
             status = lcevtsetdetectorname( event, detectorname )
             status = lcevtsetrunnumber( event, irun ) 
             status = lcevtseteventnumber( event,  iev ) 
+
+c           get a time stamp
+            call date_and_time (dum1, dum2, dum3, itimv)
+            itim  = (itimv(5)*100+itimv(6))*100+itimv(7)
             status = lcevtsettimestamp( event, itim )
 
             mcpcol = lccolcreate( LCIO_MCPARTICLE )
@@ -254,12 +258,20 @@
 c-----     now we will check the stl pointer vector
            if (irun .eq. 1 .and. iev .eq. 1)  then
              print *, 'pointers going into the pointer vector'
+#if defined(__ia64__)
+             print '(5z20)', (mcpv(i), i=1,nhit/2)
+#else
              print '(10z10)', (mcpv(i), i=1,nhit/2)
+#endif
              ppointerv = pointervectorcreate( mcpv, nhit/2 )
              npointers = pointervectorgetlength( ppointerv )
              status = getpointervector( ppointerv, pointerv, npointers)
              print *, 'pointers got from the pointer vector'
+#if defined(__ia64__)
+             print '(5z20)', (pointerv(i), i=1,npointers)
+#else
              print '(10z10)', (pointerv(i), i=1,npointers)
+#endif
              status = pointervectordelete( ppointerv )
            end if
 
@@ -323,7 +335,7 @@
       PTRTYPE reader, event, runhdr, detnames
       PTRTYPE pcol1, pcol2, pcol3, pobject1, pobject2, pobject3
       
-      character*(*) filename
+      character*16 filename
       integer status, irun, ievent
       integer i, nactdet, ii
       character*80 detname
CVSspam 0.2.8