PlasCom2  1.0
XPACC Multi-physics simluation application
parallelprogram Class Reference

Detailed Description

Definition at line 134 of file PCPPProgram.H.

#include <PCPPProgram.H>

Public Member Functions

 parallelprogram ()
 Default constructor. More...
 
 parallelprogram (int nargs, char **args)
 Constructor designed to take all commandline args. More...
 
 parallelprogram (int nargs, char **args, MPI_Comm inMPICommunicator)
 Constructor designed to take all commandline args and an MPI Communicator. More...
 
 parallelprogram (commandline &comline, CommunicatorType &incomm)
 Constructor designed to take a commandline object, and communicator object. More...
 
virtual int Initialize ()
 Populates native data structures from commandline. More...
 
virtual ~parallelprogram ()
 Destructor. More...
 
virtual int Run ()
 This function implements the main function executed by the program. More...
 
virtual int Finalize ()
 Finalizes the global object, and it's profiler object. More...
 
- Public Member Functions inherited from mpiprogram< ComLineType >
 mpiprogram ()
 
 mpiprogram (mpiglobal &inglob)
 
 mpiprogram (ComLineType &incom)
 
 mpiprogram (int narg, char **args)
 
 mpiprogram (ComLineType &incom, mpiglobal &inglob)
 
 mpiprogram (int narg, char **args, mpiglobal &inglob)
 
 mpiprogram (int narg, char **args, MPI_Comm &inComm)
 
ComLineType & CommandLine ()
 
virtual ~mpiprogram ()
 
- Public Member Functions inherited from mpiglobal
 mpiglobal ()
 
 mpiglobal (parallelglobal &inglob)
 
 mpiglobal (mpiglobal &pglobin)
 
 mpiglobal (const std::string &name)
 
 mpiglobal (const std::string &name, unsigned int id)
 
 mpiglobal (int narg, char **args)
 
 mpiglobal (int narg, char **args, CommunicatorType &incomm)
 
 mpiglobal (int narg, char **args, MPI_Comm &incomm)
 
int NumProc ()
 
- Public Member Functions inherited from ParallelGlobalObj< CommunicatorType, StackType, ErrorType, ProfilerType >
 ParallelGlobalObj ()
 
 ParallelGlobalObj (GlobalType &inglob)
 
 ParallelGlobalObj (ParallelGlobalObj< CommunicatorType, StackType, ErrorType, ProfilerType > &pglobin)
 
 ParallelGlobalObj (const std::string &name)
 
 ParallelGlobalObj (const std::string &name, unsigned int id)
 
 ParallelGlobalObj (int narg, char **args)
 
 ParallelGlobalObj (int narg, char **args, CommunicatorType &incomm)
 
virtual int Init (const std::string &name, CommunicatorType &incomm)
 
virtual int Init (const std::string &name)
 
virtual int Init (const std::string &name, unsigned int id)
 
virtual int Init (int narg, char **args)
 
bool ProfilingBarriers ()
 
void EnableProfilingBarriers ()
 
void DisableProfilingBarriers ()
 
virtual void FunctionEntry (const StackType &stackentry)
 FunctionEntry updates the Stack as well as the Profiler. More...
 
virtual void FunctionExit (const StackType &stackentry)
 FunctionExit updates the Stack as well as the Profiler. More...
 
virtual int Rank ()
 
virtual int NProc ()
 
virtual CommunicatorTypeCommunicator ()
 
virtual ~ParallelGlobalObj ()
 
- Public Member Functions inherited from GlobalObj< StackType, ErrorType, ProfilerType >
 GlobalObj ()
 Default constructor. Profiling is OFF by default. More...
 
 GlobalObj (int narg, char **args)
 Default constructor. More...
 
 GlobalObj (GlobalObj< StackType, ErrorType, ProfilerType > &globin)
 Constructor with args. More...
 
 GlobalObj (const StackType &name)
 Constructor with args. More...
 
 GlobalObj (const StackType &name, int id)
 Constructor with args. More...
 
virtual int Init (const StackType &name)
 Initializes the global object and it's profiler object /// Initializes the global object and it's profiler object Profiling is ON by default if Init is invoked. More...
 
