ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4RootMpiPNtupleManager Class Reference

#include <geant4/tree/geant4-10.6-release/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiPNtupleManager.hh>

+ Inheritance diagram for G4RootMpiPNtupleManager:
+ Collaboration diagram for G4RootMpiPNtupleManager:

Public Member Functions

 G4RootMpiPNtupleManager (const G4AnalysisManagerState &state, tools::impi *impi, G4int mpiRank, G4int destinationRank)
 
 ~G4RootMpiPNtupleManager ()
 
template<>
G4bool FillNtupleTColumn (G4int ntupleId, G4int columnId, const std::string &value)
 
- Public Member Functions inherited from G4BaseNtupleManager
 G4BaseNtupleManager (const G4AnalysisManagerState &state)
 
virtual ~G4BaseNtupleManager ()
 
 G4BaseNtupleManager (const G4BaseNtupleManager &rhs)=delete
 
G4BaseNtupleManageroperator= (const G4BaseNtupleManager &rhs)=delete
 
- Public Member Functions inherited from G4VNtupleManager
 G4VNtupleManager (const G4AnalysisManagerState &state)
 
virtual ~G4VNtupleManager ()
 
 G4VNtupleManager (const G4VNtupleManager &rhs)=delete
 
G4VNtupleManageroperator= (const G4VNtupleManager &rhs)=delete
 
- Public Member Functions inherited from G4BaseAnalysisManager
 G4BaseAnalysisManager (const G4AnalysisManagerState &state)
 
virtual ~G4BaseAnalysisManager ()
 
G4bool SetFirstId (G4int firstId)
 
void SetLockFirstId (G4bool lockFirstId)
 
G4int GetFirstId () const
 

Private Types

enum  G4PNtupleCreateMode
 

Private Member Functions

void SetNtupleDirectory (tools::wroot::directory *directory)
 
void SetFileManager (std::shared_ptr< G4RootFileManager > fileManager)
 
void CreateNtuple (G4RootMpiPNtupleDescription *ntupleDescription)
 
void CreateNtuplesFromBooking ()
 
virtual G4int CreateNtuple (const G4String &name, const G4String &title) final
 
virtual G4int CreateNtupleIColumn (G4int ntupleId, const G4String &name, std::vector< int > *vector) final
 
virtual G4int CreateNtupleFColumn (G4int ntupleId, const G4String &name, std::vector< float > *vector) final
 
virtual G4int CreateNtupleDColumn (G4int ntupleId, const G4String &name, std::vector< double > *vector) final
 
virtual G4int CreateNtupleSColumn (G4int ntupleId, const G4String &name) final
 
virtual void FinishNtuple (G4int ntupleId) final
 
virtual G4bool FillNtupleIColumn (G4int ntupleId, G4int columnId, G4int value) final
 
virtual G4bool FillNtupleFColumn (G4int ntupleId, G4int columnId, G4float value) final
 
virtual G4bool FillNtupleDColumn (G4int ntupleId, G4int columnId, G4double value) final
 
virtual G4bool FillNtupleSColumn (G4int ntupleId, G4int columnId, const G4String &value) final
 
virtual G4bool AddNtupleRow (G4int ntupleId) final
 
virtual G4bool Merge () final
 
virtual G4bool Reset (G4bool deleteNtuple) final
 
virtual void SetActivation (G4bool activation) final
 
virtual void SetActivation (G4int ntupleId, G4bool activation) final
 
virtual G4bool GetActivation (G4int ntupleId) const final
 
virtual G4bool IsEmpty () const final
 
virtual G4int GetNofNtuples () const final
 
virtual G4int GetNofNtupleBookings () const final
 
const std::vector
< G4RootMpiPNtupleDescription * > & 
GetNtupleDescriptionVector () const
 
unsigned int GetBasketSize () const
 
G4RootMpiPNtupleDescriptionGetNtupleDescriptionInFunction (G4int id, G4String function, G4bool warn=true) const
 
tools::wroot::base_pntuple * GetNtupleInFunction (G4int id, G4String function, G4bool warn=true) const
 
template<typename T >
G4int CreateNtupleTColumn (G4int ntupleId, const G4String &name, std::vector< T > *vector)
 
template<typename T >
G4int CreateNtupleTColumn (const G4String &name, std::vector< T > *vector)
 
template<typename T >
G4bool FillNtupleTColumn (G4int ntupleId, G4int columnId, const T &value)
 

Private Attributes

std::shared_ptr
< G4RootFileManager
fFileManager
 
tools::wroot::directory * fNtupleDirectory
 
