memo/program/C++/解析ソフト をテンプレートにして作成
ページ一覧
編集メニュー >
新規作成
編集
コピー
名前の変更
アップロード
添付ファイル一覧
バックアップ
開始行:
*解析ソフト [#cc785248]
**パラメータを管理するクラス [#u9e8902c]
データ解析でANAROOTのようなものを書いているが、
一つのクラスですべてのパラメータを管理しているためにわか...
NEBULAPlaPara *para1 = prm->Find("NEBULA")->FindPara(rid...
NEBULAPlaPara *para2 = prm->Find("NEBULA")->GetPara(ID);
NEBULAPara *para = prm->Find("NEBULA")->GetPara();
Double_t x_off = para->GetXOffset();
DCHitPara *para = prm->Find("BDC1")->GetPara(WireID);
DCPlanePara *para = prm->Find("BDC1")->GetPara(PlaneID);
double t0 = para->GetT0();
DCPara *para = prm->Find("BDC1")->GetPara();
double zpos = para->GetZ();
double z_tgt = prm->Find("Geom")->GetPara("ZPos_TGT");
prm->PrintListOfPara("Beam")
みたいな感じで書きたい。こうすればBigRIPSとかSAMURAIとか...
GetとFindはどちらの名前が良いのだろうか?
このやり方の懸念は以下の2点。
+ Find("Beam")の検索スピード。文字列の比較は遅かったりす...
+ Findの返り値の抽象をどう解くか?もしくはParaの抽象をど...
1点目についてはENUMでParameter::NEBULAに数値を割り当てる...
2点目はキャストしてしまえばできるけど。rootのTFile::Getも...
最悪メソッドを
TanaNEBULAPara* FindNEBULAPara(){return fNEBULAPara;}
TanaNEBULAPlaPara* FindNEBULAPlaPara(int ID){return fNEB...
のようにParameterManagerに羅列すれば両方解決できるが...
またできれば
ParameterManager *prm = ParameterManager::Instance();//s...
prm->LoadParameterList("NEBULA_Map.csv");
とかすると、ParameterManagerクラスの内部で
if (ParaName=="NEBULA") {
Parameter *nebula_prm = new NEBULAParameter();
nebula_prm->Parse();
Register(nebula_prm);
}
とかだと実験ごとにいちいち書き換えずに済む。
終了行:
*解析ソフト [#cc785248]
**パラメータを管理するクラス [#u9e8902c]
データ解析でANAROOTのようなものを書いているが、
一つのクラスですべてのパラメータを管理しているためにわか...
NEBULAPlaPara *para1 = prm->Find("NEBULA")->FindPara(rid...
NEBULAPlaPara *para2 = prm->Find("NEBULA")->GetPara(ID);
NEBULAPara *para = prm->Find("NEBULA")->GetPara();
Double_t x_off = para->GetXOffset();
DCHitPara *para = prm->Find("BDC1")->GetPara(WireID);
DCPlanePara *para = prm->Find("BDC1")->GetPara(PlaneID);
double t0 = para->GetT0();
DCPara *para = prm->Find("BDC1")->GetPara();
double zpos = para->GetZ();
double z_tgt = prm->Find("Geom")->GetPara("ZPos_TGT");
prm->PrintListOfPara("Beam")
みたいな感じで書きたい。こうすればBigRIPSとかSAMURAIとか...
GetとFindはどちらの名前が良いのだろうか?
このやり方の懸念は以下の2点。
+ Find("Beam")の検索スピード。文字列の比較は遅かったりす...
+ Findの返り値の抽象をどう解くか?もしくはParaの抽象をど...
1点目についてはENUMでParameter::NEBULAに数値を割り当てる...
2点目はキャストしてしまえばできるけど。rootのTFile::Getも...
最悪メソッドを
TanaNEBULAPara* FindNEBULAPara(){return fNEBULAPara;}
TanaNEBULAPlaPara* FindNEBULAPlaPara(int ID){return fNEB...
のようにParameterManagerに羅列すれば両方解決できるが...
またできれば
ParameterManager *prm = ParameterManager::Instance();//s...
prm->LoadParameterList("NEBULA_Map.csv");
とかすると、ParameterManagerクラスの内部で
if (ParaName=="NEBULA") {
Parameter *nebula_prm = new NEBULAParameter();
nebula_prm->Parse();
Register(nebula_prm);
}
とかだと実験ごとにいちいち書き換えずに済む。
ページ名:
and
or
Menu
kondowiki
memo
exp
link
#lsx
Counter: 0, today: 0, yesterday: 0