「OptionControlFile」の版間の差分

提供: Eospedia
移動: 案内検索
(ページの作成:「'''OptionControlFile'''は、Eosのmaketoolによって利用されるファイルです。Eosのコマンドの引数の取り扱いや使用方法の提供などの...」)
 
(ファイルフォーマット)
 
(2人の利用者による、間の5版が非表示)
行1: 行1:
'''OptionControlFile'''は、Eosのmaketoolによって利用されるファイルです。Eosのコマンドの引数の取り扱いや使用方法の提供などの情報を提供しています。
+
'''OptionControlFile'''は、Eosのmaketoolによって利用されるファイルです。[[Eos]]のコマンドの引数の取り扱いや使用方法の提供などの情報を提供しています。
  
EosにおけるOptionControlFileのフォーマット
+
==ファイルフォーマット==
 +
EosにおけるOptionControlFileのフォーマット。このファイルは、Eosの各コマンドのCUI/GUIを決定するために用いられています。CUIにおいては、実行時の引数のためのプロトタイプソースコードの出力を、GUIにおいては、実行の為のGUIのHTML/XMLへの変換のための出力を行う為の入力ファイルとして利用されています。
 +
 
 +
=== OptionControlFileのフォーマット===
 
各行は次の様なフォーマットからなっています。
 
各行は次の様なフォーマットからなっています。
 
<pre>
 
<pre>
行27: 行30:
 
それぞれの定義されている型を示します。
 
それぞれの定義されている型を示します。
  
 +
=== OptionProperties ===
 
OptionPropertiesに対しては下記の様に定義されています。
 
OptionPropertiesに対しては下記の様に定義されています。
 
<pre>
 
<pre>
行33: 行37:
 
Variable : 引数の数が可変の引数です。一番最後に一回だけ利用できるので注意が必要です。
 
Variable : 引数の数が可変の引数です。一番最後に一回だけ利用できるので注意が必要です。
 
</pre>
 
</pre>
 +
 +
=== argType ===
  
 
argTypeに対しては、下記のように引数の型が定義されています。
 
argTypeに対しては、下記のように引数の型が定義されています。
行47: 行53:
 
※ 通常それぞれがプログラムの開始時にファイルを開きますが、
 
※ 通常それぞれがプログラムの開始時にファイルを開きますが、
 
※ NoOpenをつけると、ファイルを開きません。
 
※ NoOpenをつけると、ファイルを開きません。
 +
inFileNoOpen, outFileNoOpen, appendFileNoOpen,
 +
inFileListNoOpen, outFileListNoOpen, appendFileListNoOpen
  
 
Character   : 文字一文字
 
Character   : 文字一文字
行52: 行60:
 
StringAll   : 文字列(全て)
 
StringAll   : 文字列(全て)
 
</pre>
 
</pre>
 +
 +
==== argTypeの属性(Atribulte) ====
 +
それぞれの入力フォーマットに対して、属性をつけることができるように変更しました。::で属性をつけます。
 +
 +
<pre>
 +
ファイルへの属性
 +
::mrcImage   ファイルがmrcImage型の画像フォーマットであることを示しています
 +
::ASCII     ファイルがASCIIファイルであることを示しています。
 +
 +
</pre>
 +
 +
== 使用例 ==
 +
 +
 mrcImageInfoの場合の例を下記に示します。
 +
 まず、OptionControlFileにて、設定します。
 +
 +
# OptionControlFile
 +
# FileFormat
 +
"-i","-i[nput]","InputDataFile","Essential","1","1","In","inFile","NULL"
 +
"-o","-o[utput]","OutputDataFile","Optional","1","1","Out","outFile","stdout"
 +
"-X","-X[Section]","X Section at y=X(value)","Optional","1","1","X","Real","0.0"
 +
"-Y","-Y[Section]","Y Section at y=Y(value)","Optional","1","1","Y","Real","0.0"
 +
