Up|<<Prev|Next>>


何が欠けているか?

新しい C インターフェースはメ記録 I/Oモ 関数を3つ( ncrecput ncrecget 、 そして ncrecinq) 、NetCDF-2インターフェースから除去している。ただし、これらの関数はNetCDF-2互換のインターフェースではまだサポートされている。

このことは1回の記録指向の呼び出しを、各記録変数につき一つの、複数回の型依存の呼び出しで置き換えなければならないことを意味する。例えば、 ncrecput への1回の呼び出しは適切な nc_put_var 関数への複数回の(アクセスされた各変数につき一回の)呼び出しによって置き換えることができる。記録指向の関数が削除されたのは、そのようなインターフェースでは型安全性と自動タイプ変換を提供する簡単な方法が無いからである。

2版のインターフェースの関数 nctypelen に対応する関数は無い。内部データ型と外部データ型を分離することと、新しいタイプ変換インターフェースによって、 nctypelen は不要になる。ユーザーは ネイティブの型でもって読み書きするので、 演算子の size さえあれば、完璧にある値に割り当てるスペースを決定することができる。

以前のライブラリでは、 NetCDFオブジェクトの名前に使用された記号がCDLの制約に沿っているか判断する方法が無かった。 CDLを使用しているncdump と ncgen のユーティリティは、名前に関しては英数字とメ _ モ and メ - モ のみの使用をを許可している。 この制約は新しい次元・属性・変数を生成する際に、ライブラリによっても強制されることになった。制約の弱い名前を冠する既存の要素はまだ問題なく使える。


Up|<<Prev|Next>>