C*GREXEC -- PGPLOT device handler dispatch routine C+ SUBROUTINE GREXEC(IDEV,IFUNC,RBUF,NBUF,CHR,LCHR) INTEGER IDEV, IFUNC, NBUF, LCHR REAL RBUF(*) CHARACTER*(*) CHR C C--- INTEGER NDEV C change the value of NDEV to reflect the number of C devices defined below by the 'computed GOTO' C C February 1994 Version 1.00 has only NU, AC and PS drivers. C (The PS driver comes with 4 modes) C PARAMETER (NDEV=7) CHARACTER*10 MSG C--- GOTO(1,2,3,4,5,6,7) IDEV IF (IDEV.EQ.0) THEN RBUF(1) = NDEV NBUF = 1 ELSE WRITE (MSG,'(I10)') IDEV CALL GRQUIT('Unknown device code in GREXEC: '//MSG) END IF RETURN C--- 1 CALL NUDRIV(IFUNC,RBUF,NBUF,CHR,LCHR) RETURN 2 CALL ACDRIV(IFUNC,RBUF,NBUF,CHR,LCHR,1) RETURN 3 CALL ACDRIV(IFUNC,RBUF,NBUF,CHR,LCHR,2) RETURN 4 CALL PSDRIV(IFUNC,RBUF,NBUF,CHR,LCHR,1) RETURN 5 CALL PSDRIV(IFUNC,RBUF,NBUF,CHR,LCHR,2) RETURN 6 CALL PSDRIV(IFUNC,RBUF,NBUF,CHR,LCHR,3) RETURN 7 CALL PSDRIV(IFUNC,RBUF,NBUF,CHR,LCHR,4) RETURN C END