"-x","-x[Projection]","x Projection[OutPut ASCII FILE]","Optional","0"
 +
"-y","-y[Projection]","y Projection[OutPut ASCII FILE]","Optional","0"
 +
"-H","-H[istgram]","Histgram: Class Number: Normalize","Optional","1","1","H","Integer","256"
 +
"-H2","-H[istgram]2","Histgram2: Class Width: Integer: Normalize","Optional","1","1","H2","Real","1"
 +
"-H3","-H[istgram]3","Histgram: Class Number: Count","Optional","1","1","H3","Integer","256"
 +
"-H4","-H[istgram]4","Histgram2: Class Width: Integer: Count","Optional","1","1","H4","Real","1"
 +
"-H5","-H[istgram]5","Histgram5: Class Number: Count","Optional","1","1","H5","Integer","1"
 +
"-H6","-H[istgram]6","Histgram6: Class Width: Integer: Count","Optional","1","1","H6","Real","1"
 +
"-Low","-Low","Low : thres","Optional","1","1","Low","Real","1"
 +
"-High","-High","High: thres","Optional","1","1","High","Real","1"
 +
"-I","-I[nfo]","Information","Optional","0"
 +
"-c","-c[onfig]","ConfigurationFile","Optional","1","1","configFile","inFile","NULL"
 +
"-rmax","-rmax","rmax [A]","Optional","1","1","rmax","Real","250"
 +
"-m","-m[ode]","Mode","Optional","1","1","mode","Integer","0"
 +
 +
以上のようなファイルが設定されると、
 +
$ make update
 +
$ make
 +
$ make install
 +
 +
を実行した後、-hを使ってusageをみると
 +
 +
tacyas:yasunaga-lab@gw$mrcImageInfo -h
 +
Usage: /home/people/tacyas/Eos/bin/X86LINUX64/mrcImageInfo
 +
Options:
 +
    [-i[nput]            In                  (NULL      )] :Essential :InputDataFile
 +
    [-o[utput]          Out                (stdout    )] :Optional  :OutputDataFile
 +
    [-X[Section]        X                  (0.0      )] :Optional  :X Section at y=X(value)
 +
    [-Y[Section]        Y                  (0.0      )] :Optional  :Y Section at y=Y(value)
 +
    [-x[Projection]      ] :Optional  :x Projection[OutPut ASCII FILE]
 +
    [-y[Projection]      ] :Optional  :y Projection[OutPut ASCII FILE]
 +
    [-H[istgram]        H                  (256      )] :Optional  :Histgram: Class Number: Normalize
 +
    [-H[istgram]2        H2                  (1        )] :Optional  :Histgram2: Class Width: Integer: Normalize
 +
    [-H[istgram]3        H3                  (256      )] :Optional  :Histgram: Class Number: Count
 +
    [-H[istgram]4        H4                  (1        )] :Optional  :Histgram2: Class Width: Integer: Count
 +
    [-H[istgram]5        H5                  (1        )] :Optional  :Histgram5: Class Number: Count
 +
    [-H[istgram]6        H6                  (1        )] :Optional  :Histgram6: Class Width: Integer: Count
 +
    [-Low                Low                (1        )] :Optional  :Low : thres
 +
    [-High              High                (1        )] :Optional  :High: thres
 +
    [-I[nfo]            ] :Optional  :Information
 +
    [-c[onfig]          configFile          (NULL      )] :Optional  :ConfigurationFile
 +
    [-rmax              rmax                (250      )] :Optional  :rmax [A]
 +
    [-m[ode]            mode                (0        )] :Optional  :Mode
 +
----- Additional Usage -----
 +
The -I option uses -rmax or -m options
 +
-m 0: mean of all density
 +
    1: mean of sphere surface density at rmax
 +
    2: mean of cylinder surface density at rmax
 +
    3: mean of edge pixels
 +
    4: mean of Centre
 +
    5: mean of Sparse
 +
    6: mean of 2DEdge
 +
    7: RMS of all pixels
 +
 +
