Up|<<Prev|Next>>


5.5 アクセスするために NetCDF ファイルを開く: nc_open

関数 nc_open は既存のNetCDFファイルとアクセスするために開きます。

 

int nc_open (const char *path, int omode, int *ncidp);

 

path

開くNetCDFファイルのファイル名

omode

零値は (又は NC_NOWRITE )はデフォルト状態を示します。ファイルは読取専用に開き、効率のためにバッファー及びキャッシュする。

それ以外の場合には、生成モードは NC_WRITE NC_SHARE 、又は NC_WRITE|NC_SHARE です。 NC_WRITE フラグを設定することによりファイルを読取-書き込み両用に開きます。(”書き込み”とはファイルに加え得る全ての変更を指し、データの付加又は変更、次元・変数・属性の付加又は名前の変更、属性の削除等の操作を含みます。) NC_SHARE フラグはファイルに書き込む処理とファイルを読み取る処理が一つもしくは複数行なわれている場合に適切です。 これによって、ファイルへのアクセスはバッファーされず、キャッシュも制限されます。バッファー機構は連続アクセスに対して最適化されているので、データを連続的にアクセスしないプログラムにおいては NC_SHARE フラグを設定することによりパフォーマンスの向上が望めます。

ncidp

出力NetCF IDが格納される場所へのポインタ

 

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

 

この 例は nc_open を使って、既存の foo.nc というNetCDFファイルを読取専用、非共有アクセス用に開きます。

#include <netcdf.h>
   ... 
int status;
int ncid;
   ... 
status = nc_open("foo.nc", 0, &ncid);
if (status != NC_NOERR) hendle_error(status);

Up|<<Prev|Next>>