Geant4
10.03
|
#include <G4MPIscorerMerger.hh>
Public Member Functions | |
G4MPIscorerMerger () | |
G4MPIscorerMerger (G4ScoringManager *mgr, G4int destination=G4MPImanager::kRANK_MASTER, G4int verbosity=0) | |
virtual | ~G4MPIscorerMerger () |
void | SetDestinationRank (G4int i) |
void | SetScoringManager (G4ScoringManager *mgr) |
void | SetVerbosity (G4int ver) |
void | Merge () |
Protected Member Functions | |
void | SetupOutputBuffer (char *buff, G4int size, G4int position) |
void | DestroyBuffer () |
void | Pack (const G4ScoringManager *) |
Pack all meshes into buffer. More... | |
void | UnPackAndMerge (const G4ScoringManager *) |
void | Pack (const G4VScoringMesh *) |
Pack a single mesh. More... | |
void | UnPackAndMerge (G4VScoringMesh *) |
void | Pack (const HitStatDoubleMap *) |
Pack a single score map. More... | |
HitStatDoubleMap * | UnPackHitStatDoubleMap (const G4String &detName, const G4String &colName) |
G4int | CalculatePackSize (const G4ScoringManager *) const |
G4int | CalculatePackSize (const G4VScoringMesh *) const |
G4int | CalculatePackSize (const HitStatDoubleMap *) const |
void | Send (const unsigned int destination) |
void | Receive (const unsigned int source) |
Private Attributes | |
char * | outputBuffer |
G4int | outputBufferSize |
G4int | outputBufferPosition |
long | bytesSent |
G4bool | ownsBuffer |
G4ScoringManager * | scoringManager |
unsigned int | commSize |
unsigned int | destinationRank |
MPI::Intracomm | comm |
G4int | verbose |
Definition at line 40 of file G4MPIscorerMerger.hh.
G4MPIscorerMerger::G4MPIscorerMerger | ( | ) |
Definition at line 73 of file G4MPIscorerMerger.cc.
G4MPIscorerMerger::G4MPIscorerMerger | ( | G4ScoringManager * | mgr, |
G4int | destination = G4MPImanager::kRANK_MASTER , |
||
G4int | verbosity = 0 |
||
) |
Definition at line 79 of file G4MPIscorerMerger.cc.
|
virtual |
Definition at line 89 of file G4MPIscorerMerger.cc.
References outputBuffer, and ownsBuffer.
|
protected |
Definition at line 474 of file G4MPIscorerMerger.cc.
References DMSG, G4ScoringManager::GetMesh(), and G4ScoringManager::GetNumberOfMesh().
Referenced by CalculatePackSize(), and Send().
|
protected |
Definition at line 493 of file G4MPIscorerMerger.cc.
References CalculatePackSize(), DMSG, ele, G4VScoringMesh::GetScoreMap(), and G4InuclParticleNames::name().
|
protected |
Definition at line 519 of file G4MPIscorerMerger.cc.
References DMSG, and G4THitsMap< T >::GetSize().
|
inlineprotected |
Definition at line 62 of file G4MPIscorerMerger.hh.
References outputBuffer, outputBufferPosition, outputBufferSize, and ownsBuffer.
Referenced by Merge().
void G4MPIscorerMerger::Merge | ( | ) |
Definition at line 123 of file G4MPIscorerMerger.cc.
References bytesSent, comm, commSize, destinationRank, DestroyBuffer(), DMSG, G4cout, G4endl, G4mpi::Merge(), Receive(), Send(), G4INCL::CrossSections::total(), and verbose.
Referenced by RunActionMaster::EndOfRunAction().
|
protected |
Pack all meshes into buffer.
Definition at line 258 of file G4MPIscorerMerger.cc.
References comm, DMSG, FatalException, G4Exception(), G4ScoringManager::GetMesh(), G4ScoringManager::GetNumberOfMesh(), outputBuffer, outputBufferPosition, and outputBufferSize.
Referenced by Pack(), and Send().
|
protected |
Pack a single mesh.
Definition at line 319 of file G4MPIscorerMerger.cc.
References comm, DMSG, ele, G4VScoringMesh::GetScoreMap(), G4InuclParticleNames::name(), G4InuclParticleNames::nn, outputBuffer, outputBufferPosition, outputBufferSize, and Pack().
|
protected |
Pack a single score map.
Definition at line 407 of file G4MPIscorerMerger.cc.
References comm, DMSG, G4THitsMap< T >::GetMap(), G4THitsMap< T >::GetSize(), G4FFGEnumerations::INT, outputBuffer, outputBufferPosition, outputBufferSize, and verbose.
|
protected |
Definition at line 204 of file G4MPIscorerMerger.cc.
References buffer, comm, DMSG, G4MPImanager::kTAG_CMDSCR, outputBuffer, outputBufferSize, ownsBuffer, scoringManager, SetupOutputBuffer(), Status(), and UnPackAndMerge().
Referenced by Merge().
|
protected |
Definition at line 232 of file G4MPIscorerMerger.cc.
References buffer, bytesSent, CalculatePackSize(), comm, DMSG, G4MPImanager::kTAG_CMDSCR, outputBuffer, outputBufferPosition, outputBufferSize, ownsBuffer, Pack(), scoringManager, and SetupOutputBuffer().
Referenced by Merge().
|
inline |
Definition at line 49 of file G4MPIscorerMerger.hh.
References destinationRank.
|
inline |
Definition at line 50 of file G4MPIscorerMerger.hh.
References scoringManager.
|
inlineprotected |
Definition at line 57 of file G4MPIscorerMerger.hh.
References outputBuffer, outputBufferPosition, outputBufferSize, and position.
Referenced by Receive(), and Send().
|
inline |
Definition at line 51 of file G4MPIscorerMerger.hh.
References verbose.
Referenced by RunActionMaster::EndOfRunAction().
|
protected |
Definition at line 281 of file G4MPIscorerMerger.cc.
References comm, FatalException, G4Exception(), G4ScoringManager::GetMesh(), G4ScoringManager::GetNumberOfMesh(), outputBuffer, outputBufferPosition, and outputBufferSize.
Referenced by Receive().
|
protected |
Definition at line 350 of file G4MPIscorerMerger.cc.
References G4VScoringMesh::Accumulate(), comm, DMSG, G4VScoringMesh::GetWorldName(), G4InuclParticleNames::name(), outputBuffer, outputBufferPosition, outputBufferSize, and UnPackHitStatDoubleMap().
|
protected |
Definition at line 450 of file G4MPIscorerMerger.cc.
References comm, DMSG, G4FFGEnumerations::INT, outputBuffer, outputBufferPosition, outputBufferSize, G4THitsMap< T >::set(), and verbose.
Referenced by UnPackAndMerge().
|
private |
Definition at line 98 of file G4MPIscorerMerger.hh.
|
private |
Definition at line 103 of file G4MPIscorerMerger.hh.
Referenced by Merge(), Pack(), Receive(), Send(), UnPackAndMerge(), and UnPackHitStatDoubleMap().
|
private |
Definition at line 101 of file G4MPIscorerMerger.hh.
Referenced by Merge().
|
private |
Definition at line 102 of file G4MPIscorerMerger.hh.
Referenced by Merge(), and SetDestinationRank().
|
private |
Definition at line 95 of file G4MPIscorerMerger.hh.
Referenced by DestroyBuffer(), Pack(), Receive(), Send(), SetupOutputBuffer(), UnPackAndMerge(), UnPackHitStatDoubleMap(), and ~G4MPIscorerMerger().
|
private |
Definition at line 97 of file G4MPIscorerMerger.hh.
Referenced by DestroyBuffer(), Pack(), Send(), SetupOutputBuffer(), UnPackAndMerge(), and UnPackHitStatDoubleMap().
|
private |
Definition at line 96 of file G4MPIscorerMerger.hh.
Referenced by DestroyBuffer(), Pack(), Receive(), Send(), SetupOutputBuffer(), UnPackAndMerge(), and UnPackHitStatDoubleMap().
|
private |
Definition at line 99 of file G4MPIscorerMerger.hh.
Referenced by DestroyBuffer(), Receive(), Send(), and ~G4MPIscorerMerger().
|
private |
Definition at line 100 of file G4MPIscorerMerger.hh.
Referenced by Receive(), Send(), and SetScoringManager().
|
private |
Definition at line 104 of file G4MPIscorerMerger.hh.
Referenced by Merge(), Pack(), SetVerbosity(), and UnPackHitStatDoubleMap().