Root and c++

Hello i managed to write a root macro that analyzes data and draws histograms, my question is that what headers,declarations do i have to use to make it readable to a c++ compiler:

TFile *f = new TFile(rfn,“RECREATE”);

// create a TTree
TTree *tree = new TTree(“TDCpanda”,“drift times”);
tree->Branch(“globEvNum”, &globEv);
tree->Branch(“felTDC”, &fel);
tree->Branch(“fplTDC”, &fpl);
tree->Branch(“ftTDC”, &ftime);

// create histogarms
TH1F *h100 = new TH1F(“h100”,“Sr, Hit Multiplicity; Hit Multiplicity”,20,0.,20.);

// create a subdirectory “Multi16” in this file
TDirectory *cdMulti16 = f->mkdir(“Multi16”);
cdMulti16->cd(); // make the “Multi16” directory the current director

TH1F *h116 = new TH1F(“h116”,“Sr, Hit Multiplicity 16; Hit Multiplicity”,20,0.,20.);

TH1F *h316 = new TH1F(“h316”,“Sr, Time over Threshold for 16 straws; Time over Threshold”,400,0.,10000.);
TH1F h31605 = new TH1F(“h31605”,"Sr, Time over Threshold th0.5 for 16 straws; Time over Threshold",400,0.,10000.);
TH1F h3161 = new TH1F(“h3161”,"Sr, Time over Threshold th1 for 16 straws; Time over Threshold",400,0.,10000.);
TH1F h3162 = new TH1F(“h3162”,"Sr, Time over Threshold th2 for 16 straws; Time over Threshold",400,0.,10000.);
TH1F h3163 = new TH1F(“h3163”,"Sr, Time over Threshold th3 for 16 straws; Time over Threshold",400,0.,10000.);
TH1F h3164 = new TH1F(“h3164”,"Sr, Time over Threshold th4 for 16 straws; Time over Threshold",400,0.,10000.);

TH1F *h416 = new TH1F(“h416”,“Sr, Energy Loss for 16 straws; Energy Loss”,400,0.,400000.);
TH1F *hl416 = new TH1F(“hl416”,“Sr, Total Path Length for 16 straws; Total Path Length”,400,0.,200000.);
TH1F *hc416 = new TH1F(“hc416”,“Sr, Corrected Energy Loss for 16 straws; Energy Loss/Path Length”,400,0.,20.);

TH1F *h41610 = new TH1F(“h41610”,“Sr, Energy Loss for 16 straws, TM10; Energy Loss”,400,0.,400000.);
TH1F *h41620 = new TH1F(“h41620”,“Sr, Energy Loss for 16 straws, TM20; Energy Loss”,400,0.,400000.);
TH1F *h41630 = new TH1F(“h41630”,“Sr, Energy Loss for 16 straws, TM30; Energy Loss”,400,0.,400000.);
TH1F *h4163010 = new TH1F(“h4163010”,“Sr, Energy Loss for 16 straws, TM30_10; Energy Loss”,400,0.,400000.);
TH1F *h41640 = new TH1F(“h41640”,“Sr, Energy Loss for 16 straws, TM40; Energy Loss”,400,0.,400000.);
TH1F *h4164010 = new TH1F(“h4164010”,“Sr, Energy Loss for 16 straws, TM40_10; Energy Loss”,400,0.,400000.);
TH1F *h41650 = new TH1F(“h41650”,“Sr, Energy Loss for 16 straws, TM50; Energy Loss”,400,0.,400000.);

TH1F *h416025 = new TH1F(“h416025”,“Sr, E-Loss for 16 straws, Integrated 25 ns; Energy Loss”,400,0.,400000.);
TH1F *h416050 = new TH1F(“h416050”,“Sr, E-Loss for 16 straws, Integrated 50 ns; Energy Loss”,400,0.,400000.);
TH1F *h416075 = new TH1F(“h416075”,“Sr, E-Loss for 16 straws, Integrated 75 ns; Energy Loss”,400,0.,400000.);
TH1F *h416100 = new TH1F(“h416100”,“Sr, E-Loss for 16 straws, Integrated 100 ns; Energy Loss”,400,0.,400000.);
TH1F *h416125 = new TH1F(“h416125”,“Sr, E-Loss for 16 straws, Integrated 125 ns; Energy Loss”,400,0.,400000.);
TH1F *h416150 = new TH1F(“h416150”,“Sr, E-Loss for 16 straws, Integrated 150 ns; Energy Loss”,400,0.,400000.);

