Warning, file /include/Geant4/G4VInteractiveSession.hh was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028 #ifndef G4VInteractiveSession_H
0029 #define G4VInteractiveSession_H 1
0030
0031 #include "G4VInteractorManager.hh"
0032
0033 #include <map>
0034
0035 class G4UImessenger;
0036 class G4SceneTreeItem;
0037
0038
0039
0040
0041
0042
0043
0044
0045 class G4VInteractiveSession
0046 {
0047 public:
0048 struct OutputStyle
0049 {
0050 G4bool fixed, bold, highlight;
0051 };
0052
0053 G4VInteractiveSession();
0054 virtual ~G4VInteractiveSession();
0055 virtual void AddMenu(const char*, const char*);
0056 virtual void AddButton(const char*, const char*, const char*);
0057 virtual void AddIcon(const char*, const char*, const char*, const char*);
0058 virtual void DefaultIcons(bool);
0059 virtual void SetOutputStyle(const char*, const char*);
0060 virtual void NativeMenu(bool);
0061 virtual void ClearMenu();
0062 virtual void UpdateSceneTree(const G4SceneTreeItem&);
0063 void AddInteractor(G4String, G4Interactor);
0064 G4Interactor GetInteractor(const G4String&);
0065 const std::map<G4String, OutputStyle>& GetOutputStyles() const;
0066
0067 protected:
0068 void SetStyleUtility(const G4String& destination, const G4String& style);
0069
0070 std::map<G4String,OutputStyle> fOutputStyles {
0071 {"cout",{true,false,true}},
0072 {"cerr",{true,true,true}},
0073 {"warn",{true,false,true}},
0074 {"error",{true,true,true}},
0075 {"debug",{true,false,true}}};
0076
0077
0078 private:
0079 G4UImessenger* messenger;
0080 using G4interactor_map = std::map<G4String, G4Interactor, std::less<G4String>>;
0081 G4interactor_map interactors;
0082 };
0083
0084 #endif