LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
G4ZMQServer.hh
Go to the documentation of this file.
1 //
2 // ********************************************************************
3 // * License and Disclaimer *
4 // * *
5 // * The Geant4 software is copyright of the Copyright Holders of *
6 // * the Geant4 Collaboration. It is provided under the terms and *
7 // * conditions of the Geant4 Software License, included in the file *
8 // * LICENSE and available at http://cern.ch/geant4/license . These *
9 // * include a list of copyright holders. *
10 // * *
11 // * Neither the authors of this software system, nor their employing *
12 // * institutes,nor the agencies providing financial support for this *
13 // * work make any representation or warranty, express or implied, *
14 // * regarding this software system or assume any liability for its *
15 // * use. Please see the license in the file LICENSE and URL above *
16 // * for the full disclaimer and the limitation of liability. *
17 // * *
18 // * This code implementation is the result of the scientific and *
19 // * technical work of the GEANT4 collaboration. *
20 // * By using, copying, modifying or distributing the software (or *
21 // * any work based on the software) you agree to acknowledge its *
22 // * use in resulting scientific publications, and indicate your *
23 // * acceptance of all terms of the Geant4 Software license. *
24 // ********************************************************************
25 //
26 //
27 //
28 //
29 #ifndef G4ZMQ_SERVER_H_
30 #define G4ZMQ_SERVER_H_
31 
32 #include "G4VBasicShell.hh"
33 
34 class G4UItcsh;
35 
36 class G4ZMQServer : public G4VBasicShell {
37 public:
38  G4ZMQServer();
39  ~G4ZMQServer();
40 
41  void SetEndpoint(const G4String& endpoint);
42  G4String GetEndpoint() const;
43 
44  void SetDebug(G4bool flag);
45 
46  virtual G4UIsession* SessionStart();
47  virtual void PauseSessionStart(const G4String& message);
48 
49  virtual G4int ReceiveG4cout(const G4String& coutString);
50  virtual G4int ReceiveG4cerr(const G4String& cerrString);
51 
52 private:
53  G4bool qdebug_;
55  G4UItcsh* shell_;
56 
57  G4String GetCommand(const G4String& input);
58 
59  virtual void ExecuteCommand(const G4String& command);
60  virtual G4bool GetHelpChoice(G4int& );
61  virtual void ExitHelp() const;
62 
63 };
64 
65 // ==========================================================================
66 inline void G4ZMQServer::SetEndpoint(const G4String& endpoint)
67 {
68  endpoint_ = endpoint;
69 }
70 
72 {
73  return endpoint_;
74 }
75 
76 inline void G4ZMQServer::SetDebug(G4bool flag)
77 {
78  qdebug_ = flag;
79 }
80 
81 #endif
virtual void ExecuteCommand(const G4String &command)
Definition: G4ZMQServer.cc:263
G4String endpoint_
Definition: G4ZMQServer.hh:54
G4String GetCommand(const G4String &input)
Definition: G4ZMQServer.cc:203
void SetDebug(G4bool flag)
Definition: G4ZMQServer.hh:76
void message(RunManager *runmanager)
Definition: ts_scorers.cc:74
virtual G4bool GetHelpChoice(G4int &)
Definition: G4ZMQServer.cc:305
virtual void ExitHelp() const
Definition: G4ZMQServer.cc:311
virtual void PauseSessionStart(const G4String &message)
Definition: G4ZMQServer.cc:174
void SetEndpoint(const G4String &endpoint)
Definition: G4ZMQServer.hh:66
virtual G4UIsession * SessionStart()
Definition: G4ZMQServer.cc:95
G4bool qdebug_
Definition: G4ZMQServer.hh:53
virtual G4int ReceiveG4cerr(const G4String &cerrString)
Definition: G4ZMQServer.cc:191
G4String GetEndpoint() const
Definition: G4ZMQServer.hh:71
G4UItcsh * shell_
Definition: G4ZMQServer.hh:55
virtual G4int ReceiveG4cout(const G4String &coutString)
Definition: G4ZMQServer.cc:179