File indexing completed on 2025-08-05 08:17:50
0001
0002
0003 #ifndef G4DETECTORS_PHG4OUTERHCALDISPLAYACTION_H
0004 #define G4DETECTORS_PHG4OUTERHCALDISPLAYACTION_H
0005
0006 #include <g4main/PHG4DisplayAction.h>
0007
0008 #include <set>
0009 #include <string> // for string
0010 #include <vector>
0011
0012 class G4LogicalVolume;
0013 class G4VisAttributes;
0014 class G4VPhysicalVolume;
0015
0016 class PHG4OuterHcalDisplayAction : public PHG4DisplayAction
0017 {
0018 public:
0019 explicit PHG4OuterHcalDisplayAction(const std::string &name);
0020
0021 ~PHG4OuterHcalDisplayAction() override;
0022
0023 void ApplyDisplayAction(G4VPhysicalVolume *physvol) override;
0024 void SetMyTopVolume(G4VPhysicalVolume *vol) { m_MyTopVolume = vol; }
0025 void AddScintiVolume(G4LogicalVolume *vol) { m_ScintiLogVolSet.insert(vol); }
0026 void AddSteelVolume(G4LogicalVolume *vol) { m_SteelVol = vol; }
0027
0028 private:
0029 G4VPhysicalVolume *m_MyTopVolume;
0030 G4LogicalVolume *m_SteelVol;
0031 std::vector<G4VisAttributes *> m_VisAttVec;
0032 std::set<G4LogicalVolume *> m_ScintiLogVolSet;
0033 };
0034
0035 #endif