std::vector
< G4RootMpiPNtupleDescription * > 
fNtupleDescriptionVector
 
std::vector
< tools::wroot::impi_ntuple * > 
fNtupleVector
 
tools::impi * fImpi
 
G4int fMpiRank
 
G4int fDestinationRank
 

Friends

class G4RootMpiAnalysisManager
 
class G4RootAnalysisManager
 
class G4RootNtupleManager
 

Additional Inherited Members

- Protected Member Functions inherited from G4BaseNtupleManager
virtual G4int CreateNtupleIColumn (const G4String &name, std::vector< int > *vector) final
 
virtual G4int CreateNtupleFColumn (const G4String &name, std::vector< float > *vector) final
 
virtual G4int CreateNtupleDColumn (const G4String &name, std::vector< double > *vector) final
 
virtual G4int CreateNtupleSColumn (const G4String &name)
 
virtual void FinishNtuple () final
 
virtual G4bool SetFirstNtupleColumnId (G4int firstId) final
 
G4int GetFirstNtupleColumnId () const final
 
virtual G4bool FillNtupleIColumn (G4int id, G4int value) final
 
virtual G4bool FillNtupleFColumn (G4int id, G4float value) final
 
virtual G4bool FillNtupleDColumn (G4int id, G4double value) final
 
virtual G4bool FillNtupleSColumn (G4int id, const G4String &value) final
 
virtual G4bool AddNtupleRow () final
 
- Protected Attributes inherited from G4BaseNtupleManager
G4int fFirstNtupleColumnId
 
G4bool fLockFirstNtupleColumnId
 

Detailed Description

Definition at line 58 of file G4RootMpiPNtupleManager.hh.

View newest version in sPHENIX GitHub at line 58 of file G4RootMpiPNtupleManager.hh

Member Enumeration Documentation

Definition at line 70 of file G4RootMpiPNtupleManager.hh.

View newest version in sPHENIX GitHub at line 70 of file G4RootMpiPNtupleManager.hh

Constructor & Destructor Documentation

G4RootMpiPNtupleManager::G4RootMpiPNtupleManager ( const G4AnalysisManagerState state,
tools::impi *  impi,
G4int  mpiRank,
G4int  destinationRank 
)
explicit

Definition at line 41 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 41 of file G4RootMpiPNtupleManager.cc

G4RootMpiPNtupleManager::~G4RootMpiPNtupleManager ( )

Definition at line 53 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 53 of file G4RootMpiPNtupleManager.cc

References fNtupleDescriptionVector.

Member Function Documentation

G4bool G4RootMpiPNtupleManager::AddNtupleRow ( G4int  ntupleId)
finalprivatevirtual

Implements G4BaseNtupleManager.

Definition at line 369 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 369 of file G4RootMpiPNtupleManager.cc

References fImpi, G4BaseAnalysisManager::fState, G4Exception(), GetActivation(), G4AnalysisManagerState::GetIsActivation(), GetNtupleDescriptionInFunction(), G4AnalysisManagerState::GetVerboseL3(), G4AnalysisManagerState::GetVerboseL4(), JustWarning, kTAG_NTUPLE, and G4AnalysisVerbose::Message().

+ Here is the call graph for this function:

void G4RootMpiPNtupleManager::CreateNtuple ( G4RootMpiPNtupleDescription ntupleDescription)
private

Definition at line 109 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 109 of file G4RootMpiPNtupleManager.cc

References G4RootMpiPNtupleDescription::fBasePNtuple, fDestinationRank, G4RootMpiPNtupleDescription::fImpi, fImpi, G4RootMpiPNtupleDescription::fIsNtupleOwner, fMpiRank, G4RootMpiPNtupleDescription::fNtuple, G4RootMpiPNtupleDescription::fNtupleBooking, fNtupleVector, G4BaseAnalysisManager::fState, G4cerr, G4cout, G4endl, G4AnalysisManagerState::GetVerboseL2(), G4AnalysisManagerState::GetVerboseL3(), G4AnalysisManagerState::GetVerboseL4(), kTAG_NTUPLE, G4AnalysisVerbose::Message(), and ntuple.

Referenced by CreateNtuplesFromBooking().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4int G4RootMpiPNtupleManager::CreateNtuple ( const G4String name,
const G4String title 
)
finalprivatevirtual

Implements G4BaseNtupleManager.

Definition at line 274 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 274 of file G4RootMpiPNtupleManager.cc

