Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-05 08:18:15

0001 #include "PHG4OHCalDisplayAction.h"
0002 
0003 #include <g4main/PHG4DisplayAction.h>  // for PHG4DisplayAction
0004 
0005 #include <Geant4/G4Colour.hh>
0006 #include <Geant4/G4LogicalVolume.hh>
0007 #include <Geant4/G4VisAttributes.hh>
0008 
0009 PHG4OHCalDisplayAction::PHG4OHCalDisplayAction(const std::string &name)
0010   : PHG4DisplayAction(name)
0011 {
0012 }
0013 
0014 PHG4OHCalDisplayAction::~PHG4OHCalDisplayAction()
0015 {
0016   for (auto &it : m_VisAttVec)
0017   {
0018     delete it;
0019   }
0020   m_VisAttVec.clear();
0021   m_ScintiLogVolSet.clear();
0022   m_SupportRingLogVolSet.clear();
0023 }
0024 
0025 void PHG4OHCalDisplayAction::ApplyDisplayAction(G4VPhysicalVolume * /*physvol*/)
0026 {
0027   for (auto &it : m_ScintiLogVolSet)
0028   {
0029     if (it->GetVisAttributes())
0030     {
0031       return;
0032     }
0033     G4VisAttributes *m_VisAtt = new G4VisAttributes();
0034     m_VisAtt->SetVisibility(true);
0035     m_VisAtt->SetForceSolid(true);
0036     m_VisAtt->SetColor(G4Colour::Green());
0037     it->SetVisAttributes(m_VisAtt);
0038     m_VisAttVec.push_back(m_VisAtt);
0039   }
0040 
0041   for (auto &it : m_SupportRingLogVolSet)
0042   {
0043     if (it->GetVisAttributes())
0044     {
0045       return;
0046     }
0047     G4VisAttributes *m_VisAtt = new G4VisAttributes();
0048     m_VisAtt->SetVisibility(true);
0049     m_VisAtt->SetForceSolid(true);
0050     m_VisAtt->SetColor(G4Colour::Grey());
0051     it->SetVisAttributes(m_VisAtt);
0052     m_VisAttVec.push_back(m_VisAtt);
0053   }
0054 
0055   if (m_SteelVol)
0056   {
0057     if (m_SteelVol->GetVisAttributes())
0058     {
0059       return;
0060     }
0061     G4VisAttributes *m_VisAtt = new G4VisAttributes();
0062     m_VisAtt->SetVisibility(true);
0063     m_VisAtt->SetForceSolid(true);
0064     m_VisAtt->SetColor(G4Colour::Grey());
0065     m_SteelVol->SetVisAttributes(m_VisAtt);
0066     m_VisAttVec.push_back(m_VisAtt);
0067   }
0068 
0069   if (m_ChimSteelVol)
0070   {
0071     if (m_ChimSteelVol->GetVisAttributes())
0072     {
0073       return;
0074     }
0075     G4VisAttributes *m_VisAtt = new G4VisAttributes();
0076     m_VisAtt->SetVisibility(true);
0077     m_VisAtt->SetForceSolid(true);
0078     m_VisAtt->SetColor(G4Colour::Grey());
0079     m_ChimSteelVol->SetVisAttributes(m_VisAtt);
0080     m_VisAttVec2.push_back(m_VisAtt);
0081   }
0082 }