!DEC$ FREEFORM

!
!  Copyright 2001 Compaq Computer Corporation
!  
!  Compaq and the Compaq logo Registered in U.S. Patent and Trademark
!  Office.
!  
!  Confidential computer software.  Valid license from Compaq required for
!  possession, use or copying.  Consistent with FAR 12.211 and 12.212,
!  Commerical Computer Software, Computer Software Documentation, and
!  Technical Data for Commmerical Items are licensed to the U.S. Government
!  under vendor's standard commerical license.
!

!DEC$ IF .NOT. DEFINED( __sig_interface_decl_include )

   !DEC$ DEFINE __sig_interface_decl_include

   !DEC$ IF DEFINED( _DLL )
      !DEC$ OBJCOMMENT LIB: "cxmldll.lib" 
   !DEC$ ELSE
      !DEC$ OBJCOMMENT LIB: "cxml.lib" 
   !DEC$ ENDIF


   STRUCTURE /DXML_C_FFT_STRUCTURE/
      INTEGER*4 N
      LOGICAL*4 STRIDE_1_FLAG
      INTEGER*4 N_TI(0:16)
      INTEGER*4 N_K(0:16)
      INTEGER*4 N_T(0:16)
      INTEGER*4 TYPE(0:16)
      INTEGER*4 NUM_STAGES
      INTEGER*4 ROTATION_VECTOR
      INTEGER*4 ROTATION_VECTOR_SIZE
      INTEGER*4 TEMP_AREA
      INTEGER*4 TEMP_AREA_SIZE
      INTEGER*4 SET_BLOCK_SIZE
      INTEGER*4 NUM_NON_SPECIAL_RADIX
      INTEGER*4 NON_SPECIAL_RADIX(0:16)
      INTEGER*4 NON_SPEC_RAD_TWIDDLE_SIZE
      INTEGER*4 NON_SPEC_RAD_TWIDDLE_VEC
      INTEGER*4 NON_SPECIAL_RADIX_COS(0:16)
      INTEGER*4 NON_SPECIAL_RADIX_SIN(0:16)
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
      INTEGER*4 GK(0:11)
   END STRUCTURE

   STRUCTURE /DXML_S_FFT_STRUCTURE/
      INTEGER*4 N
      LOGICAL*4 STRIDE_1_FLAG
      RECORD /DXML_C_FFT_STRUCTURE/ CV_STRUCT
      INTEGER*4 COS_RECOMB
      INTEGER*4 SIN_RECOMB
      INTEGER*4 TWIDDLE_RECOMB_POINTER
      INTEGER*4 TWIDDLE_RECOMB_SIZE
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
   END STRUCTURE

   STRUCTURE /DXML_Z_FFT_STRUCTURE/
      INTEGER*4 N
      LOGICAL*4 STRIDE_1_FLAG
      INTEGER*4 N_TI(0:16)
      INTEGER*4 N_K(0:16)
      INTEGER*4 N_T(0:16)
      INTEGER*4 TYPE(0:16)
      INTEGER*4 NUM_STAGES
      INTEGER*4 ROTATION_VECTOR
      INTEGER*4 ROTATION_VECTOR_SIZE
      INTEGER*4 TEMP_AREA
      INTEGER*4 TEMP_AREA_SIZE
      INTEGER*4 SET_BLOCK_SIZE
      INTEGER*4 NUM_NON_SPECIAL_RADIX
      INTEGER*4 NON_SPECIAL_RADIX(0:16)
      INTEGER*4 NON_SPEC_RAD_TWIDDLE_SIZE
      INTEGER*4 NON_SPEC_RAD_TWIDDLE_VEC
      INTEGER*4 NON_SPECIAL_RADIX_COS(0:16)
      INTEGER*4 NON_SPECIAL_RADIX_SIN(0:16)
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
      INTEGER*4 GK(0:11)
   END STRUCTURE

   STRUCTURE /DXML_D_FFT_STRUCTURE/
      INTEGER*4 N
      LOGICAL*4 STRIDE_1_FLAG
      RECORD /DXML_Z_FFT_STRUCTURE/ CV_STRUCT
      INTEGER*4 COS_RECOMB
      INTEGER*4 SIN_RECOMB
      INTEGER*4 TWIDDLE_RECOMB_POINTER
      INTEGER*4 TWIDDLE_RECOMB_SIZE
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
   END STRUCTURE

   STRUCTURE /DXML_C_GRP_FFT_STRUCTURE/
      INTEGER*4 N
      LOGICAL*4 GRP_STRIDE_1_FLAG
      INTEGER*4 GRP_BLOCK_SIZE
      INTEGER*4 N_TI(0:16)
      INTEGER*4 N_K(0:16)
      INTEGER*4 N_T(0:16)
      INTEGER*4 TYPE(0:16)
      INTEGER*4 NUM_STAGES
      INTEGER*4 ROTATION_VECTOR
      INTEGER*4 ROTATION_VECTOR_SIZE
      INTEGER*4 TEMP_AREA
      INTEGER*4 TEMP_AREA_SIZE
      INTEGER*4 NUM_NON_SPECIAL_RADIX
      INTEGER*4 NON_SPECIAL_RADIX(0:16)
      INTEGER*4 NON_SPEC_RAD_TWIDDLE_SIZE
      INTEGER*4 NON_SPEC_RAD_TWIDDLE_VEC
      INTEGER*4 NON_SPECIAL_RADIX_COS(0:16)
      INTEGER*4 NON_SPECIAL_RADIX_SIN(0:16)
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
      INTEGER*4 GK(0:11)
   END STRUCTURE

   STRUCTURE /DXML_Z_GRP_FFT_STRUCTURE/
      INTEGER*4 N
      LOGICAL*4 GRP_STRIDE_1_FLAG
      INTEGER*4 GRP_BLOCK_SIZE
      INTEGER*4 N_TI(0:16)
      INTEGER*4 N_K(0:16)
      INTEGER*4 N_T(0:16)
      INTEGER*4 TYPE(0:16)
      INTEGER*4 NUM_STAGES
      INTEGER*4 ROTATION_VECTOR
      INTEGER*4 ROTATION_VECTOR_SIZE
      INTEGER*4 TEMP_AREA
      INTEGER*4 TEMP_AREA_SIZE
      INTEGER*4 NUM_NON_SPECIAL_RADIX
      INTEGER*4 NON_SPECIAL_RADIX(0:16)
      INTEGER*4 NON_SPEC_RAD_TWIDDLE_SIZE
      INTEGER*4 NON_SPEC_RAD_TWIDDLE_VEC
      INTEGER*4 NON_SPECIAL_RADIX_COS(0:16)
      INTEGER*4 NON_SPECIAL_RADIX_SIN(0:16)
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
      INTEGER*4 GK(0:11)
   END STRUCTURE

   STRUCTURE /DXML_S_GRP_FFT_STRUCTURE/
      INTEGER*4 N
      LOGICAL*4 GRP_STRIDE_1_FLAG
      RECORD /DXML_C_GRP_FFT_STRUCTURE/ CV_STRUCT
      INTEGER*4 COS_RECOMB
      INTEGER*4 SIN_RECOMB
      INTEGER*4 TWIDDLE_RECOMB_POINTER
      INTEGER*4 TWIDDLE_RECOMB_SIZE
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
   END STRUCTURE

   STRUCTURE /DXML_D_GRP_FFT_STRUCTURE/
      INTEGER*4 N
      LOGICAL*4 GRP_STRIDE_1_FLAG
      RECORD /DXML_Z_GRP_FFT_STRUCTURE/ CV_STRUCT
      INTEGER*4 COS_RECOMB
      INTEGER*4 SIN_RECOMB
      INTEGER*4 TWIDDLE_RECOMB_POINTER
      INTEGER*4 TWIDDLE_RECOMB_SIZE
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
   END STRUCTURE

   STRUCTURE /DXML_C_FFT_STRUCTURE_2D/
      INTEGER*4 X_STRUCTURE_PTR
      INTEGER*4 Y_STRUCTURE_PTR
      INTEGER*4 NX,NY
      CHARACTER*16 X_TYPE
      INTEGER*4 X_SIZE,Y_SIZE
      LOGICAL*4 STRIDE_X_1_FLAG
      INTEGER*4 TEMP_AREA
      INTEGER*4 TEMP_AREA_SIZE
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
      INTEGER*4 GK(0:11)
   END STRUCTURE

   STRUCTURE /DXML_C_FFT_STRUCTURE_3D/
      INTEGER*4 X_STRUCTURE_PTR
      INTEGER*4 Y_STRUCTURE_PTR
      INTEGER*4 Z_STRUCTURE_PTR
      INTEGER*4 NX,NY,NZ
      CHARACTER*16 X_TYPE
      INTEGER*4 X_SIZE,Y_SIZE,Z_SIZE
      LOGICAL*4 STRIDE_X_1_FLAG
      INTEGER*4 TEMP_AREA
      INTEGER*4 TEMP_AREA_SIZE
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
      INTEGER*4 GK(0:11)
   END STRUCTURE

   STRUCTURE /DXML_Z_FFT_STRUCTURE_2D/
      INTEGER*4 X_STRUCTURE_PTR
      INTEGER*4 Y_STRUCTURE_PTR
      INTEGER*4 NX,NY
      CHARACTER*16 X_TYPE
      INTEGER*4 X_SIZE,Y_SIZE
      LOGICAL*4 STRIDE_X_1_FLAG
      INTEGER*4 TEMP_AREA
      INTEGER*4 TEMP_AREA_SIZE
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
      INTEGER*4 GK(0:11)
   END STRUCTURE

   STRUCTURE /DXML_Z_FFT_STRUCTURE_3D/
      INTEGER*4 X_STRUCTURE_PTR
      INTEGER*4 Y_STRUCTURE_PTR
      INTEGER*4 Z_STRUCTURE_PTR
      INTEGER*4 NX,NY,NZ
      CHARACTER*16 X_TYPE
      INTEGER*4 X_SIZE,Y_SIZE,Z_SIZE
      LOGICAL*4 STRIDE_X_1_FLAG
      INTEGER*4 TEMP_AREA
      INTEGER*4 TEMP_AREA_SIZE
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
      INTEGER*4 GK(0:11)
   END STRUCTURE

   STRUCTURE /DXML_S_FFT_STRUCTURE_2D/
      INTEGER*4 X_STRUCTURE_PTR
      INTEGER*4 Y_STRUCTURE_PTR
      INTEGER*4 NX,NY
      CHARACTER*16 X_TYPE
      INTEGER*4 Y_GRP_BLOCK_SIZE,X_GRP_BLOCK_SIZE
      INTEGER*4 X_SIZE,Y_SIZE
      LOGICAL*4 STRIDE_X_1_FLAG
      INTEGER*4 COS_RECOMB
      INTEGER*4 SIN_RECOMB
      INTEGER*4 TWIDDLE_RECOMB_POINTER
      INTEGER*4 TWIDDLE_RECOMB_SIZE
      INTEGER*4 TEMP_AREA
      INTEGER*4 TEMP_AREA_SIZE
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
      INTEGER*4 GK(0:11)
   END STRUCTURE

   STRUCTURE /DXML_S_FFT_STRUCTURE_3D/
      INTEGER*4 X_STRUCTURE_PTR
      INTEGER*4 Y_STRUCTURE_PTR
      INTEGER*4 Z_STRUCTURE_PTR
      INTEGER*4 NX,NY,NZ
      CHARACTER*16 X_TYPE
      INTEGER*4 Z_GRP_BLOCK_SIZE,Y_GRP_BLOCK_SIZE,X_GRP_BLOCK_SIZE
      INTEGER*4 X_SIZE,Y_SIZE,Z_SIZE
      LOGICAL*4 STRIDE_X_1_FLAG
      INTEGER*4 COS_RECOMB
      INTEGER*4 SIN_RECOMB
      INTEGER*4 TWIDDLE_RECOMB_POINTER
      INTEGER*4 TWIDDLE_RECOMB_SIZE
      INTEGER*4 TEMP_AREA
      INTEGER*4 TEMP_AREA_SIZE
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
      INTEGER*4 GK(0:11)
   END STRUCTURE

   STRUCTURE /DXML_D_FFT_STRUCTURE_2D/
      INTEGER*4 X_STRUCTURE_PTR
      INTEGER*4 Y_STRUCTURE_PTR
      INTEGER*4 NX,NY
      CHARACTER*16 X_TYPE
      INTEGER*4 Y_GRP_BLOCK_SIZE,X_GRP_BLOCK_SIZE
      INTEGER*4 X_SIZE,Y_SIZE
      LOGICAL*4 STRIDE_X_1_FLAG
      INTEGER*4 COS_RECOMB
      INTEGER*4 SIN_RECOMB
      INTEGER*4 TWIDDLE_RECOMB_POINTER
      INTEGER*4 TWIDDLE_RECOMB_SIZE
      INTEGER*4 TEMP_AREA
      INTEGER*4 TEMP_AREA_SIZE
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
      INTEGER*4 GK(0:11)
   END STRUCTURE

   STRUCTURE /DXML_D_FFT_STRUCTURE_3D/
      INTEGER*4 X_STRUCTURE_PTR
      INTEGER*4 Y_STRUCTURE_PTR
      INTEGER*4 Z_STRUCTURE_PTR
      INTEGER*4 NX,NY,NZ
      CHARACTER*16 X_TYPE
      INTEGER*4 Z_GRP_BLOCK_SIZE,Y_GRP_BLOCK_SIZE,X_GRP_BLOCK_SIZE
      INTEGER*4 X_SIZE,Y_SIZE,Z_SIZE
      LOGICAL*4 STRIDE_X_1_FLAG
      INTEGER*4 COS_RECOMB
      INTEGER*4 SIN_RECOMB
      INTEGER*4 TWIDDLE_RECOMB_POINTER
      INTEGER*4 TWIDDLE_RECOMB_SIZE
      INTEGER*4 TEMP_AREA
      INTEGER*4 TEMP_AREA_SIZE
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
      INTEGER*4 GK(0:11)
   END STRUCTURE

   STRUCTURE /DXML_S_FHT_STRUCTURE/
      INTEGER*4 N
      LOGICAL*4 STRIDE_1_FLAG
      INTEGER*4 N_TI(0:16)
      INTEGER*4 N_K(0:16)
      INTEGER*4 N_T(0:16)
      INTEGER*4 TYPE(0:16)
      INTEGER*4 NUM_STAGES
      INTEGER*4 ROTATION_VECTOR
      INTEGER*4 ROTATION_VECTOR_SIZE
      INTEGER*4 TEMP_AREA
      INTEGER*4 TEMP_AREA_SIZE
      INTEGER*4 SET_BLOCK_SIZE
      INTEGER*4 NUM_NON_SPECIAL_RADIX
      INTEGER*4 NON_SPECIAL_RADIX(0:16)
      INTEGER*4 NON_SPEC_RAD_TWIDDLE_SIZE
      INTEGER*4 NON_SPEC_RAD_TWIDDLE_VEC
      INTEGER*4 NON_SPECIAL_RADIX_COS(0:16)
      INTEGER*4 NON_SPECIAL_RADIX_SIN(0:16)
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
      INTEGER*4 GK(0:11)
   END STRUCTURE

   STRUCTURE /DXML_S_FST_STRUCTURE/
      RECORD /DXML_S_FHT_STRUCTURE/ FHT_STRUCT
      INTEGER*4 N
      INTEGER*4 TYPE
      LOGICAL*4 STRIDE_1_FLAG
      INTEGER*4 TWIDDLE_POINTER
      INTEGER*4 TWIDDLE_SIZE
      INTEGER*4 TEMP_ARRAY_PTR
      INTEGER*4 TEMP_ARRAY_SIZE
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
   END STRUCTURE

   STRUCTURE /DXML_S_FCT_STRUCTURE/
      RECORD /DXML_S_FHT_STRUCTURE/ FHT_STRUCT
      INTEGER*4 N
      INTEGER*4 TYPE
      LOGICAL*4 STRIDE_1_FLAG
      INTEGER*4 TWIDDLE_POINTER
      INTEGER*4 TWIDDLE_SIZE
      INTEGER*4 TEMP_ARRAY_PTR
      INTEGER*4 TEMP_ARRAY_SIZE
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
   END STRUCTURE

   STRUCTURE /DXML_D_FHT_STRUCTURE/
      INTEGER*4 N
      LOGICAL*4 STRIDE_1_FLAG
      INTEGER*4 N_TI(0:16)
      INTEGER*4 N_K(0:16)
      INTEGER*4 N_T(0:16)
      INTEGER*4 TYPE(0:16)
      INTEGER*4 NUM_STAGES
      INTEGER*4 ROTATION_VECTOR
      INTEGER*4 ROTATION_VECTOR_SIZE
      INTEGER*4 TEMP_AREA
      INTEGER*4 TEMP_AREA_SIZE
      INTEGER*4 SET_BLOCK_SIZE
      INTEGER*4 NUM_NON_SPECIAL_RADIX
      INTEGER*4 NON_SPECIAL_RADIX(0:16)
      INTEGER*4 NON_SPEC_RAD_TWIDDLE_SIZE
      INTEGER*4 NON_SPEC_RAD_TWIDDLE_VEC
      INTEGER*4 NON_SPECIAL_RADIX_COS(0:16)
      INTEGER*4 NON_SPECIAL_RADIX_SIN(0:16)
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
      INTEGER*4 GK(0:11)
   END STRUCTURE

   STRUCTURE /DXML_D_FST_STRUCTURE/
      RECORD /DXML_D_FHT_STRUCTURE/ FHT_STRUCT
      INTEGER*4 N
      INTEGER*4 TYPE
      LOGICAL*4 STRIDE_1_FLAG
      INTEGER*4 TWIDDLE_POINTER
      INTEGER*4 TWIDDLE_SIZE
      INTEGER*4 TEMP_ARRAY_PTR
      INTEGER*4 TEMP_ARRAY_SIZE
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
   END STRUCTURE

   STRUCTURE /DXML_D_FCT_STRUCTURE/
      RECORD /DXML_D_FHT_STRUCTURE/ FHT_STRUCT
      INTEGER*4 N
      INTEGER*4 TYPE
      LOGICAL*4 STRIDE_1_FLAG
      INTEGER*4 TWIDDLE_POINTER
      INTEGER*4 TWIDDLE_SIZE
      INTEGER*4 TEMP_ARRAY_PTR
      INTEGER*4 TEMP_ARRAY_SIZE
      INTEGER*4 NUM_PROCESSORS
      INTEGER*4 FUTURE_USE(20)
   END STRUCTURE

   STRUCTURE /DXML_S_CONV_CORR_STRUCTURE/
      INTEGER*4 N_A,N_B,N_SIG,N_GOOD_VALUE
      INTEGER*4 A_WORK_PTR
      INTEGER*4 B_WORK_PTR
      INTEGER*4 WORK_PTR
      INTEGER*4 WORK_SIZE
      RECORD /DXML_S_FFT_STRUCTURE/ FFT_STRUCT
   END STRUCTURE

   STRUCTURE /DXML_D_CONV_CORR_STRUCTURE/
      INTEGER*4 N_A,N_B,N_SIG,N_GOOD_VALUE
      INTEGER*4 A_WORK_PTR
      INTEGER*4 B_WORK_PTR
      INTEGER*4 WORK_PTR
      INTEGER*4 WORK_SIZE
      RECORD /DXML_D_FFT_STRUCTURE/ FFT_STRUCT
   END STRUCTURE

   STRUCTURE /DXML_C_CONV_CORR_STRUCTURE/
      INTEGER*4 N_A,N_B,N_SIG,N_GOOD_VALUE
      INTEGER*4 A_WORK_PTR
      INTEGER*4 B_WORK_PTR
      INTEGER*4 WORK_PTR
      INTEGER*4 WORK_SIZE
      RECORD /DXML_S_FFT_STRUCTURE/ FFT_STRUCT
   END STRUCTURE

   STRUCTURE /DXML_Z_CONV_CORR_STRUCTURE/
      INTEGER*4 N_A,N_B,N_SIG,N_GOOD_VALUE
      INTEGER*4 A_WORK_PTR
      INTEGER*4 B_WORK_PTR
      INTEGER*4 WORK_PTR
      INTEGER*4 WORK_SIZE
      RECORD /DXML_D_FFT_STRUCTURE/ FFT_STRUCT
   END STRUCTURE


   !DEC$ IF DEFINED ( _cfft_ )
	 !DEC$ ATTRIBUTES C,REFERENCE,VARYING::cfft
	 !DEC$ ATTRIBUTES ALIAS:'_CFFT'::cfft
   !DEC$ ELSE
	 INTERFACE
	     INTEGER*4 FUNCTION cfft
	     !DEC$ ATTRIBUTES C,REFERENCE,VARYING::cfft
	     !DEC$ ATTRIBUTES ALIAS:'_CFFT'::cfft
	     END FUNCTION cfft
	 END INTERFACE
   !DEC$ ENDIF

   !DEC$ IF DEFINED ( _cfft_2d_ )
	 !DEC$ ATTRIBUTES C,REFERENCE,VARYING::cfft_2d
	 !DEC$ ATTRIBUTES ALIAS:'_CFFT_2D'::cfft_2d
   !DEC$ ELSE
	 INTERFACE
	     INTEGER*4 FUNCTION cfft_2d
	     !DEC$ ATTRIBUTES C,REFERENCE,VARYING::cfft_2d
	     !DEC$ ATTRIBUTES ALIAS:'_CFFT_2D'::cfft_2d
	     END FUNCTION cfft_2d
	 END INTERFACE
   !DEC$ ENDIF

   !DEC$ IF DEFINED ( _cfft_3d_ )
	 !DEC$ ATTRIBUTES C,REFERENCE,VARYING::cfft_3d
	 !DEC$ ATTRIBUTES ALIAS:'_CFFT_3D'::cfft_3d
   !DEC$ ELSE
	 INTERFACE
	     INTEGER*4 FUNCTION cfft_3d
	     !DEC$ ATTRIBUTES C,REFERENCE,VARYING::cfft_3d
	     !DEC$ ATTRIBUTES ALIAS:'_CFFT_3D'::cfft_3d
	     END FUNCTION cfft_3d
	 END INTERFACE
   !DEC$ ENDIF

   !DEC$ IF DEFINED ( _cgrp_fft_ )
	 !DEC$ ATTRIBUTES C,REFERENCE,VARYING::cfft_grp
	 !DEC$ ATTRIBUTES ALIAS:'_CFFT_GRP'::cfft_grp
   !DEC$ ELSE
	 INTERFACE
	     INTEGER*4 FUNCTION cfft_grp
	     !DEC$ ATTRIBUTES C,REFERENCE,VARYING::cfft_grp
	     !DEC$ ATTRIBUTES ALIAS:'_CFFT_GRP'::cfft_grp
	     END FUNCTION cfft_grp
	 END INTERFACE
   !DEC$ ENDIF

   !DEC$ IF DEFINED ( _cfft_apply_ )
	 !DEC$ ATTRIBUTES C,REFERENCE,VARYING::cfft_apply
	 !DEC$ ATTRIBUTES ALIAS:'_CFFT_APPLY'::cfft_apply
   !DEC$ ELSE
	 INTERFACE
	     INTEGER*4 FUNCTION cfft_apply
	     !DEC$ ATTRIBUTES C,REFERENCE,VARYING::cfft_apply
	     !DEC$ ATTRIBUTES ALIAS:'_CFFT_APPLY'::cfft_apply
	     END FUNCTION cfft_apply
	 END INTERFACE
   !DEC$ ENDIF

   !DEC$ IF DEFINED ( _cfft_apply_2d_ )
	 !DEC$ ATTRIBUTES C,REFERENCE,VARYING::cfft_apply_2d
	 !DEC$ ATTRIBUTES ALIAS:'_CFFT_APPLY_2D'::cfft_apply_2d
   !DEC$ ELSE
	 INTERFACE
	     INTEGER*4 FUNCTION cfft_apply_2d
	     !DEC$ ATTRIBUTES C,REFERENCE,VARYING::cfft_apply_2d
	     !DEC$ ATTRIBUTES ALIAS:'_CFFT_APPLY_2D'::cfft_apply_2d
	     END FUNCTION cfft_apply_2d
	 END INTERFACE
   !DEC$ ENDIF

   !DEC$ IF DEFINED ( _cfft_apply_3d_ )
	 !DEC$ ATTRIBUTES C,REFERENCE,VARYING::cfft_apply_3d
	 !DEC$ ATTRIBUTES ALIAS:'_CFFT_APPLY_3D'::cfft_apply_3d
   !DEC$ ELSE
	 INTERFACE
	     INTEGER*4 FUNCTION cfft_apply_3d
	     !DEC$ ATTRIBUTES C,REFERENCE,VARYING::cfft_apply_3d
	     !DEC$ ATTRIBUTES ALIAS:'_CFFT_APPLY_3D'::cfft_apply_3d
	     END FUNCTION cfft_apply_3d
	 END INTERFACE
   !DEC$ ENDIF

   !DEC$ IF DEFINED ( _cgrp_fft_apply_ )
	 !DEC$ ATTRIBUTES C,REFERENCE,VARYING::cfft_apply_grp
	 !DEC$ ATTRIBUTES ALIAS:'_CFFT_APPLY_GRP'::cfft_apply_grp
   !DEC$ ELSE
	 INTERFACE
	     INTEGER*4 FUNCTION cfft_apply_grp
	     !DEC$ ATTRIBUTES C,REFERENCE,VARYING::cfft_apply_grp
	     !DEC$ ATTRIBUTES ALIAS:'_CFFT_APPLY_GRP'::cfft_apply_grp
	     END FUNCTION cfft_apply_grp
	 END INTERFACE
   !DEC$ ENDIF

   !DEC$ IF DEFINED ( _zfft_ )
	 !DEC$ ATTRIBUTES C,REFERENCE,VARYING::zfft
	 !DEC$ ATTRIBUTES ALIAS:'_ZFFT'::zfft
   !DEC$ ELSE
	 INTERFACE
	     INTEGER*4 FUNCTION zfft
	     !DEC$ ATTRIBUTES C,REFERENCE,VARYING::zfft
	     !DEC$ ATTRIBUTES ALIAS:'_ZFFT'::zfft
	     END FUNCTION zfft
	 END INTERFACE
   !DEC$ ENDIF

   !DEC$ IF DEFINED ( _zfft_2d_ )
	 !DEC$ ATTRIBUTES C,REFERENCE,VARYING::zfft_2d
	 !DEC$ ATTRIBUTES ALIAS:'_ZFFT_2D'::zfft_2d
   !DEC$ ELSE
	 INTERFACE
	     INTEGER*4 FUNCTION zfft_2d
	     !DEC$ ATTRIBUTES C,REFERENCE,VARYING::zfft_2d
	     !DEC$ ATTRIBUTES ALIAS:'_ZFFT_2D'::zfft_2d
	     END FUNCTION zfft_2d
	 END INTERFACE
   !DEC$ ENDIF

   !DEC$ IF DEFINED ( _zfft_3d_ )
	 !DEC$ ATTRIBUTES C,REFERENCE,VARYING::zfft_3d
	 !DEC$ ATTRIBUTES ALIAS:'_ZFFT_3D'::zfft_3d
   !DEC$ ELSE
	 INTERFACE
	     INTEGER*4 FUNCTION zfft_3d
	     !DEC$ ATTRIBUTES C,REFERENCE,VARYING::zfft_3d
	     !DEC$ ATTRIBUTES ALIAS:'_ZFFT_3D'::zfft_3d
	     END FUNCTION zfft_3d
	 END INTERFACE
   !DEC$ ENDIF

   !DEC$ IF DEFINED ( _zgrp_fft_ )
	 !DEC$ ATTRIBUTES C,REFERENCE,VARYING::zfft_grp
	 !DEC$ ATTRIBUTES ALIAS:'_ZFFT_GRP'::zfft_grp
   !DEC$ ELSE
	 INTERFACE
	     INTEGER*4 FUNCTION zfft_grp
	     !DEC$ ATTRIBUTES C,REFERENCE,VARYING::zfft_grp
	     !DEC$ ATTRIBUTES ALIAS:'_ZFFT_GRP'::zfft_grp
	     END FUNCTION zfft_grp
	 END INTERFACE
   !DEC$ ENDIF

   !DEC$ IF DEFINED ( _zfft_apply_ )
	 !DEC$ ATTRIBUTES C,REFERENCE,VARYING::zfft_apply
	 !DEC$ ATTRIBUTES ALIAS:'_ZFFT_APPLY'::zfft_apply
   !DEC$ ELSE
	 INTERFACE
	     INTEGER*4 FUNCTION zfft_apply
	     !DEC$ ATTRIBUTES C,REFERENCE,VARYING::zfft_apply
	     !DEC$ ATTRIBUTES ALIAS:'_ZFFT_APPLY'::zfft_apply
	     END FUNCTION zfft_apply
	 END INTERFACE
   !DEC$ ENDIF

   !DEC$ IF DEFINED ( _zfft_apply_2d_ )
	 !DEC$ ATTRIBUTES C,REFERENCE,VARYING::zfft_apply_2d
	 !DEC$ ATTRIBUTES ALIAS:'_ZFFT_APPLY_2D'::zfft_apply_2d
   !DEC$ ELSE
	 INTERFACE
	     INTEGER*4 FUNCTION zfft_apply_2d
	     !DEC$ ATTRIBUTES C,REFERENCE,VARYING::zfft_apply_2d
	     !DEC$ ATTRIBUTES ALIAS:'_ZFFT_APPLY_2D'::zfft_apply_2d
	     END FUNCTION zfft_apply_2d
	 END INTERFACE
   !DEC$ ENDIF

   !DEC$ IF DEFINED ( _zfft_apply_3d_ )
	 !DEC$ ATTRIBUTES C,REFERENCE,VARYING::zfft_apply_3d
	 !DEC$ ATTRIBUTES ALIAS:'_ZFFT_APPLY_3D'::zfft_apply_3d
   !DEC$ ELSE
	 INTERFACE
	     INTEGER*4 FUNCTION zfft_apply_3d
	     !DEC$ ATTRIBUTES C,REFERENCE,VARYING::zfft_apply_3d
	     !DEC$ ATTRIBUTES ALIAS:'_ZFFT_APPLY_3D'::zfft_apply_3d
	     END FUNCTION zfft_apply_3d
	 END INTERFACE
   !DEC$ ENDIF

   !DEC$ IF DEFINED ( _zgrp_fft_apply_ )
	 !DEC$ ATTRIBUTES C,REFERENCE,VARYING::zfft_apply_grp
	 !DEC$ ATTRIBUTES ALIAS:'_ZFFT_APPLY_GRP'::zfft_apply_grp
   !DEC$ ELSE
	 INTERFACE
	     INTEGER*4 FUNCTION zfft_apply_grp
	     !DEC$ ATTRIBUTES C,REFERENCE,VARYING::zfft_apply_grp
	     !DEC$ ATTRIBUTES ALIAS:'_ZFFT_APPLY_GRP'::zfft_apply_grp
	     END FUNCTION zfft_apply_grp
	 END INTERFACE
   !DEC$ ENDIF

!DEC$ ENDIF
