Retrieval of data into existing software

When existing software has to be modified to accept data from HEPDB it would appear that there could be a problem in loading objects into predefined positions in ZEBRA store. To overcome this problem HEPDB provides a routine CDGET which can be used to retrieve a data structure to a user specified location.

However it must be noted that the caching facilities offered to routines such as CDUSEM are not available with CDGET. Full details of the use of this routine are give elsewhere in this manual.

As well as the routine CDGET the user may get objects in the usual way ( using ZSHUNT to move the required databank to a specified location in memory. An example of such a `shunt' is given below , note the code uses the routines HDBFET and AUCAS as defined above.

                       Example use of ZSHUNT
                                  

               .
               .some code
               .
c+-------------------------------------------------------------------+
c|    Input universal geometry (LIGDX0)                              |
c+-------------------------------------------------------------------+
         CALL HDBFET(PATH,NUMRUN,DETNAM(IDET),'GDX0',LBANK)
         CALL ZSHUNT(IDVGDX,LB(LBANK-1),LMIGDX,0,0)
         LIGDX0(IDET)=LB(LMIGDX)
         CALL UCTOH('IGDX',IB(LIGDX0(IDET)-4),4,4)
         IB(LIGDX0(IDET)-5)=IDET
         CALL RDBGDX(IDET)
         CALL AUCAS(PATH,DETNAM(IDET),'GDX0',LBANK)
               .
               .some code
               .