28#ifndef G4MPI_MANAGER_H
29#define G4MPI_MANAGER_H
36#define DISALLOW_COPY_AND_ASSIGN(TypeName) \
37 TypeName(const TypeName&); \
38 void operator=(const TypeName&)
63 G4MPImanager(
int argc,
char** argv,
int nof_extra_workers = 0);
100 void SetSeed(G4int inode, G4long seed);
111 void BeamOn(G4int nevent, G4bool qdivide=
true);
199 if( iverbose > 1 ) lv = 1;
200 if( iverbose < 0 ) lv = 0;
void ExecuteThreadCommand(const G4String &command)
G4MPImessenger * messenger_
G4String macro_file_name_
G4bool IsExtraWorker() const
G4bool CheckThreadStatus()
void ExecuteBeamOnThread(const G4String &command)
void ExecuteMacroFile(const G4String &fname, G4bool qbatch=false)
MPI_Group collecting_group_
MPI_Group processing_group_
DISALLOW_COPY_AND_ASSIGN(G4MPImanager)
static G4MPImanager * GetManager()
const MPI_Comm * GetCollectingComm() const
G4VMPIseedGenerator * GetSeedGenerator() const
const G4String & GetMacroFileName() const
MPI::Intracomm COMM_G4COMMAND_
static G4MPImanager * g4mpi_
void ParseArguments(G4int argc, char **argv)
void SetMasterWeight(G4double aweight)
const MPI_Comm * GetProcessingComm() const
void SetSeed(G4int inode, G4long seed)
void SetVerbose(G4int iverbose)
G4VMPIseedGenerator * seed_generator_
G4bool IsInitMacro() const
G4int GetActiveSize() const
void Print(const G4String &message)
G4bool IsBatchMode() const
G4VMPIextraWorker * extra_worker_
void BeamOn(G4int nevent, G4bool qdivide=true)
G4int GetEventsInSlave() const
G4String BcastCommand(const G4String &command)
const MPI::Intracomm * GetComm() const
MPI_Comm collecting_comm_
MPI_Comm processing_comm_
G4int GetTotalSize() const
const MPI_Comm * GetAllComm() const
void SetExtraWorker(G4VMPIextraWorker *extraWorker)
const G4String & GetInitFileName() const
G4MPIsession * GetMPIsession() const
G4double GetMasterWeight() const
G4int GetEventsInMaster() const
G4VMPIextraWorker * GetExtraWorker() const
void message(G4RunManager *runmanager)
ts_scorers example shows how to use global scorers.