*"表題 共通パラメーター管理 GTOOL3(GTPGET)
*
*"履歴 90/09/21 沼口  敦
*
*
*********************************************************************
*"         << 共通パラメータ（数）を参照 >>
*********************************************************************
      SUBROUTINE GTPGET
     I         ( HP,
     O           IPARA )
*
      CHARACTER HP   *(*)                !" パラメーターの名前
*"   (INTEGER)  IPARA                    ! パラメーターの内容：数字
*
      CHARACTER HPARA*(*)                !" パラメーターの内容：文字
*
      PARAMETER ( NPP=4, NPC=10 )
*
      REAL      RX( NPP )
      INTEGER   IX( NPP )
      LOGICAL   LX( NPP )
      EQUIVALENCE ( RX,IX,LX )
*
#ifdef SYS_IBMS
      INCLUDE    (GZSIZE)                    !" NCC, NDC, NFILN
#else
#include         "gzsize.F"                  !" NCC, NDC, NFILN
#endif
      CHARACTER HPP  ( NPP )*8
      CHARACTER HPC  ( NPC )*8
      CHARACTER HX   ( NPC )*(NFILN)
      CHARACTER CMSG*80
*
      SAVE  IX, HPP, HX, HPC
*
      DATA      HPP( 1)/'MISS    '/, RX( 1)/-999./   !" 欠損値
      DATA      HPP( 2)/'SUBCHK  '/, LX( 2)/.FALSE./ !" チェック
      DATA      HPP( 3)/'WFILE   '/, IX( 3)/91/      !" 作業ファイル
      DATA      HPP( 4)/'STYTSQ  '/, IX( 4)/1/       !" 時間軸方向
*
      DATA      HPC( 1)/'FAXLOC  '/, HX( 1)/           !" 格子位置
     & GTAXLOC /
      DATA      HPC( 2)/'FAXWGT  '/, HX( 2)/           !" 格子重み
     & GTAXWGT /
      DATA      HPC( 3)/'FAXLOC1 '/, HX( 3)/'GTAXLOC.'/!" 格子位置
      DATA      HPC( 4)/'FAXWGT1 '/, HX( 4)/'GTAXWGT.'/!" 格子重み
      DATA      HPC( 5)/'UTIM    '/, HX( 5)/'DAY '/  !" 時間表示単位
      DATA      HPC( 6)/'MYSIGN  '/, HX( 6)/'GTOOL3'/!" あなたの名前
      DATA      HPC( 7)/'DDSET   '/, HX( 7)/'TEST'  /!" デフォルトDS
      DATA      HPC( 8)/'ITEMSEQ '/, HX( 8)/'TIME'  /!" 系列ITEM
      DATA      HPC( 9)/'AXISSEQ '/, HX( 9)/'@EXTAX'/!" 系列軸名
      DATA      HPC(10)/'APPENDC '/, HX(10)/'+'/     !" APPENDモード
*
      DO 1100 N = 1, NPP
        IF ( HP .EQ. HPP  (N) ) THEN
          IPARA = IX(N)
          RETURN
        END IF
 1100 CONTINUE
*
      NHP  = LENC(HP)
      CMSG = 'PARAMETER '''//HP(1:NHP)//''' IS NOT DEFINED.'
      CALL MSGDMP( 'E', 'GTPGET', CMSG )
*
      RETURN
*=======================================================================
*"         << 共通パラメータ（数）を設定 >>
*=======================================================================
      ENTRY GTPSET
     I         ( HP, IPARA )
*
      DO 2100 N = 1, NPP
        IF ( HP .EQ. HPP  (N) ) THEN
          IX( N ) = IPARA
          RETURN
        END IF
 2100 CONTINUE
*
      NHP = LENC(HP)
      CMSG = 'PARAMETER '''//HP(1:NHP)//''' IS NOT DEFINED.'
      CALL MSGDMP( 'E', 'GTPSET', CMSG )
*
      RETURN
*=======================================================================
*"         << 共通パラメータ（文字）を参照 >>
*=======================================================================
      ENTRY GTCGET
     I         ( HP,
     O           HPARA )
*
      DO 3100 N = 1, NPC
        IF ( HP .EQ. HPC(N) ) THEN
          HPARA = HX( N )
          RETURN
        END IF
 3100 CONTINUE
*
      NHP = LENC(HP)
      CMSG = 'PARAMETER '''//HP(1:NHP)//''' IS NOT DEFINED.'
      CALL MSGDMP( 'E', 'GTCGET', CMSG )
*
      RETURN
*=======================================================================
*"         << 共通パラメーター（文字）を設定 >>
*=======================================================================
      ENTRY GTCSET
     I         ( HP, HPARA )
*
      DO 4100 N = 1, NPC
        IF ( HP .EQ. HPC(N) ) THEN
          HX( N ) = HPARA
          RETURN
        END IF
 4100 CONTINUE
*
      NHP = LENC(HP)
      CMSG = 'PARAMETER '''//HP(1:NHP)//''' IS NOT DEFINED.'
      CALL MSGDMP( 'E', 'GTCSET', CMSG )
*
      RETURN
      END