virtual int Init (const StackType &name, unsigned int id)
 Initializes the global object and it's profiler object Profiling is ON by default if Init is invoked. More...
 
virtual bool WriteProfiles ()
 Get state of enablement for writing profile files. More...
 
virtual bool WriteProfiles (bool yn)
 Enable or disable profile file writing. More...
 
virtual bool Profiling ()
 Get profiling state. More...
 
virtual bool Profiling (bool yn)
 Enable or disable profiling. More...
 
virtual void Report (std::ostream &ReportStream)
 Creates the final profiling report on the specified stream. More...
 
virtual void Register (const StackType &stackentry)
 Register will push to the Stack only. More...
 
virtual void DeRegister (const StackType &stackentry)
 DeRegister will pop from the stack only. More...
 
virtual void FunctionExitAll ()
 FunctionExitAll exits all from the Profiler only. More...
 
virtual void Error (const ErrorType &error)
 Pushes an error onto the error stack. More...
 
virtual void DumpErrors (std::ostream &Ostr)
 Dumps the errors themselves to the indicated stream. More...
 
virtual void DumpStack (std::ostream &Ostr)
 Dumps the code construct statck to the indicated stream. More...
 
virtual void DumpProfile (std::ostream &Ostr)
 Dumps the timing profile to the indicated stream. More...
 
bool DebugStreamReady ()
 Checks debug stream. More...
 
void SetDebugStream (std::ostream &dbstream)
 Sets the debug stream object. More...
 
std::ostream & DebugStream ()
 Gets the debug stream object. More...
 
std::ostream * DebugStreamPtr ()
 Gets the debug stream pointer. More...
 
bool ErrStreamReady ()
 Checks error stream. More...
 
void SetErrStream (std::ostream &dbstream)
 Sets the error stream object. More...
 
std::ostream & ErrStream ()
 Gets the error stream object. More...
 
std::ostream * ErrStreamPtr ()
 Gets the error stream pointer. More...
 
bool OutStreamReady ()
 Checks out stream. More...
 
void SetOutStream (std::ostream &outstream)
 Sets the stdout stream object. More...
 
std::ostream & OutStream ()
 Gets the stdout stream object. More...
 
std::ostream * OutStreamPtr ()
 Gets the stdout stream pointer. More...
 
void UnsetOutStream ()
 Sets outstream to NULL. More...
 
bool LogStreamReady ()
 Checks log stream. More...
 
void SetLogStream (std::ostream &logstream)
 Sets the stdout stream object. More...
 
std::ostream & LogStream ()
 Gets the log stream object. More...
 
std::ostream * LogStreamPtr ()
 Gets the log stream pointer. More...
 
void SetProfiler (ProfilerType &profiler)
 Sets the Profiler object. More...
 
virtual void SetName (const std::string &name)
 
virtual void ReName (const std::string &name)
 
virtual const std::string & Name ()
 
ProfilerTypeProfiler ()
 Gets the debug stream object. More...
 
void SetDebugLevel (unsigned char l)
 Sets the level of debugging. More...
 
unsigned char DebugLevel ()
 Returns the debugging level. More...
 
void SetVerbLevel (unsigned char l)
 
unsigned char VerbLevel ()
 Returns the verbosity level. More...
 
void SetLogLevel (unsigned char l)
 
unsigned char LogLevel ()
 Returns the verbosity level. More...
 
void DeSyncIO ()
 DeSync IO - relinquish control over IO, revert to standard. More...
 
void SyncIO ()
 Syncronize IO - assume control over IO, using established streams. More...
 
virtual int ForceOut (const std::string &outstr, unsigned char inlev=1)
 
virtual int StdOut (const std::string &outstr, unsigned char inlev=1)
 
virtual int ErrOut (const std::string &outstr)
 
virtual int DebugOut (const std::string &outstr, int inlev=1)
 
virtual int LogOut (const std::string &outstr, int inlev=0)
 
virtual ~GlobalObj ()
 Destructor. More...
 

Protected Attributes

std::string outFileName
 Name of file for output. More...
 
