votca 2024-dev
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
votca::xtp::ParallelXJobCalc< JobContainer > Class Template Referenceabstract

#include <parallelxjobcalc.h>

Inheritance diagram for votca::xtp::ParallelXJobCalc< JobContainer >:
Inheritance graph
[legend]
Collaboration diagram for votca::xtp::ParallelXJobCalc< JobContainer >:
Collaboration graph
[legend]

Classes

class  JobOperator
 

Public Types

using Job = typename JobContainer::value_type
 
using Result = typename Job::JobResult
 

Public Member Functions

 ParallelXJobCalc ()=default
 
 ~ParallelXJobCalc () override=default
 
std::string Identify () const override=0
 Calculator name.
 
void ParseOptions (const tools::Property &opt) final
 
bool Evaluate (const Topology &top) final
 
virtual void CustomizeLogger (QMThread &thread)
 
virtual Result EvalJob (const Topology &top, Job &job, QMThread &thread)=0
 
void LockCout ()
 
void UnlockCout ()
 
void LockLog ()
 
void UnlockLog ()
 
- Public Member Functions inherited from votca::xtp::JobCalculator
 JobCalculator ()=default
 
 ~JobCalculator () override=default
 
std::string Identify () const override=0
 Calculator name.
 
std::string Package () const final
 Package name.
 
bool EvaluateFrame (const Topology &top)
 
void Initialize (const tools::Property &opt) final
 Initializes a calculator from an XML file with options.
 
virtual void WriteJobFile (const Topology &top)=0
 
virtual void ReadJobFile (Topology &top)=0
 
void setOpenMPThreads (Index ompthreads)
 
void setProgObserver (ProgObserver< std::vector< Job > > *obs)
 
- Public Member Functions inherited from votca::tools::Calculator
 Calculator ()=default
 
virtual ~Calculator ()=default
 
virtual std::string Identify () const =0
 Calculator name.
 
virtual std::string Package () const =0
 Package name.
 
virtual void Initialize (const Property &user_options)=0
 Initializes a calculator from an XML file with options.
 
void setnThreads (Index nThreads)
 Sets number of threads to use.
 

Protected Member Functions

virtual void ParseSpecificOptions (const tools::Property &options)=0
 
tools::Property UpdateDFTOptions (const tools::Property &options)
 
tools::Property UpdateGWBSEOptions (const tools::Property &options)
 
virtual void ParseOptions (const tools::Property &opt)=0
 
virtual bool Evaluate (const Topology &top)=0
 

Protected Attributes

JobContainer XJobs_
 
tools::Mutex coutMutex_
 
tools::Mutex logMutex_
 
std::string mapfile_ = ""
 
std::string jobfile_ = ""
 
- Protected Attributes inherited from votca::xtp::JobCalculator
Index openmp_threads_
 
ProgObserver< std::vector< Job > > * progObs_
 
- Protected Attributes inherited from votca::tools::Calculator
Index nThreads_
 
bool maverick_
 

Private Member Functions

void ParseCommonOptions (const tools::Property &options)
 

Detailed Description

template<typename JobContainer>
class votca::xtp::ParallelXJobCalc< JobContainer >

Definition at line 50 of file parallelxjobcalc.h.

Member Typedef Documentation

◆ Job

template<typename JobContainer >
using votca::xtp::ParallelXJobCalc< JobContainer >::Job = typename JobContainer::value_type

Definition at line 54 of file parallelxjobcalc.h.

◆ Result

template<typename JobContainer >
using votca::xtp::ParallelXJobCalc< JobContainer >::Result = typename Job::JobResult

Definition at line 55 of file parallelxjobcalc.h.

Constructor & Destructor Documentation

◆ ParallelXJobCalc()

template<typename JobContainer >
votca::xtp::ParallelXJobCalc< JobContainer >::ParallelXJobCalc ( )
default

◆ ~ParallelXJobCalc()

template<typename JobContainer >
votca::xtp::ParallelXJobCalc< JobContainer >::~ParallelXJobCalc ( )
overridedefault

Member Function Documentation

◆ CustomizeLogger()

template<typename JobContainer >
void votca::xtp::ParallelXJobCalc< JobContainer >::CustomizeLogger ( QMThread thread)
virtual

