! an_types.f90 - derived type interface for `abstract netcdf' variable if
! Copyright (C) GFD Dennou Club, 2000.  All rights reserved
! vi: set ts=8 sw=4:

module an_types

    type AN_VARIABLE
        !
        ! ID 情報
        !        変数 (an_variable 実体) は (/fileid, varid, dimid/) で
        !         同定される。正当な変数の fileid は必ず正である。
        !  
        integer:: fileid
        integer:: varid
        integer:: dimid
        !
        ! 入出力範囲指定
        !  
        !  allcount 
        !  size(allcount) 
        !  
        integer, pointer:: start(:)
        integer, pointer:: count(:)
        integer, pointer:: stride(:)
        integer, pointer:: dimids(:)  ! 各次元の次元 ID
        integer, pointer:: allcount(:)  ! 次元総数
        ! 0 ならば固定形変数、1 以上ならば dimids(growable) は不定長
        integer:: growable
        !
        ! 属性サーチ用イテレータ
        integer:: attrid
    end type

    ! 変数リスト検索イテレータ用
    !
    type AN_VARIABLE_SEARCH
        integer:: fileid
        integer:: varid
        integer:: dimid
    end type

end module
