TOC PREV NEXT INDEX

Put your logo here!


5.7 定義モードから抜ける: nc_enddef


関数nc_enddef が呼ばれるとオープンされたNetCDFファイルは定義モードから抜けます。定義モード中にNetCDFファイルに加えられた変更はチェックされ、問題がなければディスクに書き込まれます。この時、非記録変数をフィル値に初期化することも可能です。(5.12節「書き込みのフィルモードを設定する: NF_SET_FILL」(p.43)を参照。)NetCDFファイルはデータモードになり、変数データの読み取り・書き込みが可能になります。

この呼び出しは、場合によってデータをコピーする作業が含まれます。これに関しての詳細は 9章「NetCDFファイルの構造と性能」(p.99)にあります。

用法
int nc_enddef(int ncid);
ncid 以前のnc_open または nc_create呼び出しで返されたNetCDF ID

エラー

エラーが発生していなければ、nc_enddefNC_NOERRの値を返します。それ以外の場合には、返されたステータスがエラーを示します。エラーの原因として下記が挙げられます。

・ 指定されたNetCDFファイルが定義モードに無い。
・ 指定されたNetCDF IDが開いているNetCDFファイルを参照していない。

この例はnc_enddefを使ってfoo.ncというNetCDFファイルの定義モードを終了し、データモードにします。

#include <netcdf.h>

int status;
int ncid;

status = nc_create("foo.nc", NC_NOCLOBBER, &ncid);
if (status != NC_NOERR) handle_error(status);

… /* 次元・変数・属性を生成 */

status = nc_enddef(ncid); /*定義モードを抜ける*/
if (status != NC_NOERR) handle_error(status);



Quadralay Corporation
http://www.webworks.com
Voice: (512) 719-3399
Fax: (512) 719-3606
sales@webworks.com
TOC PREV NEXT INDEX