StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Utility.C
1 TString MuDSTFile(TString production, TString trgsetupname)
2 {
3  if( production.Contains("P08ic") && trgsetupname.Contains("upsilon"))
4  return "/star/data06/embed/andrewar/MuDstReduced/P08ic_MuDst_st_upsilon.root";
5 
6 }
7 int Quit(char* prompt="Hit q or n to quit...")
8 {
9  char character;
10  fflush(stdin);
11  cout << prompt << flush;
12  character = getc(stdin);
13  cout << endl;
14  return ((character=='q')||
15  (character=='Q')||
16  (character=='n')||
17  (character=='N'));
18 }
19 
20 
22 
23 void StringCuts(char *o, const char *s, const char *s1)
24 {
25  //o = malloc(1000);
26  strcpy(o,s);
27  strcat(o, " {"); strcat(o,s1); strcat(o,"}");
28 }
29 
30 void StringCuts(char *o, const char *s, const char *s1, const char *s2)
31 {
32  strcpy(o,s);
33  strcat(o, " {");
34  strcat(o, " ("); strcat(o,s1); strcat(o,")");
35  strcat(o,"&&("); strcat(o,s2); strcat(o,")");
36  strcat(o, "}");
37 }
38 
39 void StringCuts(char *o, const char *s, const char *s1,
40  const char *s2, const char *s3)
41 {
42  strcpy(o,s);
43  strcat(o, " {");
44  strcat(o, "("); strcat(o,s1); strcat(o,")");
45  strcat(o,"&&("); strcat(o,s2); strcat(o,")");
46  strcat(o,"&&("); strcat(o,s3); strcat(o,")");
47  strcat(o, "}");
48 }
49 
50 void StringCuts(char *o, const char *s, const char *s1, const char *s2,
51  const char *s3, const char *s4)
52 {
53  strcpy(o,s);
54  strcat(o, " {");
55  strcat(o, "("); strcat(o,s1); strcat(o,")");
56  strcat(o,"&&("); strcat(o,s2); strcat(o,")");
57  strcat(o,"&&("); strcat(o,s3); strcat(o,")");
58  strcat(o,"&&("); strcat(o,s4); strcat(o,")");
59  strcat(o, "}");
60 }
61 
62 
64 
65 void Style(int i)
66 {
67  switch (i) {
68  case 1:
69  //cout << endl << "Style 1 ..." << endl << endl;
70  gStyle->SetCanvasColor(10); // white
71  gStyle->SetPadColor(10); // white
72  gStyle->SetPadTickX(1);
73  gStyle->SetPadTickY(1);
74  gStyle->SetFillColor(0); // clear (no-fill)
75  gStyle->SetTitleColor(0); // clear (no-fill)
76  gStyle->SetStatColor(0); // clear (no-fill)
77  gStyle->SetHistFillColor(0); // clear (no-fill)
78  gStyle->SetFrameFillColor(10); // white
79  gStyle->SetCanvasBorderMode(0);
80  gStyle->SetFrameBorderMode(0);
81  gStyle->SetPadBorderMode(0);
82  //gStyle->SetOptStat(0);
83  gStyle->SetOptFit();
84  break;
85  default:
86  break;
87  }
88 }
89 
91 
92 void keyLine(Float_t x, Float_t y, const Char_t* tt,
93  Int_t color=1, Int_t style=1, Float_t tSize=0.04)
94 {
95  gPad->Update();
96  Float_t x1 = gPad->GetFrame()->GetX1();
97  Float_t x2 = gPad->GetFrame()->GetX2();
98  Float_t dx = x2-x1;
99  x = x1 + dx*x;
100  Float_t y1 = gPad->GetFrame()->GetY1();
101  Float_t y2 = gPad->GetFrame()->GetY2();
102  Float_t dy = y2-y1;
103  y = y1 + dy*y;
104  TLine *l = new TLine(x,y,x+0.05*dx,y);
105  l->SetLineColor(color);
106  l->SetLineStyle(style);
107  l->Draw();
108  TText *t = new TText(x+0.06*dx,y,tt);
109  t->SetTextAlign(12);
110  t->SetTextSize(tSize);
111  t->SetTextColor(color);
112  t->Draw();
113 }
114 
115 void keySymbol(Float_t x, Float_t y, const Char_t* tt,
116  Int_t color=1, Int_t marker=1, Float_t tSize=0.04)
117 {
118  gPad->Update();
119  Float_t x1 = gPad->GetFrame()->GetX1();
120  Float_t x2 = gPad->GetFrame()->GetX2();
121  Float_t dx = x2-x1;
122  x = x1 + dx*x;
123  Float_t y1 = gPad->GetFrame()->GetY1();
124  Float_t y2 = gPad->GetFrame()->GetY2();
125  Float_t dy = y2-y1;
126  y = y1 + dy*y;
127  TMarker *l = new TMarker(x+0.025*dx,y,marker);
128  l->SetMarkerColor(color);
129  l->Draw();
130  TText *t = new TText(x+0.06*dx,y,tt);
131  t->SetTextAlign(12);
132  t->SetTextSize(tSize);
133  t->SetTextColor(color);
134  t->Draw();
135 }