References fDestinationRank, G4BaseAnalysisManager::fFirstId, G4BaseAnalysisManager::fLockFirstId, fNtupleDescriptionVector, G4BaseAnalysisManager::fState, G4AnalysisManagerState::GetVerboseL2(), G4AnalysisManagerState::GetVerboseL4(), and G4AnalysisVerbose::Message().

+ Here is the call graph for this function:

G4int G4RootMpiPNtupleManager::CreateNtupleDColumn ( G4int  ntupleId,
const G4String name,
std::vector< double > *  vector 
)
finalprivatevirtual

Implements G4BaseNtupleManager.

Definition at line 323 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 323 of file G4RootMpiPNtupleManager.cc

G4int G4RootMpiPNtupleManager::CreateNtupleFColumn ( G4int  ntupleId,
const G4String name,
std::vector< float > *  vector 
)
finalprivatevirtual

Implements G4BaseNtupleManager.

Definition at line 316 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 316 of file G4RootMpiPNtupleManager.cc

G4int G4RootMpiPNtupleManager::CreateNtupleIColumn ( G4int  ntupleId,
const G4String name,
std::vector< int > *  vector 
)
finalprivatevirtual

Implements G4BaseNtupleManager.

Definition at line 309 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 309 of file G4RootMpiPNtupleManager.cc

G4int G4RootMpiPNtupleManager::CreateNtupleSColumn ( G4int  ntupleId,
const G4String name 
)
finalprivatevirtual

Implements G4BaseNtupleManager.

Definition at line 330 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 330 of file G4RootMpiPNtupleManager.cc

void G4RootMpiPNtupleManager::CreateNtuplesFromBooking ( )
private

Definition at line 232 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 232 of file G4RootMpiPNtupleManager.cc

References CreateNtuple(), fNtupleDescriptionVector, fNtupleVector, G4BaseAnalysisManager::fState, G4AnalysisManagerState::GetIsActivation(), G4AnalysisManagerState::GetVerboseL3(), G4AnalysisManagerState::GetVerboseL4(), and G4AnalysisVerbose::Message().

Referenced by G4RootMpiAnalysisManager::OpenFileImpl().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<typename T >
G4int G4RootMpiPNtupleManager::CreateNtupleTColumn ( G4int  ntupleId,
const G4String name,
std::vector< T > *  vector 
)
private

Definition at line 168 of file G4RootMpiPNtupleManager.hh.

View newest version in sPHENIX GitHub at line 168 of file G4RootMpiPNtupleManager.hh

References G4BaseNtupleManager::fFirstNtupleColumnId, G4BaseNtupleManager::fLockFirstNtupleColumnId, G4BaseAnalysisManager::fState, GetNtupleDescriptionInFunction(), G4AnalysisManagerState::GetVerboseL2(), G4AnalysisManagerState::GetVerboseL4(), G4Analysis::kInvalidId, and G4AnalysisVerbose::Message().

+ Here is the call graph for this function:

template<typename T >
G4int G4RootMpiPNtupleManager::CreateNtupleTColumn ( const G4String name,
std::vector< T > *  vector 
)
private
G4bool G4RootMpiPNtupleManager::FillNtupleDColumn ( G4int  ntupleId,
G4int  columnId,
G4double  value 
)
finalprivatevirtual

Implements G4BaseNtupleManager.

Definition at line 355 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 355 of file G4RootMpiPNtupleManager.cc

G4bool G4RootMpiPNtupleManager::FillNtupleFColumn ( G4int  ntupleId,
G4int  columnId,
G4float  value 
)
finalprivatevirtual

Implements G4BaseNtupleManager.

Definition at line 348 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 348 of file G4RootMpiPNtupleManager.cc

G4bool G4RootMpiPNtupleManager::FillNtupleIColumn ( G4int  ntupleId,
G4int  columnId,
G4int  value 
)
finalprivatevirtual

Implements G4BaseNtupleManager.

Definition at line 341 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 341 of file G4RootMpiPNtupleManager.cc

G4bool G4RootMpiPNtupleManager::FillNtupleSColumn ( G4int  ntupleId,
G4int  columnId,
const G4String value 
)
finalprivatevirtual

Implements G4BaseNtupleManager.

Definition at line 362 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 362 of file G4RootMpiPNtupleManager.cc

template<typename T >
G4bool G4RootMpiPNtupleManager::FillNtupleTColumn ( G4int  ntupleId,
G4int  columnId,
const T value 
)
private

Definition at line 263 of file G4RootMpiPNtupleManager.hh.

View newest version in sPHENIX GitHub at line 263 of file G4RootMpiPNtupleManager.hh

