From 09298c032a604910cecfc6ebef477d8da64ddf23 Mon Sep 17 00:00:00 2001 From: alibrary Date: Wed, 20 Dec 2000 09:46:51 +0000 Subject: [PATCH] dlsym not supported on HP, reverting to gcomad --- GEANT321/comad/gcadd.cxx | 58 +++++++++ GEANT321/comad/gcomad.F | 265 +++++++++++++++++++++++++++++++++++++++ TGeant3/TGeant3.cxx | 111 +++++++--------- 3 files changed, 365 insertions(+), 69 deletions(-) create mode 100644 GEANT321/comad/gcadd.cxx create mode 100644 GEANT321/comad/gcomad.F diff --git a/GEANT321/comad/gcadd.cxx b/GEANT321/comad/gcadd.cxx new file mode 100644 index 00000000000..313dc3e6486 --- /dev/null +++ b/GEANT321/comad/gcadd.cxx @@ -0,0 +1,58 @@ +/************************************************************************** + * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * + * * + * Author: The ALICE Off-line Project. * + * Contributors are mentioned in the code where appropriate. * + * * + * Permission to use, copy, modify and distribute this software and its * + * documentation strictly for non-commercial purposes is hereby granted * + * without fee, provided that the above copyright notice appears in all * + * copies and that both the copyright notice and this permission notice * + * appear in the supporting documentation. The authors make no claims * + * about the suitability of this software for any purpose. It is * + * provided "as is" without express or implied warranty. * + **************************************************************************/ + +/* +$Log$ +Revision 1.3 1999/09/29 09:24:14 fca +Introduction of the Copyright and cvs Log + +*/ + +#if defined(CERNLIB_WINNT) + #define gcaddc GCADDC + #define gcaddf GCADDF + #define gcaddd GCADDD + #define gcaddi GCADDI + #define gcaddl GCADDL + #define type_of_call _stdcall +#else + #define gcaddc gcaddc_ + #define gcaddf gcaddf_ + #define gcaddd gcaddd_ + #define gcaddi gcaddi_ + #define gcaddl gcaddl_ + #define type_of_call +#endif + +extern "C" char* type_of_call gcaddc(char *arg) +{ + return arg; +} +extern "C" double* type_of_call gcaddd(double *arg) +{ + return arg; +} +extern "C" int* type_of_call gcaddi(int *arg) +{ + return arg; +} +extern "C" float* type_of_call gcaddf(float *arg) +{ + return arg; +} +extern "C" int* type_of_call gcaddl(int *arg) +{ + return arg; +} diff --git a/GEANT321/comad/gcomad.F b/GEANT321/comad/gcomad.F new file mode 100644 index 00000000000..1512f254b72 --- /dev/null +++ b/GEANT321/comad/gcomad.F @@ -0,0 +1,265 @@ +*CMZ : 22/01/99 15.54.06 by Rene Brun +*-- Author : Federico Carminati 28/11/98 + SUBROUTINE GCOMAD(CHCOMM,IADD) +*#include "geant321/gcasho.inc" + COMMON/GCASHO/ZMED,AMED,DMED,E0MED,ZSMED(50),ESMED(50),ALFA, + * STEPALT,PLIN,PLOG,BE2,PLASM,TRNSMA, +* * STEP,PLIN,PLOG,BE2,PLASM,TRNSMA, + * BOSC(50),AOSC(50),EOSC(50),ZOSC(50),EMEAN, + * CMGO(2000),EMGO,EMGOMI, + * NSMED,IOSC(50),NOSC,NMGO,NMGOMA +C + REAL ZMED,AMED,DMED,E0MED,ZSMED,ESMED,ALFA, + * STEPALT,PLIN,PLOG,BE2,PLASM,TRNSMA, +* * STEP,PLIN,PLOG,BE2,PLASM,TRNSMA, + * BOSC,AOSC,EOSC,ZOSC,EMEAN,CMGO,EMGO,EMGOMI + INTEGER NSMED,IOSC,NOSC,NMGO,NMGOMA +C +#include "geant321/gcbank.inc" +#include "geant321/gccurs.inc" +#include "geant321/gccuts.inc" +#include "geant321/gcdraw.inc" +#include "geant321/gcfdim.inc" +#include "geant321/gcflag.inc" +#include "geant321/gcgobj.inc" +#include "geant321/gchil2.inc" +#include "geant321/gchiln.inc" +#include "geant321/gchvir.inc" +#include "geant321/gcjloc.inc" +#include "geant321/gcjump.inc" +#include "geant321/gckine.inc" +#include "geant321/gcking.inc" +#include "geant321/gclist.inc" +#include "geant321/gclund.inc" +#include "geant321/gcmate.inc" +#include "geant321/gcmulo.inc" +#include "geant321/gcmutr.inc" +#include "geant321/gcmzfo.inc" +#include "geant321/gcnum.inc" +*#include "geant321/gcomis.inc" +* COMMON/GCOMIS/JUINIT,JUGEOM,JUKINE,JUSTEP,JUOUT,JULAST + COMMON/GCOMIS/KUINIT,KUGEOM,KUKINE,KUSTEP,KUOUT,KULAST + DIMENSION JPCOMS(6) + EQUIVALENCE (JPCOMS,JUINIT) +* +#include "geant321/gconst.inc" +#include "geant321/gcopti.inc" +#include "geant321/gcpara.inc" +#include "geant321/gcparm.inc" +#include "geant321/gcpmxz.inc" +#include "geant321/gcphnr.inc" +#include "geant321/gcphpr.inc" +#include "geant321/gcphrd.inc" +#include "geant321/gcphxs.inc" +#include "geant321/gcphys.inc" +#include "geant321/gcpixe.inc" +#include "geant321/gcpoly.inc" +#include "geant321/gcpush.inc" +#include "geant321/gcrayt.inc" +#include "geant321/gcrz.inc" +#include "geant321/gcscal.inc" +#include "geant321/gcscan.inc" +#include "geant321/gcsets.inc" +#include "geant321/gcshpt.inc" +*#include "geant321/gcspee.inc" +* +* REAL S1,S2,S3,SS1,SS2,SS3,SRAGMX,SRAGMN, + REAL S1,S2ALT,S3,SS1,SS2,SS3,SRAGMX,SRAGMN, + + RAINT1,RAINT2,RMIN1,RMIN2,RMAX1,RMAX2 + INTEGER ISCOP,NTIM,NTFLAG,IOLDCU,ITSTCU,ISUBLI,IPORLI + INTEGER LPASS,JPORJJ,LEP,JSC +* +* COMMON/GCSPEE/S1,S2,S3,SS1,SS2,SS3,LEP,IPORLI,ISUBLI, + COMMON/GCSPEE/S1,S2ALT,S3,SS1,SS2,SS3,LEP,IPORLI,ISUBLI, + + SRAGMX,SRAGMN,RAINT1,RAINT2,RMIN1,RMIN2, + + RMAX1,RMAX2,JPORJJ,ITSTCU,IOLDCU,ISCOP, + + NTIM,NTFLAG,LPASS,JSC +* + +#include "geant321/gcstak.inc" +#include "geant321/gcstra.inc" +#include "geant321/gctime.inc" +#include "geant321/gctmed.inc" +#include "geant321/gctrak.inc" +#include "geant321/gcunit.inc" +#include "geant321/gcursb.inc" +#include "geant321/gcvdma.inc" +#include "geant321/gcvol1.inc" +#include "geant321/gcvol2.inc" +#include "geant321/gcvolu.inc" +#include "geant321/gcxlun.inc" +#include "geant321/gfkdis.inc" +#include "geant321/gsecti.inc" +* +* Commons for GEANE +#include "geant321/ertrio.inc" +#include "geant321/eropts.inc" +#include "geant321/erwork.inc" +* Commons for GEANE +* + COMMON / QUEST / IQUEST(100) +* + CHARACTER *(*) CHCOMM +#if defined(CERNLIB_DECS) + INTEGER*8 GCADDI, GCADDF, GCADDL, GCADDC, GCADDD, IADD +#else + INTEGER GCADDI, GCADDF, GCADDL, GCADDC, GCADDD +#endif +* + IF(CHCOMM.EQ.'GCASHO') THEN + IADD=GCADDF(ZMED) + ELSE IF(CHCOMM.EQ.'IQ') THEN + IADD=GCADDI(LQ(8)) + ELSE IF(CHCOMM.EQ.'LQ') THEN + IADD=GCADDF(FENDQ(16)) + ELSE IF(CHCOMM.EQ.'GCCURS') THEN + IADD=GCADDI(INTFLA) + ELSE IF(CHCOMM.EQ.'GCCUTS') THEN + IADD=GCADDF(CUTGAM) + ELSE IF(CHCOMM.EQ.'GCDRAW') THEN + IADD=GCADDI(NUMNOD) + ELSE IF(CHCOMM.EQ.'GCFDIM') THEN + IADD=GCADDI(NPROC) + ELSE IF(CHCOMM.EQ.'GCFLAG') THEN + IADD=GCADDI(IDEBUG) + ELSE IF(CHCOMM.EQ.'GCGOBJ') THEN + IADD=GCADDI(IST) + ELSE IF(CHCOMM.EQ.'GCBLIM') THEN + IADD=GCADDI(IHOLE) + ELSE IF(CHCOMM.EQ.'GCHIL2') THEN + IADD=GCADDI(LARETT) + ELSE IF(CHCOMM.EQ.'GCHILN') THEN + IADD=GCADDI(LARECG) + ELSE IF(CHCOMM.EQ.'GCHVIR') THEN + IADD=GCADDI(JVIRT) + ELSE IF(CHCOMM.EQ.'GCJLOC') THEN + IADD=GCADDI(NJLOC) + ELSE IF(CHCOMM.EQ.'GCJLCK') THEN + IADD=GCADDI(NJLCK) + ELSE IF(CHCOMM.EQ.'GCJUMP') THEN + IADD=GCADDI(JUDCAY) + ELSE IF(CHCOMM.EQ.'GCKINE') THEN + IADD=GCADDI(IKINE) + ELSE IF(CHCOMM.EQ.'GCKING') THEN + IADD=GCADDI(KCASE) + ELSE IF(CHCOMM.EQ.'GCKIN2') THEN + IADD=GCADDI(NGPHOT) + ELSE IF(CHCOMM.EQ.'GCKIN3') THEN + IADD=GCADDF(GPOS) + ELSE IF(CHCOMM.EQ.'GCLINK') THEN + IADD=GCADDI(JDIGI) + ELSE IF(CHCOMM.EQ.'GCLIST') THEN + IADD=GCADDI(NHSTA) + ELSE IF(CHCOMM.EQ.'GCLUND') THEN + IADD=GCADDI(IFLUND) + ELSE IF(CHCOMM.EQ.'GCMATE') THEN + IADD=GCADDI(NMAT) + ELSE IF(CHCOMM.EQ.'GCMULO') THEN + IADD=GCADDF(SINMUL) + ELSE IF(CHCOMM.EQ.'GCMUTR') THEN + IADD=GCADDI(NCVOLS) + ELSE IF(CHCOMM.EQ.'GCMUTC') THEN + IADD=GCADDC(GNASH) + ELSE IF(CHCOMM.EQ.'GCMZFO') THEN + IADD=GCADDI(IOMATE) + ELSE IF(CHCOMM.EQ.'GCNUM') THEN + IADD=GCADDI(NMATE) + ELSE IF(CHCOMM.EQ.'GCOMIS') THEN + IADD=GCADDI(KUINIT) + ELSE IF(CHCOMM.EQ.'GCONST') THEN + IADD=GCADDF(PI) + ELSE IF(CHCOMM.EQ.'GCOPTI') THEN + IADD=GCADDI(IOPTIM) + ELSE IF(CHCOMM.EQ.'GCPARA') THEN + IADD=GCADDF(EPSIX0) + ELSE IF(CHCOMM.EQ.'GCPARM') THEN + IADD=GCADDI(IPARAM) + ELSE IF(CHCOMM.EQ.'GCPHNR') THEN + IADD=GCADDI(IGNRFN) + ELSE IF(CHCOMM.EQ.'GCPHPR') THEN + IADD=GCADDF(GFLUPR) + ELSE IF(CHCOMM.EQ.'GCPHRD') THEN + IADD=GCADDF(GPHRAT) + ELSE IF(CHCOMM.EQ.'GCPXRN') THEN + IADD=GCADDC(CRNGUP) + ELSE IF(CHCOMM.EQ.'GCPXCF') THEN + IADD=GCADDF(COFS) + ELSE IF(CHCOMM.EQ.'GCPHYS') THEN + IADD=GCADDI(IPAIR) + ELSE IF(CHCOMM.EQ.'GCPHLT') THEN + IADD=GCADDI(ILABS) + ELSE IF(CHCOMM.EQ.'GCPIXE') THEN + IADD=GCADDI(LIMPRE) + ELSE IF(CHCOMM.EQ.'GCPOLY') THEN + IADD=GCADDI(IZSEC) + ELSE IF(CHCOMM.EQ.'GCPUSH') THEN + IADD=GCADDI(NCVERT) + ELSE IF(CHCOMM.EQ.'GCRAYT') THEN + IADD=GCADDI(INTEN) + ELSE IF(CHCOMM.EQ.'GCRZ1') THEN + IADD=GCADDI(NRECRZ) + ELSE IF(CHCOMM.EQ.'GCRZ2') THEN + IADD=GCADDC(RZTAGS) + ELSE IF(CHCOMM.EQ.'GCSCAL') THEN + IADD=GCADDI(ISLINK) + ELSE IF(CHCOMM.EQ.'GCSCAN') THEN + IADD=GCADDL(SCANFL) + ELSE IF(CHCOMM.EQ.'GCSCAC') THEN + IADD=GCADDC(SFIN) + ELSE IF(CHCOMM.EQ.'GCSETS') THEN + IADD=GCADDI(IHSET) + ELSE IF(CHCOMM.EQ.'GCSHPT') THEN + IADD=GCADDI(NSHLST) + ELSE IF(CHCOMM.EQ.'GCSPEE') THEN + IADD=GCADDF(S1) + ELSE IF(CHCOMM.EQ.'GCSTAK') THEN + IADD=GCADDI(NJTMAX) + ELSE IF(CHCOMM.EQ.'GCSTRA') THEN + IADD=GCADDF(EMAX) + ELSE IF(CHCOMM.EQ.'GCTIME') THEN + IADD=GCADDF(TIMINT) + ELSE IF(CHCOMM.EQ.'GCTMED') THEN + IADD=GCADDI(NUMED) + ELSE IF(CHCOMM.EQ.'GCTRAK') THEN + IADD=GCADDF(VECT) + ELSE IF(CHCOMM.EQ.'GCTPOL') THEN + IADD=GCADDF(POLAR) + ELSE IF(CHCOMM.EQ.'GCUNIT') THEN + IADD=GCADDI(LIN) + ELSE IF(CHCOMM.EQ.'GCURSB') THEN + IADD=GCADDI(NUMNDS) + ELSE IF(CHCOMM.EQ.'GCVDMA') THEN + IADD=GCADDI(NVMANY) + ELSE IF(CHCOMM.EQ.'GCVOL1') THEN + IADD=GCADDI(NLEVL1) + ELSE IF(CHCOMM.EQ.'GCVOL2') THEN + IADD=GCADDI(NLEVE2) + ELSE IF(CHCOMM.EQ.'GCVOLU') THEN + IADD=GCADDI(NLEVEL) + ELSE IF(CHCOMM.EQ.'GCXLUN') THEN + IADD=GCADDI(LUNIT) + ELSE IF(CHCOMM.EQ.'GFKDIS') THEN + IADD=GCADDF(ZINE) + ELSE IF(CHCOMM.EQ.'GSECTI') THEN + IADD=GCADDF(AIEL) + ELSE IF(CHCOMM.EQ.'GCTLIT') THEN + IADD=GCADDF(THRIND) + ELSE IF(CHCOMM.EQ.'QUEST') THEN + IADD=GCADDI(IQUEST) + ELSE IF(CHCOMM.EQ.'ERTRIO') THEN + IADD=GCADDD(ERDTRP) + ELSE IF(CHCOMM.EQ.'EROPTS') THEN + IADD=GCADDF(ERPLI) + ELSE IF(CHCOMM.EQ.'EROPTC') THEN + IADD=GCADDC(CHOPTI) + ELSE IF(CHCOMM.EQ.'ERWORK') THEN + IADD=GCADDD(EI) + ELSE IF(CHCOMM.EQ.'GCBANK') THEN + IADD=GCADDI(NZEBRA) + ELSE + WRITE(6,123) CHCOMM + IADD=0 + ENDIF +* + 123 FORMAT(' *** GCOMAD: cannot load common ',A) + END diff --git a/TGeant3/TGeant3.cxx b/TGeant3/TGeant3.cxx index 8d3dc43f194..672bf187b16 100644 --- a/TGeant3/TGeant3.cxx +++ b/TGeant3/TGeant3.cxx @@ -15,6 +15,9 @@ /* $Log$ +Revision 1.43 2000/12/20 08:39:39 fca +Support for Cerenkov and process list in Virtual MC + Revision 1.42 2000/12/19 08:37:48 alibrary Using dlsym to retrieve address of commons @@ -123,7 +126,6 @@ Introduction of the Copyright and cvs Log // // /////////////////////////////////////////////////////////////////////////////// -#include "dlfcn.h" #include "ctype.h" #include "TROOT.h" @@ -231,6 +233,7 @@ Introduction of the Copyright and cvs Log # define setbomb setbomb_ # define setclip setclip_ +# define gcomad gcomad_ # define gbrelm gbrelm_ # define gprelm gprelm_ @@ -329,6 +332,7 @@ Introduction of the Copyright and cvs Log # define setbomb SETBOMB # define setclip SETCLIP +# define gcomad GCOMAD # define gbrelm GBRELM # define gprelm GPRELM @@ -548,6 +552,7 @@ extern "C" void type_of_call setbomb(Float_t &); void type_of_call setclip(DEFCHARD, Float_t &,Float_t &,Float_t &,Float_t &, Float_t &, Float_t & DEFCHARL); + void type_of_call gcomad(DEFCHARD, Int_t*& DEFCHARL); void type_of_call ertrak(const Float_t *const x1, const Float_t *const p1, const Float_t *x2, const Float_t *p2, @@ -645,74 +650,42 @@ void TGeant3::LoadAddress() // Assigns the address of the GEANT common blocks to the structures // that allow their access from C++ // - void *handle = dlopen (NULL, RTLD_LAZY); - -#ifndef WIN32 - fQuest = (Quest_t *) dlsym(handle,"quest_"); - fGcbank = (Gcbank_t *) dlsym(handle,"gcbank_"); - fGclink = (Gclink_t *) dlsym(handle,"gclink_"); - fGccuts = (Gccuts_t *) dlsym(handle,"gccuts_"); - fGcmulo = (Gcmulo_t *) dlsym(handle,"gcmulo_"); - fGcflag = (Gcflag_t *) dlsym(handle,"gcflag_"); - fGckine = (Gckine_t *) dlsym(handle,"gckine_"); - fGcking = (Gcking_t *) dlsym(handle,"gcking_"); - fGckin2 = (Gckin2_t *) dlsym(handle,"gckin2_"); - fGckin3 = (Gckin3_t *) dlsym(handle,"gckin3_"); - fGcmate = (Gcmate_t *) dlsym(handle,"gcmate_"); - fGctmed = (Gctmed_t *) dlsym(handle,"gctmed_"); - fGctrak = (Gctrak_t *) dlsym(handle,"gctrak_"); - fGctpol = (Gctpol_t *) dlsym(handle,"gctpol_"); - fGcvolu = (Gcvolu_t *) dlsym(handle,"gcvolu_"); - fGcnum = (Gcnum_t *) dlsym(handle,"gcnum_"); - fGcsets = (Gcsets_t *) dlsym(handle,"gcsets_"); - fGcphys = (Gcphys_t *) dlsym(handle,"gcphys_"); - fGcphlt = (Gcphlt_t *) dlsym(handle,"gcphlt_"); - fGcopti = (Gcopti_t *) dlsym(handle,"gcopti_"); - fGctlit = (Gctlit_t *) dlsym(handle,"gctlit_"); - fGcvdma = (Gcvdma_t *) dlsym(handle,"gcvdma_"); - - // Commons for GEANE - fErtrio = (Ertrio_t *) dlsym(handle,"ertrio_"); - fEropts = (Eropts_t *) dlsym(handle,"eropts_"); - fEroptc = (Eroptc_t *) dlsym(handle,"eroptc_"); - fErwork = (Erwork_t *) dlsym(handle,"erwork_"); -#else - fQuest = (Quest_t *) dlsym(handle,"QUEST"); - fGcbank = (Gcbank_t *) dlsym(handle,"GCBANK"); - fGclink = (Gclink_t *) dlsym(handle,"GCLINK"); - fGccuts = (Gccuts_t *) dlsym(handle,"GCCUTS"); - fGcmulo = (Gcmulo_t *) dlsym(handle,"GCMULO"); - fGcflag = (Gcflag_t *) dlsym(handle,"GCFLAG"); - fGckine = (Gckine_t *) dlsym(handle,"GCKINE"); - fGcking = (Gcking_t *) dlsym(handle,"GCKING"); - fGckin2 = (Gckin2_t *) dlsym(handle,"GCKIN2"); - fGckin3 = (Gckin3_t *) dlsym(handle,"GCKIN3"); - fGcmate = (Gcmate_t *) dlsym(handle,"GCMATE"); - fGctmed = (Gctmed_t *) dlsym(handle,"GCTMED"); - fGctrak = (Gctrak_t *) dlsym(handle,"GCTRAK"); - fGctpol = (Gctpol_t *) dlsym(handle,"GCTPOL"); - fGcvolu = (Gcvolu_t *) dlsym(handle,"GCVOLU"); - fGcnum = (Gcnum_t *) dlsym(handle,"GCNUM"); - fGcsets = (Gcsets_t *) dlsym(handle,"GCSETS"); - fGcphys = (Gcphys_t *) dlsym(handle,"GCPHYS"); - fGcphlt = (Gcphlt_t *) dlsym(handle,"GCPHLT"); - fGcopti = (Gcopti_t *) dlsym(handle,"GCOPTI"); - fGctlit = (Gctlit_t *) dlsym(handle,"GCTLIT"); - fGcvdma = (Gcvdma_t *) dlsym(handle,"GCVDMA"); - - // Commons for GEANE - fErtrio = (Ertrio_t *) dlsym(handle,"ERTRIO"); - fEropts = (Eropts_t *) dlsym(handle,"EROPTS"); - fEroptc = (Eroptc_t *) dlsym(handle,"EROPTC"); - fErwork = (Erwork_t *) dlsym(handle,"ERWORK"); -#endif - - // Variables for ZEBRA store - // - fZlq = (Int_t *) &(fGcbank->lmain)-1; - fZiq = (Int_t *) &(fGcbank->lmain)+7; - fZq = (Float_t *)fZiq; - + Int_t *addr; + gcomad(PASSCHARD("QUEST"), (int*&) fQuest PASSCHARL("QUEST")); + gcomad(PASSCHARD("GCBANK"),(int*&) fGcbank PASSCHARL("GCBANK")); + gcomad(PASSCHARD("GCLINK"),(int*&) fGclink PASSCHARL("GCLINK")); + gcomad(PASSCHARD("GCCUTS"),(int*&) fGccuts PASSCHARL("GCCUTS")); + gcomad(PASSCHARD("GCMULO"),(int*&) fGcmulo PASSCHARL("GCMULO")); + gcomad(PASSCHARD("GCFLAG"),(int*&) fGcflag PASSCHARL("GCFLAG")); + gcomad(PASSCHARD("GCKINE"),(int*&) fGckine PASSCHARL("GCKINE")); + gcomad(PASSCHARD("GCKING"),(int*&) fGcking PASSCHARL("GCKING")); + gcomad(PASSCHARD("GCKIN2"),(int*&) fGckin2 PASSCHARL("GCKIN2")); + gcomad(PASSCHARD("GCKIN3"),(int*&) fGckin3 PASSCHARL("GCKIN3")); + gcomad(PASSCHARD("GCMATE"),(int*&) fGcmate PASSCHARL("GCMATE")); + gcomad(PASSCHARD("GCTMED"),(int*&) fGctmed PASSCHARL("GCTMED")); + gcomad(PASSCHARD("GCTRAK"),(int*&) fGctrak PASSCHARL("GCTRAK")); + gcomad(PASSCHARD("GCTPOL"),(int*&) fGctpol PASSCHARL("GCTPOL")); + gcomad(PASSCHARD("GCVOLU"),(int*&) fGcvolu PASSCHARL("GCVOLU")); + gcomad(PASSCHARD("GCNUM"), (int*&) fGcnum PASSCHARL("GCNUM")); + gcomad(PASSCHARD("GCSETS"),(int*&) fGcsets PASSCHARL("GCSETS")); + gcomad(PASSCHARD("GCPHYS"),(int*&) fGcphys PASSCHARL("GCPHYS")); + gcomad(PASSCHARD("GCPHLT"),(int*&) fGcphlt PASSCHARL("GCPHLT")); + gcomad(PASSCHARD("GCOPTI"),(int*&) fGcopti PASSCHARL("GCOPTI")); + gcomad(PASSCHARD("GCTLIT"),(int*&) fGctlit PASSCHARL("GCTLIT")); + gcomad(PASSCHARD("GCVDMA"),(int*&) fGcvdma PASSCHARL("GCVDMA")); + + // Commons for GEANE + gcomad(PASSCHARD("ERTRIO"),(int*&) fErtrio PASSCHARL("ERTRIO")); + gcomad(PASSCHARD("EROPTS"),(int*&) fEropts PASSCHARL("EROPTS")); + gcomad(PASSCHARD("EROPTC"),(int*&) fEroptc PASSCHARL("EROPTC")); + gcomad(PASSCHARD("ERWORK"),(int*&) fErwork PASSCHARL("ERWORK")); + + // Variables for ZEBRA store + gcomad(PASSCHARD("IQ"), addr PASSCHARL("IQ")); + fZiq = addr; + gcomad(PASSCHARD("LQ"), addr PASSCHARL("LQ")); + fZlq = addr; + fZq = (float*)fZiq; } //_____________________________________________________________________________ -- 2.39.3