2016-05-23 11 views
1

タイトルに書きましたが、ツリーからデータをエクスポートしようとしています。私はthisを追跡しました。それは仕事ですが、特定のブランチをエクスポートしようとすると問題が発生します。ツリーのPrintは、 "ADCVal"という名前のブランチをエクスポートしようとするとクラッシュします。私は問題は "ADCVal"はベクトルなので、私はすべての要素を抽出する必要があると思う。どのようにコードを修正し、ブランチのすべての要素に変数を関連付けることができますか? これは簡単な質問のように思えるかもしれませんが、私のC++/rootの知識は本当に貧弱です。ありがとうございました。ルート・カーン・エクスポート・データ:特定のデータ型をエクスポートします。

+3

を呼び出した後ADCVal[0]ADCVal[1]に、...アクセスすることができます。この[[よくある質問を表示する]ガイド](http://stackoverflow.com/help/how-to-ask)、特に、[最小限の、完全で検証可能な例(http: /stackoverflow.com/help/mcve)。 – kfsone

答えて

2

あなたがMakeClassメソッドを使用することができます出発点として、これはあなたのためのコードを書き込みます。

root org.root 
root [0] 
Attaching file org.root as _file0... 
(TFile *) 0x2670460 
root [1] .ls 
TFile**  org.root 
TFile*  org.root 
    KEY: TTree SomeTree SomeTree 
root [2] SomeTree->MakeClass("removeme") 
Info in <TTreePlayer::MakeClass>: Files: removeme.h and removeme.C generated from TTree: B02DD 
(Int_t) 0 
root [3] 

あなたはその配列とSetBranchAddressを使用する方法を参照してくださいremoveme.hで見ることができます。それは

Float_t   ADCVal[10]; 
tr->SetBranchAddress("ADCVal", ADCVal); 

に帰着し、その後、あなたはStackOverflowのへようこそtr->GetEntry(i);

+0

ありがとう...それは完璧に動作します! – user5630070

関連する問題