となります。このうち、Additional Usage以外は、自動的に作製された、init.c, argCheck.c, usage.cを使っています。

2014年4月20日 (日) 23:18時点における最新版

OptionControlFileは、Eosのmaketoolによって利用されるファイルです。Eosのコマンドの引数の取り扱いや使用方法の提供などの情報を提供しています。

ファイルフォーマット

EosにおけるOptionControlFileのフォーマット。このファイルは、Eosの各コマンドのCUI/GUIを決定するために用いられています。CUIにおいては、実行時の引数のためのプロトタイプソースコードの出力を、GUIにおいては、実行の為のGUIのHTML/XMLへの変換のための出力を行う為の入力ファイルとして利用されています。

OptionControlFileのフォーマット

各行は次の様なフォーマットからなっています。

"Option","fullOption","OptionName","OptionProperties","OptionNumber","argIndex","argName","argType","InitialValue",...

それぞれの項目の意味は次の様なものです。

Option     :実際に利用される引数です。-Option の形で利用できる様になります。
fullOption   :上記のオプションの省略の元を顕しています。
           OptionNumber(引数の数)が0であれば、
         fullOptionは、flagNameとしてプログラム中で定義されます。
OptionName   :引数の意味を示します。
OptionProperties:引数が必須かオプショナルかを示しています。
           詳細は下記のテーブルを参考にして下さい。 
OptionNumber  :この引数のパラメータの数を示しています。
         0のときは、下記のargが必要ありません。
argIndex    :パラメータのインデックスです。1から始まります。
argName     :パラメータの名前です。prototype無いではメンバ変数になります。
argType     :引数の型を示しています。
           詳細は下記のテーブルを参考にして下さい。 
InitialValue  :パラメータの初期値を示しています。     

それぞれの定義されている型を示します。

OptionProperties

OptionPropertiesに対しては下記の様に定義されています。

Essential : 必須の引数です。設定していない場合は、実行時に要求されます。
Optional  : オプショナルな引数です。設定していない場合には、初期値が使われる場合が多いです。
Variable : 引数の数が可変の引数です。一番最後に一回だけ利用できるので注意が必要です。

argType

argTypeに対しては、下記のように引数の型が定義されています。

Integer    : 整数
Real     : 実数

inFile    : 入力ファイル名(読み込みファイル名) 
outFile    : 出力ファイル名(書き出しファイル名)
appendFile  : アペンドモードの出力ファイル名
inFileList  : 入力ファイル名のリストが格納されたファイルの名前
outFileList  : 出力ファイル名のリストが格納されたファイルの名前
appendFileList: アペンドモードの出力ファイル名のリストが格納されたファイルの名前
※ 通常それぞれがプログラムの開始時にファイルを開きますが、
※ NoOpenをつけると、ファイルを開きません。
inFileNoOpen, outFileNoOpen, appendFileNoOpen, 
inFileListNoOpen, outFileListNoOpen, appendFileListNoOpen

Character   : 文字一文字
String      : 文字列(ただし、最初の一語のみ)
StringAll   : 文字列(全て)

argTypeの属性(Atribulte)

それぞれの入力フォーマットに対して、属性をつけることができるように変更しました。::で属性をつけます。

ファイルへの属性
::mrcImage   ファイルがmrcImage型の画像フォーマットであることを示しています
::ASCII     ファイルがASCIIファイルであることを示しています。

 使用例

 mrcImageInfoの場合の例を下記に示します。  まず、OptionControlFileにて、設定します。

