grobal.h マニュアル

(The documentation of grobal.h)

Last Update: 2024/1/5


grobal.hではymaeda_opentoolsで共通にグローバル変数が宣言されている。 各グローバル変数の定義を以下に示す。
Grobal variables commnly used by ymaeda_opentools are declared in grobal.h. Definitions of individual grobal variables are shown below.

◆目次(Table of contents)



(Type):
     char

変数名(Variable name):
     msgCallingFile[nMsgRoute][strsize]

初期値(Initial value):
     初期値無し。
     No initial value.

マクロ_OPENMPが定義されている場合、 このグローバル変数にはthreadprivate指示文が付加される。
In cases where a macro _OPENMP is defined, a threadprivate directive is applied to this grobal variable.

メッセージ出力経路の構成要素である 「関数呼び出し元のファイル名」 を保存する配列。 メッセージ出力経路とは例えば
というような情報のことである。 エラーメッセージの表示時にこうした情報を合わせて出力することで エラー箇所の特定が容易になる。 そのためにはメッセージの出力経路を保存しておく必要があり、 それらの情報のうちファイル名を保存しておくのがこのグローバル変数である。 上の例であれば
msgCallingFile[0]="program.c"
msgCallingFile[1]="sub1.h"
msgCallingFile[2]="sub2.h"
のように保存される。
An array to preserve “the name of a file from which each function was called”, which is a constituent of message output routes. The message output routes are, for example, the information as below:
This kind of information facilitates identification of actual errors that caused the error message. To realize outputting this kind of information, the message output routes must be stored; information of the file names are stored in this grobal variable. In case of the example above, the information are stored as below:
msgCallingFile[0]="program.c";
msgCallingFile[1]="sub1.h"; and
msgCallingFile[2]="sub2.h".


(Type):
     char

変数名(Variable name):
     msgCallingFunc[nMsgRoute][strsize]

初期値(Initial value):
     初期値無し。
     No initial value.

マクロ_OPENMPが定義されている場合、 このグローバル変数にはthreadprivate指示文が付加される。
In cases where a macro _OPENMP is defined, a threadprivate directive is applied to this grobal variable.

メッセージ出力経路の構成要素である 「関数呼び出し元の関数名」 を保存する配列。 メッセージ出力経路についてはグローバル変数msgCallingFileの説明参照。 その説明中の例であれば
msgCallingFunc[0]="main"
msgCallingFunc[1]="function1"
msgCallingFunc[2]="function2"
となる。
An array to preserve “the name of a parent function from which each child function was called”, which is a constituent of message output routes; see the description of grobal variable msgCallingFile for the message output route. In case of the example in that description, the information are stored as below:
msgCallingFunc[0]="main";
msgCallingFunc[1]="function1"; and
msgCallingFunc[2]="function2".


(Type):
     int

変数名(Variable name):
     msgCallingLine[nMsgRoute]

初期値(Initial value):
     初期値無し。
     No initial value.

マクロ_OPENMPが定義されている場合、 このグローバル変数にはthreadprivate指示文が付加される。
In cases where a macro _OPENMP is defined, a threadprivate directive is applied to this grobal variable.

メッセージ出力経路の構成要素である 「関数呼び出し元のファイルにおける呼び出し箇所の行番号」 を保存する配列。 メッセージ出力経路についてはグローバル変数msgCallingFileの説明参照。 その説明中の例であれば
msgCallingLine[0]=10
msgCallingLine[1]=20
msgCallingLine[2]=30
となる。
An array to preserve “the line number in the file of the parent function from which each child function was called”, which is a constituent of message output route; see the description of grobal variable msgCallingFile for the message output route. In case of the example in that description, the information are stored as below:
msgCallingLine[0]=10;
msgCallingLine[1]=20; and
msgCallingLine[2]=30.


(Type):
     int

変数名(Variable name):
     reserved_msgRoute_number

初期値(Initial value):
     0

マクロ_OPENMPが定義されている場合、 このグローバル変数にはthreadprivate指示文が付加される。
In cases where a macro _OPENMP is defined, a threadprivate directive is applied to this grobal variable.

有効なメッセージ出力経路(グローバル変数msgCallingFileの説明参照)の個数。 関数main内では0、mainから直接呼ばれている関数内では1、 それらの関数から呼ばれている関数内では2、というように変化する。 すなわち、関数から子関数が呼ばれると1だけ増加し、 関数内での処理を終えて親関数に戻ると1だけ減少する。 グローバル変数msgCallingFile, msgCallingFunc, msgCallingLine はいずれも固定長配列であり、 その中の何番目の要素までが有効なものであるかを知るためにこの変数が用いられる。
The number of message output routes which are currently in effect; see the description of grobal variable msgCallingFile for the message output route. This number varies from 0 in function main to 1 in functions that are directly called from main; when another function is called from these functions, the value changes to 2. In other words, the number increases by 1 when a child function is called from a function, and decreases by 1 when processings in a function terminates and returns to its parent function. This number is used to identify the effective range of array components in grobal variables msgCallingFile, msgCallingFunc, msgCallingLine that are arrays of a fixed length.


(Type):
     _Bool

変数名(Variable name):
     message_JP

初期値(Initial value):

メッセージの出力言語。 trueであれば日本語で、falseであれば英語でメッセージが出力される。
The language for messages, which is Japanese if the value of this variable is true, English if false.