winヘッダファイルパッケージ マニュアル

(The documentation of win header file package)

Last Update: 2022/3/17


winヘッダファイルパッケージには WINファイルの読み書きやデータ処理を行うヘッダファイルをまとめてある。 WINファイルは日本の標準的な地震データフォーマットであり 東京大学地震研究所のホームページに公式マニュアルが存在する。
Header files to read, write, and perform data processings for WIN files are included in win header file package. The WIN file is a standard seismic data format in Japan, and the official documentation for this format is available in the WEB site of Earthquake Research Institute (ERI), the University of Tokyo, Japan.

このヘッダファイルパッケージの中身を理解するにはまず WINファイルのデータフォーマットを理解する必要がある。 データフォーマットの説明を こちら にまとめたので参照のこと。 説明を容易にするため、上記説明中では 「秒ブロック」「チャンネルブロック」という用語を用いている。 これらは東京大学地震研究所のWIN公式マニュアルにも登場する用語である。 これらの用語はこのヘッダファイルパッケージのマニュアル中で頻繁に登場するので マニュアルを読み進めるためにはこれらの用語の定義を理解しておく必要がある。
To understand this header file package, it is first needed to understand the data format of a WIN file. See the description of the data format. Here, terms second block and channel block are used to make the description easier. These terms are also used in the official documentation of WIN made by ERI. As these terms appear frequently in the documentation of this header file package, understand these terms before reading the documentation.

winヘッダファイルパッケージでは 1バイトのビット数がWIN_CHAR_BITと一致することを仮定しており、 この条件を満たさないコンピュータでコンパイルしようとすると エラーが出る仕組みになっている。 1バイトのビット数は8ビットの場合がほとんどであるが、 C言語規格上は実は8ビット以上であれば良いらしい。 使用するコンピュータにおける1バイトのビット数は 組み込みマクロのCHAR_BIT(limits.h)で与えられている。 一方、WINにおいては1バイト=8ビットであることが大前提となっている。 ymaeda_opentoolsではマクロWIN_CHAR_BITを定義して値を8に設定し、 win/index.hにおいてCHAR_BITとWIN_CHAR_BITの比較により 1バイト=8ビットの前提が満たされているかをチェックする仕組みにしている。
In this header file package the number of bits in 1 byte is assumed to be equal to the value of macro WIN_CHAR_BIT; if the computer does not satisfy this requirement, a compilation error is issued. Although the number of bits in 1 byte is 8 in most cases, it can be greater than 8 according to the C language standard. The number of bits in 1 byte in the computer used is given by a built-in macro CHAR_BIT (limits.h). On the other hand, WIN assumes that 1 byte is equal to 8 bits. To check if this assumption is valid in the computer used, ymaeda_opentools defines a macro WIN_CHAR_BIT with a value of 8, and compares this macro with CHAR_BIT in win/index.h.

winヘッダファイルパッケージ内のヘッダファイルを以下に示す。 各ヘッダファイルの詳細はリンクをクリックして参照のこと。
Header files in win header file package are listed below. For details of individual header files, click the links.

◆特殊なヘッダファイル (Special header files)

ヘッダファイル名
Header file name
機能・用途
Purpose
win/index.h winヘッダファイルパッケージ内の 他のヘッダファイル一式をインクルードするためのヘッダファイル。
A header file to include all the other header files in win header file package.
win/macro.h winヘッダファイルパッケージ用のマクロの定義。
Definitions of macros for win header file package.
win/structure.h winヘッダファイルパッケージ用の構造体の定義。
Definitions of structures for win header file package.
win/prototype.h winヘッダファイルパッケージ内の関数のプロトタイプ。
Prototypes of functions in win header file package.

◆通常のヘッダファイル (Normal header files)

ヘッダファイル名
Header file name
機能・用途
Purpose
win/binary.h 一旦unsigned char型配列に読み込んだWINのバイナリデータを 別のデータ型に変換する関数。
Function to convert bindary WIN data, temporarily read into an unsigned char-type array, to other data types.
win/channel.h WINシステムにおけるチャンネルコードのリストや チャンネルテーブルを扱う関数。
Functions to treat a list of channel codes and a channel table of the WIN system.
win/convert.h WINデータを他の形式に変換する関数。
Functions to convert WIN data to other formats.
win/readwrite.h WINデータの入出力を行う関数。
Functions to read and write WIN data.