# OptionControlFile
# FileFormat
"-i","-i[nput]","InputDataFile","Essential","1","1","In","inFile","NULL"
"-o","-o[utput]","OutputDataFile","Optional","1","1","Out","outFile","stdout"
"-X","-X[Section]","X Section at y=X(value)","Optional","1","1","X","Real","0.0"
"-Y","-Y[Section]","Y Section at y=Y(value)","Optional","1","1","Y","Real","0.0"
"-x","-x[Projection]","x Projection[OutPut ASCII FILE]","Optional","0"
"-y","-y[Projection]","y Projection[OutPut ASCII FILE]","Optional","0"
"-H","-H[istgram]","Histgram: Class Number: Normalize","Optional","1","1","H","Integer","256"
"-H2","-H[istgram]2","Histgram2: Class Width: Integer: Normalize","Optional","1","1","H2","Real","1"
"-H3","-H[istgram]3","Histgram: Class Number: Count","Optional","1","1","H3","Integer","256"
"-H4","-H[istgram]4","Histgram2: Class Width: Integer: Count","Optional","1","1","H4","Real","1"
"-H5","-H[istgram]5","Histgram5: Class Number: Count","Optional","1","1","H5","Integer","1"
"-H6","-H[istgram]6","Histgram6: Class Width: Integer: Count","Optional","1","1","H6","Real","1"
"-Low","-Low","Low : thres","Optional","1","1","Low","Real","1"
"-High","-High","High: thres","Optional","1","1","High","Real","1"
"-I","-I[nfo]","Information","Optional","0"
"-c","-c[onfig]","ConfigurationFile","Optional","1","1","configFile","inFile","NULL"
"-rmax","-rmax","rmax [A]","Optional","1","1","rmax","Real","250"
"-m","-m[ode]","Mode","Optional","1","1","mode","Integer","0"

以上のようなファイルが設定されると、

$ make update
$ make 
$ make install

を実行した後、-hを使ってusageをみると

tacyas:yasunaga-lab@gw$mrcImageInfo -h
Usage: /home/people/tacyas/Eos/bin/X86LINUX64/mrcImageInfo
Options:
    [-i[nput]            In                  (NULL      )] :Essential :InputDataFile
    [-o[utput]           Out                 (stdout    )] :Optional  :OutputDataFile
    [-X[Section]         X                   (0.0       )] :Optional  :X Section at y=X(value)
    [-Y[Section]         Y                   (0.0       )] :Optional  :Y Section at y=Y(value)
    [-x[Projection]      ] :Optional  :x Projection[OutPut ASCII FILE]
    [-y[Projection]      ] :Optional  :y Projection[OutPut ASCII FILE]
    [-H[istgram]         H                   (256       )] :Optional  :Histgram: Class Number: Normalize
    [-H[istgram]2        H2                  (1         )] :Optional  :Histgram2: Class Width: Integer: Normalize
    [-H[istgram]3        H3                  (256       )] :Optional  :Histgram: Class Number: Count
    [-H[istgram]4        H4                  (1         )] :Optional  :Histgram2: Class Width: Integer: Count
    [-H[istgram]5        H5                  (1         )] :Optional  :Histgram5: Class Number: Count
    [-H[istgram]6        H6                  (1         )] :Optional  :Histgram6: Class Width: Integer: Count
    [-Low                Low                 (1         )] :Optional  :Low : thres
    [-High               High                (1         )] :Optional  :High: thres
    [-I[nfo]             ] :Optional  :Information
    [-c[onfig]           configFile          (NULL      )] :Optional  :ConfigurationFile
    [-rmax               rmax                (250       )] :Optional  :rmax [A]
    [-m[ode]             mode                (0         )] :Optional  :Mode
----- Additional Usage -----
The -I option uses -rmax or -m options
-m 0: mean of all density
   1: mean of sphere surface density at rmax
   2: mean of cylinder surface density at rmax
   3: mean of edge pixels 
   4: mean of Centre
   5: mean of Sparse 
   6: mean of 2DEdge
   7: RMS of all pixels 

となります。このうち、Additional Usage以外は、自動的に作製された、init.c, argCheck.c, usage.cを使っています。