Definition at line 118 of file parallelxjobcalc.cc.

◆ EvalJob()

template<typename JobContainer >
virtual Result votca::xtp::ParallelXJobCalc< JobContainer >::EvalJob ( const Topology top,
Job job,
QMThread thread 
)
pure virtual

◆ Evaluate()

template<typename JobContainer >
bool votca::xtp::ParallelXJobCalc< JobContainer >::Evaluate ( const Topology top)
finalvirtual

Implements votca::xtp::JobCalculator.

Definition at line 36 of file parallelxjobcalc.cc.

◆ Identify()

template<typename JobContainer >
std::string votca::xtp::ParallelXJobCalc< JobContainer >::Identify ( ) const
overridepure virtual

Calculator name.

This name is used to register a calculator in a Factory It the name of the XML file with the default calculator options stored in VOTCASHARE

Returns
calculator name

Implements votca::xtp::JobCalculator.

Implemented in votca::xtp::EQM, votca::xtp::IEXCITON, votca::xtp::IQM, and votca::xtp::QMMM.

◆ LockCout()

template<typename JobContainer >
void votca::xtp::ParallelXJobCalc< JobContainer >::LockCout ( )
inline

Definition at line 71 of file parallelxjobcalc.h.

◆ LockLog()

template<typename JobContainer >
void votca::xtp::ParallelXJobCalc< JobContainer >::LockLog ( )
inline

Definition at line 73 of file parallelxjobcalc.h.

◆ ParseCommonOptions()

template<typename JobContainer >
void votca::xtp::ParallelXJobCalc< JobContainer >::ParseCommonOptions ( const tools::Property options)
private

Definition at line 104 of file parallelxjobcalc.cc.

◆ ParseOptions()

template<typename JobContainer >
void votca::xtp::ParallelXJobCalc< JobContainer >::ParseOptions ( const tools::Property opt)
inlinefinalvirtual

Implements votca::xtp::JobCalculator.

Definition at line 62 of file parallelxjobcalc.h.

◆ ParseSpecificOptions()

template<typename JobContainer >
virtual void votca::xtp::ParallelXJobCalc< JobContainer >::ParseSpecificOptions ( const tools::Property options)
protectedpure virtual

◆ UnlockCout()

template<typename JobContainer >
void votca::xtp::ParallelXJobCalc< JobContainer >::UnlockCout ( )
inline

Definition at line 72 of file parallelxjobcalc.h.

◆ UnlockLog()

template<typename JobContainer >
void votca::xtp::ParallelXJobCalc< JobContainer >::UnlockLog ( )
inline

Definition at line 74 of file parallelxjobcalc.h.

◆ UpdateDFTOptions()

template<typename JobContainer >
tools::Property votca::xtp::ParallelXJobCalc< JobContainer >::UpdateDFTOptions ( const tools::Property options)
protected

◆ UpdateGWBSEOptions()

template<typename JobContainer >
tools::Property votca::xtp::ParallelXJobCalc< JobContainer >::UpdateGWBSEOptions ( const tools::Property options)
protected

Member Data Documentation

◆ coutMutex_

template<typename JobContainer >
tools::Mutex votca::xtp::ParallelXJobCalc< JobContainer >::coutMutex_
protected

Definition at line 106 of file parallelxjobcalc.h.

◆ jobfile_

template<typename JobContainer >
std::string votca::xtp::ParallelXJobCalc< JobContainer >::jobfile_ = ""
protected

Definition at line 109 of file parallelxjobcalc.h.

◆ logMutex_

template<typename JobContainer >
tools::Mutex votca::xtp::ParallelXJobCalc< JobContainer >::logMutex_
protected

Definition at line 107 of file parallelxjobcalc.h.

◆ mapfile_

template<typename JobContainer >
std::string votca::xtp::ParallelXJobCalc< JobContainer >::mapfile_ = ""
protected

Definition at line 108 of file parallelxjobcalc.h.

◆ XJobs_

template<typename JobContainer >
JobContainer votca::xtp::ParallelXJobCalc< JobContainer >::XJobs_
protected

Definition at line 105 of file parallelxjobcalc.h.


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