3939#include < TGeoVolume.h> // for TGeoVolume
4040#include < TVector3.h>
4141
42- ClassImp (FairEventManager);
43-
4442FairEventManager* FairEventManager::fgRinstance = nullptr ;
4543
4644FairEventManager* FairEventManager::Instance ()
@@ -70,55 +68,6 @@ FairEventManager::FairEventManager()
7068{
7169 fgRinstance = this ;
7270 AddParticlesToPdgDataBase ();
73- fPDGToColor [22 ] = 623 ; // photon
74- fPDGToColor [-2112 ] = 2 ; // anti-neutron
75- fPDGToColor [-11 ] = 3 ; // e+
76- fPDGToColor [-3122 ] = 4 ; // anti-lambda
77- fPDGToColor [11 ] = 5 ; // e-
78- fPDGToColor [-3222 ] = 6 ; // Sigma -
79- fPDGToColor [12 ] = 7 ; // e-neutrino
80- fPDGToColor [-3212 ] = 8 ; // Sigma0
81- fPDGToColor [-13 ] = 9 ; // mu+
82- fPDGToColor [-3112 ] = 10 ; // Sigma+ (PB
83- fPDGToColor [13 ] = 11 ; // mu-
84- fPDGToColor [-3322 ] = 12 ; // Xi0
85- fPDGToColor [111 ] = 13 ; // pi0
86- fPDGToColor [-3312 ] = 14 ; // Xi+
87- fPDGToColor [211 ] = 15 ; // pi+
88- fPDGToColor [-3334 ] = 16 ; // Omega+ (PB)
89- fPDGToColor [-211 ] = 17 ; // pi-
90- fPDGToColor [-15 ] = 18 ; // tau+
91- fPDGToColor [130 ] = 19 ; // K long
92- fPDGToColor [15 ] = 20 ; // tau -
93- fPDGToColor [321 ] = 21 ; // K+
94- fPDGToColor [411 ] = 22 ; // D+
95- fPDGToColor [-321 ] = 23 ; // K-
96- fPDGToColor [-411 ] = 24 ; // D-
97- fPDGToColor [2112 ] = 25 ; // n
98- fPDGToColor [421 ] = 26 ; // D0
99- fPDGToColor [2212 ] = 27 ; // p
100- fPDGToColor [-421 ] = 28 ; // D0
101- fPDGToColor [-2212 ] = 29 ; // anti-proton
102- fPDGToColor [431 ] = 30 ; // Ds+
103- fPDGToColor [310 ] = 31 ; // K short
104- fPDGToColor [-431 ] = 32 ; // anti Ds-
105- fPDGToColor [221 ] = 33 ; // eta
106- fPDGToColor [4122 ] = 34 ; // Lambda_C+
107- fPDGToColor [3122 ] = 35 ; // Lambda
108- fPDGToColor [24 ] = 36 ; // W+
109- fPDGToColor [3222 ] = 37 ; // Sigma+
110- fPDGToColor [-24 ] = 38 ; // W-
111- fPDGToColor [3212 ] = 39 ; // Sigma0
112- fPDGToColor [23 ] = 40 ; // Z
113- fPDGToColor [3112 ] = 41 ; // Sigma -
114- fPDGToColor [3322 ] = 42 ; // Xi0
115- fPDGToColor [3312 ] = 43 ; // Xi-
116- fPDGToColor [3334 ] = 44 ; // Omega- (PB)
117- fPDGToColor [50000050 ] = 801 ; // Cerenkov
118- fPDGToColor [1000010020 ] = 45 ;
119- fPDGToColor [1000010030 ] = 48 ;
120- fPDGToColor [1000020040 ] = 50 ;
121- fPDGToColor [1000020030 ] = 55 ;
12271}
12372
12473void FairEventManager::Init (Int_t visopt, Int_t vislvl, Int_t maxvisnds)
@@ -253,14 +202,6 @@ void FairEventManager::Close() {}
253202
254203void FairEventManager::DisplaySettings () {}
255204
256- Int_t FairEventManager::Color (int pdg)
257- {
258- if (fPDGToColor .find (pdg) != fPDGToColor .end ()) {
259- return fPDGToColor [pdg];
260- }
261- return 0 ;
262- }
263-
264205void FairEventManager::AddParticlesToPdgDataBase (Int_t /* pdg*/ )
265206{
266207 // Add particles to the PDG data base
@@ -371,14 +312,14 @@ void FairEventManager::LoadXMLSettings()
371312 FairXMLNode *color = colors->GetChild (j);
372313 TString pgd_code = color->GetAttrib (" pdg" )->GetValue ();
373314 TString color_code = color->GetAttrib (" color" )->GetValue ();
374- fPDGToColor [ pgd_code.Atoi ()] = StringToColor (color_code);
315+ fPDGColor . SetColor ( pgd_code.Atoi (), FairXMLPdgColor:: StringToColor (color_code) );
375316 }
376317 }
377318 }
378319 gEve ->Redraw3D ();
379320}
380321
381- void FairEventManager::LoadXMLDetector (TGeoNode * node, FairXMLNode * xml, Int_t depth)
322+ void FairEventManager::LoadXMLDetector (TGeoNode* node, FairXMLNode* xml, Int_t depth)
382323{
383324 TString name = xml->GetAttrib (" name" )->GetValue ();
384325 TString node_name = node->GetName ();
@@ -388,8 +329,8 @@ void FairEventManager::LoadXMLDetector(TGeoNode *node, FairXMLNode *xml, Int_t d
388329 TString transparency = xml->GetAttrib (" transparency" )->GetValue ();
389330 TString color = xml->GetAttrib (" color" )->GetValue ();
390331 if (!color.EqualTo (" " )) {
391- node->GetVolume ()->SetFillColor (StringToColor (color));
392- node->GetVolume ()->SetLineColor (StringToColor (color));
332+ node->GetVolume ()->SetFillColor (FairXMLPdgColor:: StringToColor (color));
333+ node->GetVolume ()->SetLineColor (FairXMLPdgColor:: StringToColor (color));
393334 }
394335 if (!transparency.EqualTo (" " )) {
395336 node->GetVolume ()->SetTransparency ((Char_t)(transparency.Atoi ()));
@@ -419,63 +360,6 @@ void FairEventManager::LoadXMLDetector(TGeoNode *node, FairXMLNode *xml, Int_t d
419360 }
420361}
421362
422- Int_t FairEventManager::StringToColor (TString color) const
423- {
424- if (color.Contains (" k" )) {
425- Int_t plus_index = color.First (' +' );
426- Int_t minus_index = color.First (' -' );
427- Int_t cut = plus_index;
428- if (cut == -1 )
429- cut = minus_index;
430- if (cut == -1 )
431- cut = color.Length ();
432- TString col_name (color (0 , cut));
433- Int_t col_val = 0 ;
434- if (col_name.EqualTo (" kWhite" )) {
435- col_val = 0 ;
436- } else if (col_name.EqualTo (" kBlack" )) {
437- col_val = 1 ;
438- } else if (col_name.EqualTo (" kGray" )) {
439- col_val = 920 ;
440- } else if (col_name.EqualTo (" kRed" )) {
441- col_val = 632 ;
442- } else if (col_name.EqualTo (" kGreen" )) {
443- col_val = 416 ;
444- } else if (col_name.EqualTo (" kBlue" )) {
445- col_val = 600 ;
446- } else if (col_name.EqualTo (" kYellow" )) {
447- col_val = 400 ;
448- } else if (col_name.EqualTo (" kMagenta" )) {
449- col_val = 616 ;
450- } else if (col_name.EqualTo (" kCyan" )) {
451- col_val = 432 ;
452- } else if (col_name.EqualTo (" kOrange" )) {
453- col_val = 800 ;
454- } else if (col_name.EqualTo (" kSpring" )) {
455- col_val = 820 ;
456- } else if (col_name.EqualTo (" kTeal" )) {
457- col_val = 840 ;
458- } else if (col_name.EqualTo (" kAzure" )) {
459- col_val = 860 ;
460- } else if (col_name.EqualTo (" kViolet" )) {
461- col_val = 880 ;
462- } else if (col_name.EqualTo (" kPink" )) {
463- col_val = 900 ;
464- }
465- TString col_num (color (cut + 1 , color.Length ()));
466- if (col_num.Length () > 0 ) {
467- if (color.Contains (" +" )) {
468- col_val += col_num.Atoi ();
469- } else {
470- col_val -= col_num.Atoi ();
471- }
472- }
473- return col_val;
474- } else {
475- return color.Atoi ();
476- }
477- }
478-
479363void FairEventManager::SetTransparency (Bool_t use_xml, Int_t trans)
480364{
481365 if (!use_xml) { // high transparency
0 commit comments