FairRoot/PandaRoot
Classes | Functions | Variables
structure_analysis_emc.C File Reference
#include <TApplication.h>
#include <TGClient.h>
#include <TGButton.h>
#include <TGFrame.h>
#include <TFrame.h>
#include <TRootEmbeddedCanvas.h>
#include <TGStatusBar.h>
#include <TCanvas.h>
#include <TF1.h>
#include <TRandom.h>
#include <TGraph.h>
#include <TAxis.h>

Go to the source code of this file.

Classes

class  MyMainFrame
 

Functions

int structure_analysis_emc ()
 

Variables

string file_name ="sim_emc.root"
 

Function Documentation

int structure_analysis_emc ( )

Definition at line 25 of file structure_analysis_emc.C.

References basiclibs(), emcMap, f, file_name, fsim, PndEmcMapper::Instance(), PndEmcStructure::Instance(), out, PndEmcStructure::Print(), rootlogon(), and tsim.

26 {
27  gROOT->SetStyle("Plain");
28 
29  gROOT->LoadMacro("$VMCWORKDIR/gconfig/rootlogon.C");
30  gROOT->LoadMacro("$VMCWORKDIR/gconfig/basiclibs.C");
31  rootlogon();
32  basiclibs();
33 
34  // The file structure.txt which contain for each detector in Fwd Endcap detectorId, two indexes and x,y,z coordinates
35  ifstream f;
36  f.open("structure.txt");
37 
38  if (!f.is_open())
39  {
40  std::cout<<"File does not exist"<<std::endl;
41  TFile* fsim = new TFile(file_name.c_str());
42  TTree *tsim=(TTree *) fsim->Get("pndsim") ;
44  PndEmcStructure::Instance()->Print("structure.txt",2);
45  std::cout<<"File with emc structure is created"<<std::endl;
46 
47  // Delete lines from the file, which are not relatd to forward EMC
48  string line;
49  ifstream in("structure.txt");
50  ofstream out("outfile.txt");
51  //copy first line
52  getline(in,line);
53  out<<line<<"\n";
54 
55  while (getline(in,line))
56  {
57  if (line[0]!='3') continue; // Forward endcap start from 3
58  out<<line<<"\n";
59  }
60 
61  in.close();
62  out.close();
63  remove("structure.txt");
64  rename("outfile.txt","structure.txt");
65  std::cout<<"All but Forward emc is removed"<<std::endl;
66  std::cout<<"Done"<<std::endl;
67  }
68  else
69  {
70  f.close();
71  }
72 
73 
74  // Popup the GUI...
75  new MyMainFrame(gClient->GetRoot(), 200, 200);
76 
77  return 0;
78 }
basiclibs()
Emc geometry mapper.
Definition: PndEmcMapper.h:22
void Print(string, Int_t option=1) const
PndEmcMapper * emcMap
TFile * f
Definition: bump_analys.C:12
TFile * out
Definition: reco_muo.C:20
static PndEmcStructure * Instance()
static PndEmcMapper * Instance()
string file_name

Variable Documentation

string file_name ="sim_emc.root"