gtool5 Fortran 90/95 Library 1.0.0-rc5
日本語
Loading...
Searching...
No Matches
gtdata_netcdf_file_generic.f90
Go to the documentation of this file.
1!>
2!> @file gtdata_netcdf_file_generic.f90
3!>
4!> @author Yasuhiro MORIKAWA, Eizi TOYODA
5!> @copyright Copyright (C) GFD Dennou Club, 2000-2026. All rights reserved. <br/>
6!> License is BSD-2-Clause. See [COPYRIGHT](@ref COPYRIGHT) in detail
7!>
8!> @en
9!> @brief Interface specifications for netCDF file open/close procedures
10!> @enden
11!>
12!> @ja
13!> @brief netCDF ファイルのオープンクローズに関する手続きの引用仕様
14!> @endja
15!>
16
17!>
18!> @en
19!> @brief Interface specifications for netCDF file open/close procedures
20!>
21!> This module provides interface declarations for procedures that handle
22!> opening, closing, and managing netCDF files.
23!>
24!> | Procedure | Description |
25!> |-----------|-------------|
26!> | GDNcFileOpen | Open a netCDF file |
27!> | GDNcFileClose | Close a netCDF file |
28!> | GDNcFileReopen | Increment reference count of an open file |
29!> | GDNcFileDataMode | Switch to data mode |
30!> | GDNcFileDefineMode | Switch to define mode |
31!> | GDNcFileSync | Synchronize file to disk |
32!> | GDNcFileInquire | Inquire file properties |
33!>
34!> @enden
35!>
36!> @ja
37!> @brief netCDF ファイルのオープンクローズに関する手続きの引用仕様
38!>
39!> このモジュールは netCDF ファイルのオープン、クローズ、管理を行う
40!> 手続きのインターフェース宣言を提供します。
41!>
42!> | 手続き | 説明 |
43!> |--------|------|
44!> | GDNcFileOpen | netCDF ファイルを開く |
45!> | GDNcFileClose | netCDF ファイルを閉じる |
46!> | GDNcFileReopen | オープン中ファイルの参照カウントを増加 |
47!> | GDNcFileDataMode | データモードに切り替え |
48!> | GDNcFileDefineMode | 定義モードに切り替え |
49!> | GDNcFileSync | ファイルをディスクに同期 |
50!> | GDNcFileInquire | ファイル属性を取得 |
51!>
52!> @endja
53!>
55 !
56 use dc_types, only: string
58
59 implicit none
60 private
61
64 public:: gdncfileinquire
65
66 interface
67 !>
68 !> @en
69 !> @brief Open a netCDF file
70 !> @enden
71 !> @ja
72 !> @brief netCDF ファイルを開く
73 !> @endja
74 !>
75 !> @param[out] fileid @en File ID @enden @ja ファイル ID @endja
76 !> @param[in] filename @en File name @enden @ja ファイル名 @endja
77 !> @param[in] writable @en Writable flag (optional) @enden @ja 書込可能フラグ (省略可能) @endja
78 !> @param[in] overwrite @en Overwrite existing file (optional) @enden @ja 既存ファイル上書きフラグ (省略可能) @endja
79 !> @param[out] stat @en Status code (optional) @enden @ja ステータスコード (省略可能) @endja
80 !> @param[out] err @en Error flag (optional) @enden @ja エラーフラグ (省略可能) @endja
81 !>
82 subroutine gdncfileopen(fileid, filename, writable, overwrite, stat, err)
83 integer, intent(out):: fileid
84 character(len = *), intent(in):: filename
85 logical, intent(in), optional:: writable
86 logical, intent(in), optional:: overwrite
87 logical, intent(out), optional:: err
88 integer, intent(out), optional:: stat
89 end subroutine gdncfileopen
90 end interface
91
92 interface
93 !>
94 !> @en
95 !> @brief Close a netCDF file
96 !> @enden
97 !> @ja
98 !> @brief netCDF ファイルを閉じる
99 !> @endja
100 !>
101 !> @param[in] fileid @en File ID @enden @ja ファイル ID @endja
102 !> @param[out] err @en Error flag (optional) @enden @ja エラーフラグ (省略可能) @endja
103 !>
104 subroutine gdncfileclose(fileid, err)
105 integer, intent(in):: fileid
106 logical, intent(out), optional:: err
107 end subroutine gdncfileclose
108 end interface
109
110 interface
111 !>
112 !> @en
113 !> @brief Increment reference count of an open netCDF file
114 !> @enden
115 !> @ja
116 !> @brief オープン中の netCDF ファイルの参照カウントを増加
117 !> @endja
118 !>
119 !> @param[in] fileid @en File ID @enden @ja ファイル ID @endja
120 !> @param[out] err @en Error flag (optional) @enden @ja エラーフラグ (省略可能) @endja
121 !>
122 subroutine gdncfilereopen(fileid, err)
123 integer, intent(in):: fileid
124 logical, intent(out), optional:: err
125 end subroutine gdncfilereopen
126 end interface
127
128 interface
129 !>
130 !> @en
131 !> @brief Switch netCDF file to data mode
132 !> @enden
133 !> @ja
134 !> @brief netCDF ファイルをデータモードに切り替え
135 !> @endja
136 !>
137 !> @param[in] fileid @en File ID @enden @ja ファイル ID @endja
138 !> @return @en Status code from nf90_enddef @enden @ja nf90_enddef のステータスコード @endja
139 !>
140 integer function gdncfiledatamode(fileid) result(result)
141 integer, intent(in):: fileid
142 end function gdncfiledatamode
143 end interface
144
145 interface
146 !>
147 !> @en
148 !> @brief Switch netCDF file to define mode
149 !> @enden
150 !> @ja
151 !> @brief netCDF ファイルを定義モードに切り替え
152 !> @endja
153 !>
154 !> @param[in] fileid @en File ID @enden @ja ファイル ID @endja
155 !> @return @en Status code from nf90_redef @enden @ja nf90_redef のステータスコード @endja
156 !>
157 integer function gdncfiledefinemode(fileid) result(result)
158 integer, intent(in):: fileid
159 end function gdncfiledefinemode
160 end interface
161
162 interface
163 !>
164 !> @en
165 !> @brief Synchronize netCDF file to disk
166 !> @enden
167 !> @ja
168 !> @brief netCDF ファイルをディスクに同期
169 !> @endja
170 !>
171 !> @param[in] fileid @en File ID (optional, sync all if omitted) @enden @ja ファイル ID (省略時は全ファイルを同期) @endja
172 !> @param[out] stat @en Status code (optional) @enden @ja ステータスコード (省略可能) @endja
173 !>
174 subroutine gdncfilesync(fileid, stat)
175 integer, intent(in), optional:: fileid
176 integer, intent(out), optional:: stat
177 end subroutine gdncfilesync
178 end interface
179
180 !> @private
181 !> @en Not public, so not placed in gtdata_netcdf_generic @enden
182 !> @ja 非公開なので gtdata_netcdf_generic には置かない @endja
184 !>
185 !> @en
186 !> @brief Inquire the file name of an open netCDF file
187 !> @enden
188 !> @ja
189 !> @brief オープン中の netCDF ファイルのファイル名を取得
190 !> @endja
191 !>
192 !> @param[in] fileid @en File ID @enden @ja ファイル ID @endja
193 !> @param[out] name @en File name @enden @ja ファイル名 @endja
194 !>
195 subroutine gdncfileinquirename(fileid, name)
196 integer, intent(in):: fileid
197 character(len = *), intent(out):: name
198 end subroutine gdncfileinquirename
199 end interface
200
subroutine gdncfileinquirename(fileid, name)
Not public, so not placed in gtdata_netcdf_generic
Debug tracing module.
Definition dc_trace.f90:150
subroutine, public dbgmessage(fmt, i, r, d, l, n, c1, c2, c3, ca)
Definition dc_trace.f90:680
subroutine, public beginsub(name, fmt, i, r, d, l, n, c1, c2, c3, ca, version)
Definition dc_trace.f90:476
subroutine, public endsub(name, fmt, i, r, d, l, n, c1, c2, c3, ca)
Definition dc_trace.f90:599
Provides kind type parameter values.
Definition dc_types.f90:55
integer, parameter, public string
Character length for string
Definition dc_types.f90:137