67 TNamed* pSetup =
new TNamed(
"setup",
"undefined");
71 TNamed* pSystem =
new TNamed(
"system",
"Au+Au");
75 TNamed* pProduction =
new TNamed(
"production",
"SIS");
79 TParameter<Double_t>* pBeamEnergy =
new TParameter<Double_t>(
"beamenergy", 4.107);
81 pBeamEnergy->SetBit(TParameter<Double_t>::kFirst);
84 TParameter<Int_t>* pEvents =
new TParameter<Int_t>(
"events", 0);
85 pEvents->SetMergeMode(
'+');
88 TParameter<Bool_t>* pMC =
new TParameter<Bool_t>(
"mc", kTRUE);
89 pMC->SetBit(TParameter<Bool_t>::kIsConst);
93 TNamed* pTrainOp =
new TNamed(
"operator",
"undefined");
94 pTrainOp->SetTitle(gSystem->Getenv(
"USER"));
99 TParameter<Int_t>* pRootVers =
new TParameter<Int_t>(
"root", gROOT->GetVersionInt());
100 pRootVers->SetBit(TParameter<Int_t>::kIsConst);
103 gSystem->Setenv(
"CBMROOT_SVN_REVISION", gSystem->GetFromPipe(
"svnversion $VMCWORKDIR"));
104 TString rev = gSystem->Getenv(
"CBMROOT_SVN_REVISION");
105 TParameter<Int_t>* pCbmRev =
new TParameter<Int_t>(
"cbmroot", 0);
106 pCbmRev->SetBit(TParameter<Int_t>::kIsConst);
107 pCbmRev->SetVal(rev.Atoi());
111 TParameter<Int_t>* pDate =
new TParameter<Int_t>(
"date", dat.GetDate());
112 pDate->SetBit(TParameter<Int_t>::kMin);
115 TParameter<Int_t>* pTime =
new TParameter<Int_t>(
"time", dat.GetTime());
116 pTime->SetBit(TParameter<Int_t>::kMin);
201 TPaveText* pt =
new TPaveText(gPad->GetLeftMargin() + 0.05, 1. - gPad->GetTopMargin() + 0.01,
202 1. - gPad->GetRightMargin() - 0.05, 0.99,
"NDCNB");
204 pt->SetTextAlign(kHAlignLeft + kVAlignCenter);
207 TString line =
"CBM";
211 TParameter<Bool_t>* parB =
dynamic_cast<TParameter<Bool_t>*
>(
fMetaList.FindObject(
"mc"));
212 if (opt.Contains(
"m") && parB && parB->GetVal()) {
213 tmp = Form(
" Simulation");
218 TNamed* par =
dynamic_cast<TNamed*
>(
fMetaList.FindObject(
"system"));
219 if (opt.Contains(
"s") && par) tmp = par->GetTitle();
220 if (!tmp.IsNull()) line +=
", " + tmp;
223 TParameter<Double_t>* parD =
dynamic_cast<TParameter<Double_t>*
>(
fMetaList.FindObject(
"beamenergy"));
224 if (opt.Contains(
"b") && parD) {
225 if (tmp.Contains(
"p")) tmp = Form(
"#it{E}_{beam} = %.2f GeV", parD->GetVal());
227 tmp = Form(
"#it{E}_{beam} = %.2f #it{A}GeV", parD->GetVal());
228 if (!tmp.IsNull()) line +=
" " + tmp;
230 else if (opt.Contains(
"S") && parD) {
231 TString sys(par->GetTitle());
232 sys.ReplaceAll(
"+",
"");
233 sys.ReplaceAll(
"-",
"");
239 if (sys.EqualTo(
"pp")) {
247 TGeoElementTable g(0);
248 TString targ = (sys(sys.Length() - 2, sys.Length()));
249 TString proj = (sys(0, sys.Length() - 2));
250 proj.ReplaceAll(
"p",
"H");
251 aProj = g.FindElement(proj.Data())->A() + 0.05;
252 zProj = g.FindElement(proj.Data())->Z();
253 aTarg = g.FindElement(targ.Data())->A() + 0.05;
254 zTarg = g.FindElement(targ.Data())->Z();
264 URun run(
"",
"", aProj, zProj, parD->GetVal(), aTarg, zTarg, 0., 0., 0., 0, 0., 0., 0., 0);
265 tmp = Form(
"#sqrt{#it{s}_{NN}} = %.2f GeV", run.
GetNNSqrtS());
266 if (!tmp.IsNull()) line +=
" " + tmp;
270 TParameter<Int_t>* parI =
dynamic_cast<TParameter<Int_t>*
>(
fMetaList.FindObject(
"events"));
271 if (opt.Contains(
"n") && parD) {
273 tmp = Form(
"#it{N}_{evt} = %.1fM", parI->GetVal() / 1.e+6);
274 if (!tmp.IsNull()) line +=
", " + tmp;
277 pt->AddText(line.Data());
280 pt->SetLineColorAlpha(0, 0.0);
281 pt->SetFillColorAlpha(0, 0.0);
282 pt->SetFillStyle(kFEmpty);