27 #include "TRootEmbeddedCanvas.h"
54 if (plane != NULL )plane->
print();
64 for(Int_t ndet=0;ndet<2;ndet++) {
67 if ( m == NULL )
continue;
68 for(Int_t j=0;j<
NCHAN;j++){
70 for(Int_t i=0;i<
NADC;i++){
72 if(q <= -1000)
continue;
85 for(imes=0;imes<esize;imes++) {
92 Double_t data[5] = {-1,-1,-1,-1,-1};
100 Int_t nCl = clArray->GetEntries();
101 Int_t nClX = 0, nClY = 0;
102 for(Int_t icl = 0; icl<nCl; icl++){
104 Double_t q = cluster->
GetQ();
112 Int_t nTr = trArray->GetEntries();
113 Int_t nTrX = 0, nTrY = 0;
114 for(Int_t itr = 0; itr<nTr; itr++){
125 Int_t nV = vArray->GetEntries();
126 Int_t nVx = 0, nVy = 0;
127 for(Int_t iV = 0; iV<nV; iV++){
145 for(Int_t i = 0; i<nIonTr; i++){
148 for(Int_t j = 0; j<nPoints; j++){
156 for(Int_t i = 0; i<nMCtr; i++){
164 cout <<
"Energy = " << energy << endl;
178 Double_t fQmin = 10, fQmax = 1e7;
182 Info(
"Constructor",
"Use default fnbinr %d",
fNbins);
188 Info(
"Constructor",
"Use default Qmin %.3g",fQmin);
194 Info(
"Constructor",
"Use default Qmax %.3g",fQmax);
201 hNeSim =
new TH1F(
"hNeSim",
"",500,0,500);
202 hAngle =
new TH1F(
"hAngle",
"",500,-10,10);
203 hQraw[
XPLANE] =
new TH1F(
"hQrawX",
"",500,-500,5500);
204 hQraw[
YPLANE] =
new TH1F(
"hQrawY",
"",500,-500,5500);
205 hPmm2 =
new TH2F(
"hPmm2",
"",16,0,16,128,0,4096);
206 hPsim =
new TH3F(
"hPsim",
"",20,-1,1,20,-1,1,20,-1,1);
209 fNtuple =
new TNtupleD(
"fNtuple",
"",
"nTrX:nTrY:nClX:nClY:nTrsim");
235 TCanvas* c = ecTab->GetCanvas();
236 c->GetPad(1)->Delete();
237 c->GetPad(2)->Delete();
240 for(Int_t plane = 0; plane<2;plane++){
241 TVirtualPad* cMap = c->GetPad(plane+1);
243 TH2F* h =
new TH2F(
"h",
"",512,0,512,288,0,288);
244 for(Int_t i=1;i<
NADC;i++){
245 for(Int_t j=0;j<
NCHAN;j++){
247 h->SetBinContent(i+1,j+1,q);
266 UInt_t ysize = 10*ysize2;
267 TGTransientFrame*
main =
new TGTransientFrame(gClient->GetRoot(), fMain, xsize, ysize);
268 main->Connect(
"CloseWindow()",
"HarpoRecoMonitorGui", main,
"CloseWindow()");
269 main->DontCallClose();
272 main->SetCleanup(kDeepCleanup);
274 TGVerticalFrame* frame =
new TGVerticalFrame(main,xsize,ysize,kVerticalFrame);
277 TGLayoutHints* fLayout1 =
new TGLayoutHints(kLHintsLeft ,5,5,5,5);
278 TGLayoutHints* fLayout2 =
new TGLayoutHints(kLHintsRight ,5,5,5,5);
279 TGLayoutHints* fLayout3 =
new TGLayoutHints(kLHintsTop | kLHintsExpandX ,5,5,5,5);
280 TGLayoutHints* fLayout4 =
new TGLayoutHints(kLHintsExpandX | kLHintsExpandY,5,5,5,5);
288 TGLabel* fAnalysisLabel =
new TGLabel(frame,
"Template analysis");
291 TGHorizontalFrame* nBinsFrame =
new TGHorizontalFrame(frame,xsize,ysize2,kHorizontalFrame);
292 TGLabel* nBinsLabel =
new TGLabel(nBinsFrame,
"fNbins");
296 main->AddFrame(frame,fLayout4);
297 frame->AddFrame(fAnalysisLabel,fLayout3);
298 frame->AddFrame(nBinsFrame,fLayout3);
299 nBinsFrame->AddFrame(nBinsLabel,fLayout1);
306 TGTextButton* setConf =
new TGTextButton(frame,
"Save Config",
id);
307 setConf->Associate(fMain);
309 frame->AddFrame(setConf,fLayout3);
311 main->MapSubwindows();
TpcSimIonisationTrack * GetIonisationTrack(Int_t iTr)
HarpoRecoEvent * GetRecoEvent()
void DisplayAnalysis(TRootEmbeddedCanvas *ecTab, TGListBox *infobox)
Redefine empty default.
Dummy analysis to run as test and example. Give basic histograms of the data.
Double_t GetData(Int_t i, Int_t j)
Set/Get Data Cell.
void Save(char *mode=NULL)
int main(int argc, char **argv)
Bool_t isExist(ULong_t det)
Detecror date exist //! Number of Real Detectors.
Track object, containing position, angle, charge and quality information.
Object containing the reconstruction information for one event (with array of HarpoRecoClusters Harpo...
TH1F * HistLog(const char *name, const char *title, Int_t nBins, Double_t xMin, Double_t xMax)
2D vertex object, containing position, angle and associated track numbers, and quality info ...
TpcSimIonisationPoint * GetPoint(Int_t i)
TGNumberEntry * fChooseNbins
TClonesArray * GetVertexArray()
A class store HARPO row DCC event data and header. End provide access metods to the row data...
Cluster object, containing position, charge and quality information.
TFile * OpenHistFile(const char *ananame)
unpacked dcc data The class contains the data map for DCC or Feminos The data is stored as a 2D TMatr...
HarpoDetEvent * GetDetEvent(Long_t plane=XDCC)
Pmm2MesVect * GetMesurements()
Return pointer to decoded data.
Data from Keller temperuture and pressure sensors.
TVirtualPad * MakeNiceHisto(TH1 *hist, TVirtualPad *c1, const char *opt, Bool_t copy)
TpcSimMCTrack * GetTrack(Int_t i)
TpcSimMCEvent * GetMCEvent()
Bool_t Lookup(const char *path, Bool_t &val)
Lookup function for scalar values.
A class store HARPO raw PMM2 event buffer and header. End provide access metods to the row data...
virtual const EventHeader_t * GetHeader() const
const ULong_t gkNDetectors
TClonesArray * GetTracksArray()
HarpoDccMap * GetDccMap(Long_t plane=XDCC)
A list of all mesurements in one Event for Pmm2 v2 card The class is place holder for all unpacked me...
void ConfigFrame(TGMainFrame *fMain, Int_t id)
TClonesArray * GetClustersArray()
R__EXTERN HarpoDetSet * gHDetSet