TChainしたい(TChain

1TChain *chain = new TChain(
2    "events",      // name
3    "Event data",  // title
4);

TChainは、同じ構造のTTreeを複数連結して、ひとつのTTreeとして扱えるようにするクラスです。

第一引数(name)には、連結するTTreeの名前を指定します。 連結するすべてのTTreeは、同じ名前でなければなりません。 第二引数(title)は、TChainのタイトルや説明を指定します。 空欄でも問題ありません。

TChainクラスはTTreeクラスを継承しているため、TTreeと同じようにGetEntrySetBranchAddressなどのメソッドを使用できます。

注釈

TChainは読み取り専用です。 Tree::BranchTree::Fillなどの書き込み用のメソッドは使用できません。

TTreeを追加したい(TChain::Add

1// TChain::Add("ファイル名")
2chain->Add("../anadata/CALIB_RUN10.root");
3chain->Add("../anadata/CALIB_RUN11.root");
4chain->Add("../anadata/CALIB_RUN12.root");

TChain::Addはファイルを連結するメソッドです。 第一引数にファイルパスを指定してします。 ファイルパスはワイルドカード(*.root)で指定できます。

ファイル数を知りたい(TChain::GetNfiles

1Int_t nfiles = chain->GetNfiles();

TChain::GetNfilesで、連結したファイルの数を取得できます。

TTreeの数を知りたい(TChain::GetNtrees

1Int_t ntrees = chain->GetNtrees();

TChain::GetNtreesで、連結したTTreeの数を取得できます。