References G4BaseNtupleManager::fFirstNtupleColumnId, G4BaseAnalysisManager::fState, G4cout, G4endl, G4Exception(), GetActivation(), G4AnalysisManagerState::GetIsActivation(), GetNtupleInFunction(), G4AnalysisManagerState::GetVerboseL4(), JustWarning, G4AnalysisVerbose::Message(), and ntuple.

+ Here is the call graph for this function:

template<>
G4bool G4RootMpiPNtupleManager::FillNtupleTColumn ( G4int  ntupleId,
G4int  columnId,
const std::string &  value 
)
inline

Definition at line 206 of file G4RootMpiPNtupleManager.hh.

View newest version in sPHENIX GitHub at line 206 of file G4RootMpiPNtupleManager.hh

References G4BaseNtupleManager::fFirstNtupleColumnId, G4BaseAnalysisManager::fState, G4cout, G4endl, G4Exception(), GetActivation(), G4AnalysisManagerState::GetIsActivation(), GetNtupleInFunction(), G4AnalysisManagerState::GetVerboseL4(), JustWarning, G4AnalysisVerbose::Message(), and ntuple.

+ Here is the call graph for this function:

void G4RootMpiPNtupleManager::FinishNtuple ( G4int  ntupleId)
finalprivatevirtual

Implements G4BaseNtupleManager.

Definition at line 337 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 337 of file G4RootMpiPNtupleManager.cc

G4bool G4RootMpiPNtupleManager::GetActivation ( G4int  ntupleId) const
finalprivatevirtual

Implements G4VNtupleManager.

Definition at line 502 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 502 of file G4RootMpiPNtupleManager.cc

References GetNtupleDescriptionInFunction().

Referenced by AddNtupleRow(), and FillNtupleTColumn().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

unsigned int G4RootMpiPNtupleManager::GetBasketSize ( ) const
private

Definition at line 530 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 530 of file G4RootMpiPNtupleManager.cc

References fFileManager, G4Exception(), and JustWarning.

+ Here is the call graph for this function:

G4int G4RootMpiPNtupleManager::GetNofNtupleBookings ( ) const
finalprivatevirtual

Implements G4VNtupleManager.

Definition at line 518 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 518 of file G4RootMpiPNtupleManager.cc

References fNtupleDescriptionVector.

G4int G4RootMpiPNtupleManager::GetNofNtuples ( ) const
finalprivatevirtual

Implements G4VNtupleManager.

Definition at line 512 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 512 of file G4RootMpiPNtupleManager.cc

References fNtupleVector.

G4RootMpiPNtupleDescription * G4RootMpiPNtupleManager::GetNtupleDescriptionInFunction ( G4int  id,
G4String  function,
G4bool  warn = true 
) const
private

Definition at line 66 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 66 of file G4RootMpiPNtupleManager.cc

References G4BaseAnalysisManager::fFirstId, fNtupleDescriptionVector, G4Exception(), and JustWarning.

Referenced by AddNtupleRow(), CreateNtupleTColumn(), GetActivation(), GetNtupleInFunction(), and SetActivation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const std::vector< G4RootMpiPNtupleDescription * > & G4RootMpiPNtupleManager::GetNtupleDescriptionVector ( ) const
inlineprivate

Definition at line 162 of file G4RootMpiPNtupleManager.hh.

View newest version in sPHENIX GitHub at line 162 of file G4RootMpiPNtupleManager.hh

References fNtupleDescriptionVector.

tools::wroot::base_pntuple * G4RootMpiPNtupleManager::GetNtupleInFunction ( G4int  id,
G4String  function,
G4bool  warn = true 
) const
private

Definition at line 85 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 85 of file G4RootMpiPNtupleManager.cc

References G4Exception(), GetNtupleDescriptionInFunction(), and JustWarning.

Referenced by FillNtupleTColumn().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4RootMpiPNtupleManager::IsEmpty ( ) const
finalprivatevirtual

Definition at line 524 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 524 of file G4RootMpiPNtupleManager.cc

References fNtupleDescriptionVector.

G4bool G4RootMpiPNtupleManager::Merge ( )
finalprivatevirtual

Definition at line 412 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 412 of file G4RootMpiPNtupleManager.cc

References fImpi, fNtupleDescriptionVector, G4BaseAnalysisManager::fState, G4cout, G4endl, G4Exception(), G4AnalysisManagerState::GetVerboseL3(), G4AnalysisManagerState::GetVerboseL4(), JustWarning, kTAG_NTUPLE, and G4AnalysisVerbose::Message().