int verblevel
 Verbosity level. More...
 
std::ofstream * outFilePtr
 Output file stream object for output. More...
 
int ndiv
 Number of partitions for domain. More...
 
int numProcessors
 Number of processors. More...
 
int numThreads
 Number of threads. More...
 
- Protected Attributes inherited from mpiprogram< ComLineType >
ComLineType _command_line
 
- Protected Attributes inherited from ParallelGlobalObj< CommunicatorType, StackType, ErrorType, ProfilerType >
bool profilingBarrier
 
CommunicatorType globalCommunicator
 
- Protected Attributes inherited from GlobalObj< StackType, ErrorType, ProfilerType >
std::ostream * _DebugStream
 DebugStream is useful for parallel programs that cannot stream debugging information to the screen. More...
 
std::ostream * _OutStream
 
std::ostream * _LogStream
 
std::ostream * _ErrStream
 
ProfilerType_Profiler
 This is a placeholder for a generic profiling tool. More...
 
Inheritance diagram for parallelprogram:
Collaboration diagram for parallelprogram:

Constructor & Destructor Documentation

◆ parallelprogram() [1/4]

parallelprogram ( )
inline

Default constructor.

Definition at line 153 of file PCPPProgram.H.

◆ parallelprogram() [2/4]

parallelprogram ( int  nargs,
char **  args 
)
inline

Constructor designed to take all commandline args.

Definition at line 163 of file PCPPProgram.H.

◆ parallelprogram() [3/4]

parallelprogram ( int  nargs,
char **  args,
MPI_Comm  inMPICommunicator 
)
inline

Constructor designed to take all commandline args and an MPI Communicator.

Definition at line 173 of file PCPPProgram.H.

◆ parallelprogram() [4/4]

parallelprogram ( commandline comline,
CommunicatorType incomm 
)
inline

Constructor designed to take a commandline object, and communicator object.

Definition at line 183 of file PCPPProgram.H.

◆ ~parallelprogram()

virtual ~parallelprogram ( )
inlinevirtual

Destructor.

Definition at line 311 of file PCPPProgram.H.

Member Function Documentation

◆ Finalize()

virtual int Finalize ( )
inlinevirtual

Finalizes the global object, and it's profiler object.

Reimplemented from mpiprogram< ComLineType >.

Definition at line 325 of file PCPPProgram.H.

References mpiprogram< ComLineType >::Finalize().

Here is the call graph for this function:

◆ Initialize()

virtual int Initialize ( void  )
inlinevirtual

Populates native data structures from commandline.

Reimplemented from mpiprogram< ComLineType >.

Definition at line 194 of file PCPPProgram.H.

References ComLineObject::ErrorReport(), ComLineObject::GetOption(), mpiprogram< ComLineType >::Initialize(), ComLineObject::LongUsage(), ComLineObject::ProgramName(), and ComLineObject::ShortUsage().

Referenced by application::InitializeApplication().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Run()

virtual int Run ( )
inlinevirtual

This function implements the main function executed by the program.

Reimplemented from mpiprogram< ComLineType >.

Definition at line 324 of file PCPPProgram.H.

Referenced by application::RunApplication().

Here is the caller graph for this function:

Member Data Documentation

◆ ndiv

int ndiv
protected

Number of partitions for domain.

Definition at line 144 of file PCPPProgram.H.

◆ numProcessors

int numProcessors
protected

Number of processors.

Definition at line 146 of file PCPPProgram.H.

Referenced by application::RunMaxwellSolver(), and application::RunPlasCom2().

◆ numThreads

int numThreads
protected

Number of threads.

Definition at line 148 of file PCPPProgram.H.

Referenced by application::RunMaxwellSolver(), and application::RunPlasCom2().

◆ outFileName

std::string outFileName
protected

Name of file for output.

Definition at line 138 of file PCPPProgram.H.

◆ outFilePtr

std::ofstream* outFilePtr
protected

Output file stream object for output.

Definition at line 142 of file PCPPProgram.H.

◆ verblevel

int verblevel
protected

Verbosity level.

Definition at line 140 of file PCPPProgram.H.


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