TH1F *h41602540 = new TH1F(“h41602540”,“Sr, E-Loss for 16 straws, Integrated 25 ns, TM40; Energy Loss”,400,0.,400000.);
TH1F *h41605040 = new TH1F(“h41605040”,“Sr, E-Loss for 16 straws, Integrated 50 ns, TM40; Energy Loss”,400,0.,400000.);
TH1F *h41607540 = new TH1F(“h41607540”,“Sr, E-Loss for 16 straws, Integrated 75 ns, TM40; Energy Loss”,400,0.,400000.);
TH1F *h41610040 = new TH1F(“h41610040”,“Sr, E-Loss for 16 straws, Integrated 100 ns, TM40; Energy Loss”,400,0.,400000.);
TH1F *h41612540 = new TH1F(“h41612540”,“Sr, E-Loss for 16 straws, Integrated 125 ns, TM40; Energy Loss”,400,0.,400000.);
TH1F *h41615040 = new TH1F(“h41615040”,“Sr, E-Loss for 16 straws, Integrated 150 ns, TM40; Energy Loss”,400,0.,400000.);

TH1F *h516 = new TH1F(“h516”,“Sr, Integrated Charge for 16 straws; Int. Charge”,400,0.,400000.);

TH1F h61605 = new TH1F(“h61605”,"Ch inside over Threshold th0.5 for 16 straws; Ch inside over Thr",400,0.,400000.);
TH1F h616052 = new TH1F(“h616052”,"Ch over Threshold th0.5 for 16 straws; Charge over Threshold",400,0.,400000.);
TH1F h6161 = new TH1F(“h6161”,"Ch inside over Threshold th1 for 16 straws; Ch inside over Thr",400,0.,400000.);
TH1F h61612 = new TH1F(“h61612”,"Ch over Threshold th1 for 16 straws; Charge over Threshold",400,0.,400000.);
TH1F h6162 = new TH1F(“h6162”,"Ch inside over Threshold th2 for 16 straws; Ch inside over Thr",400,0.,400000.);
TH1F h61622 = new TH1F(“h61622”,"Ch over Threshold th2 for 16 straws; Charge over Threshold",400,0.,400000.);
TH1F h6163 = new TH1F(“h6163”,"Ch inside over Threshold th3 for 16 straws; Ch inside over Thr",400,0.,400000.);
TH1F h61632 = new TH1F(“h61632”,"Ch over Threshold th3 for 16 straws; Charge over Threshold",400,0.,400000.);
TH1F h6164 = new TH1F(“h6164”,"Ch inside over Threshold th4 for 16 straws; Ch inside over Thr",400,0.,400000.);
TH1F h61642 = new TH1F(“h61642”,"Ch over Threshold th4 for 16 straws; Charge over Threshold",400,0.,400000.);

TH2F h261605 = new TH2F(“h261605”,"Q_ino_T vs. T_o_T, th05",2000,0.,400000.,2000,0.,10000. );
TH2F h2616052 = new TH2F(“h2616052”,"Q_o_T vs. T_o_T, th05",2000,0.,400000.,2000,0.,10000. );
TH2F h26161 = new TH2F(“h26161”,"Q_ino_T vs. T_o_T, th1",2000,0.,400000.,2000,0.,10000. );
TH2F h261612 = new TH2F(“h261612”,"Q_o_T vs. T_o_T, th1",2000,0.,400000.,2000,0.,10000. );
TH2F h26162 = new TH2F(“h26162”,"Q_ino_T vs. T_o_T, th2",2000,0.,400000.,2000,0.,10000. );
TH2F h261622 = new TH2F(“h261622”,"Q_o_T vs. T_o_T, th2",2000,0.,400000.,2000,0.,10000. );
TH2F h26163 = new TH2F(“h26163”,"Q_ino_T vs. T_o_T, th3",2000,0.,400000.,2000,0.,10000. );
TH2F h261632 = new TH2F(“h261632”,"Q_o_T vs. T_o_T, th3",2000,0.,400000.,2000,0.,10000. );
TH2F h26164 = new TH2F(“h26164”,"Q_ino_T vs. T_o_T, th4",2000,0.,400000.,2000,0.,10000. );
TH2F h261642 = new TH2F(“h261642”,"Q_o_T vs. T_o_T, th5",2000,0.,400000.,2000,0.,10000. );

Thank you for help!

Allways specify
#include "Txxxx.h"
if you use class Txxxx. In your example you should specify;

#include "TFile.h" #include "TTree.h" #include "TH1F.h" #include "TH2F.h:"

Rene

OK thank you, i did it and g++…

" /usr/include/c++/4.5/iosfwd:111:11: error: declaration of ‘struct std::ifstream’
"

sorry for my basic questions but i`m new in root and c++.

Hi,

You might need #include

Philippe.