source: trunk/MagicSoft/Mars/macros/readMagic.C@ 951

Last change on this file since 951 was 948, checked in by tbretz, 23 years ago
*** empty log message ***
File size: 2.1 KB
Line 
1/* ======================================================================== *\
2!
3! *
4! * This file is part of MARS, the MAGIC Analysis and Reconstruction
5! * Software. It is distributed to you in the hope that it can be a useful
6! * and timesaving tool in analysing Data of imaging Cerenkov telescopes.
7! * It is distributed WITHOUT ANY WARRANTY.
8! *
9! * Permission to use, copy, modify and distribute this software and its
10! * documentation for any purpose is hereby granted without fee,
11! * provided that the above copyright notice appear in all copies and
12! * that both that copyright notice and this permission notice appear
13! * in supporting documentation. It is provided "as is" without express
14! * or implied warranty.
15! *
16!
17!
18! Author(s): Thomas Bretz 12/2000 (tbretz@uni-sw.gwdg.de)
19!
20! Copyright: MAGIC Software Development, 2000-2001
21!
22!
23\* ======================================================================== */
24
25
26void readMagic()
27{
28 MParList plist;
29
30 MGeomCamMagic geomcam;
31 MPedestalCam pedest;
32 MHillas hillas;
33 MTaskList tlist;
34
35 plist->AddToList(&geomcam);
36 plist->AddToList(&pedest);
37 plist->AddToList(&hillas);
38 plist->AddToList(&tlist);
39
40 MReadTree read("Events", "oscar_protons.root");
41 MCerPhotCalc ncalc;
42 MImgCleanStd clean;
43 MHillasCalc hcalc;
44
45 tlist.AddToList(&read);
46 tlist.AddToList(&ncalc);
47 tlist.AddToList(&clean);
48 tlist.AddToList(&hcalc);
49
50 MEvtLoop evtloop;
51 evtloop.SetParList(&plist);
52
53 if (!evtloop.PreProcess())
54 return;
55
56 MCerPhotEvt &phevt = *(MCerPhotEvt*)plist->FindObject("MCerPhotEvt");
57
58 MCamDisplay display(&geomcam);
59
60 while (read.Process())
61 {
62 cout << "Event #" << read.GetEventNum() ":" << endl;
63
64 ncalc.Process();
65
66 display.DrawPhotNum(&phevt);
67 gClient->HandleInput();
68 if(getchar()=='q')
69 break;
70
71 clean.Process();
72 hcalc.Process();
73
74 hillas.Print();
75 hillas.Draw();
76
77 display.DrawPhotNum(&phevt);
78
79 gClient->HandleInput();
80 if(getchar()=='q')
81 break;
82
83 hillas.Clear();
84 }
85
86 evtloop.PostProcess();
87}
Note: See TracBrowser for help on using the repository browser.