Referenced by G4RootMpiAnalysisManager::WriteNtuple().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4RootMpiPNtupleManager::Reset ( G4bool  deleteNtuple)
finalprivatevirtual

Definition at line 466 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 466 of file G4RootMpiPNtupleManager.cc

References fNtupleDescriptionVector, and fNtupleVector.

Referenced by G4RootMpiAnalysisManager::Reset().

+ Here is the caller graph for this function:

void G4RootMpiPNtupleManager::SetActivation ( G4bool  activation)
finalprivatevirtual

Implements G4VNtupleManager.

Definition at line 482 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 482 of file G4RootMpiPNtupleManager.cc

References fNtupleDescriptionVector.

void G4RootMpiPNtupleManager::SetActivation ( G4int  ntupleId,
G4bool  activation 
)
finalprivatevirtual

Implements G4VNtupleManager.

Definition at line 492 of file G4RootMpiPNtupleManager.cc.

View newest version in sPHENIX GitHub at line 492 of file G4RootMpiPNtupleManager.cc

References GetNtupleDescriptionInFunction().

+ Here is the call graph for this function:

void G4RootMpiPNtupleManager::SetFileManager ( std::shared_ptr< G4RootFileManager fileManager)
inlineprivate

Definition at line 158 of file G4RootMpiPNtupleManager.hh.

View newest version in sPHENIX GitHub at line 158 of file G4RootMpiPNtupleManager.hh

References fFileManager.

void G4RootMpiPNtupleManager::SetNtupleDirectory ( tools::wroot::directory *  directory)
inlineprivate

Definition at line 154 of file G4RootMpiPNtupleManager.hh.

View newest version in sPHENIX GitHub at line 154 of file G4RootMpiPNtupleManager.hh

Friends And Related Function Documentation

friend class G4RootAnalysisManager
friend

Definition at line 61 of file G4RootMpiPNtupleManager.hh.

View newest version in sPHENIX GitHub at line 61 of file G4RootMpiPNtupleManager.hh

friend class G4RootMpiAnalysisManager
friend

Definition at line 60 of file G4RootMpiPNtupleManager.hh.

View newest version in sPHENIX GitHub at line 60 of file G4RootMpiPNtupleManager.hh

friend class G4RootNtupleManager
friend

Definition at line 62 of file G4RootMpiPNtupleManager.hh.

View newest version in sPHENIX GitHub at line 62 of file G4RootMpiPNtupleManager.hh

Member Data Documentation

G4int G4RootMpiPNtupleManager::fDestinationRank
private

Definition at line 148 of file G4RootMpiPNtupleManager.hh.

View newest version in sPHENIX GitHub at line 148 of file G4RootMpiPNtupleManager.hh

Referenced by CreateNtuple().

std::shared_ptr<G4RootFileManager> G4RootMpiPNtupleManager::fFileManager
private

Definition at line 142 of file G4RootMpiPNtupleManager.hh.

View newest version in sPHENIX GitHub at line 142 of file G4RootMpiPNtupleManager.hh

Referenced by GetBasketSize(), and SetFileManager().

tools::impi* G4RootMpiPNtupleManager::fImpi
private

Definition at line 146 of file G4RootMpiPNtupleManager.hh.

View newest version in sPHENIX GitHub at line 146 of file G4RootMpiPNtupleManager.hh

Referenced by AddNtupleRow(), CreateNtuple(), and Merge().

G4int G4RootMpiPNtupleManager::fMpiRank
private

Definition at line 147 of file G4RootMpiPNtupleManager.hh.

View newest version in sPHENIX GitHub at line 147 of file G4RootMpiPNtupleManager.hh

Referenced by CreateNtuple().

std::vector<G4RootMpiPNtupleDescription*> G4RootMpiPNtupleManager::fNtupleDescriptionVector
private
tools::wroot::directory* G4RootMpiPNtupleManager::fNtupleDirectory
private

Definition at line 143 of file G4RootMpiPNtupleManager.hh.

View newest version in sPHENIX GitHub at line 143 of file G4RootMpiPNtupleManager.hh

std::vector<tools::wroot::impi_ntuple*> G4RootMpiPNtupleManager::fNtupleVector
private

Definition at line 145 of file G4RootMpiPNtupleManager.hh.

View newest version in sPHENIX GitHub at line 145 of file G4RootMpiPNtupleManager.hh

Referenced by CreateNtuple(), CreateNtuplesFromBooking(), GetNofNtuples(), and Reset().


The documentation for this class was generated from the following files: