Rosetta 3.4
Public Member Functions | Protected Member Functions
protocols::jd2::archive::AbstractArchiveBase Class Reference

Tags used to tag messeges sent by MPI functions used to decide whether a slave is requesting a new job id or flagging as job as being a bad input. More...

#include <ArchiveBase.hh>

Inheritance diagram for protocols::jd2::archive::AbstractArchiveBase:
Inheritance graph
[legend]
Collaboration diagram for protocols::jd2::archive::AbstractArchiveBase:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 AbstractArchiveBase (ArchiveManagerAP ptr)
 AbstractArchiveBase ()
virtual bool finished () const =0
 is archive converged ?
virtual bool still_interested (jd2::archive::Batch const &) const
 old-batches might be outdated and should not be computed anymore return true for this query if this is the case for old_batch
virtual void generate_batch ()=0
 create a new batch with manager().start_new_batch() and manager().finalize_batch();
virtual void idle ()=0
 do some computations on archive that can be done while we are waiting
virtual void read_structures (core::io::silent::SilentFileData &returned_decoys, Batch const &batch)=0
 read 'returned_decoys' from 'batch' into archive.
virtual void save_to_file (std::string suffix="")=0
 save archive to file .. you can put 'suffix' at end of dirname to save other snapshots than the 'current'
virtual void save_status (std::ostream &) const =0
virtual bool restore_from_file ()=0
 restore archive
virtual void init_from_decoy_set (core::io::silent::SilentFileData const &sfd)=0
void set_name (std::string const &set)
 set name of archive ( used also for save_to_file and restore_from_file )
std::string const & name () const
ArchiveManagermanager ()
 access to the ArchiveManager (control of batches)
virtual void set_manager (ArchiveManagerAP manager)

Protected Member Functions

ArchiveManagerAP manager_ptr ()

Detailed Description

Tags used to tag messeges sent by MPI functions used to decide whether a slave is requesting a new job id or flagging as job as being a bad input.

This job distributor is meant for running jobs where the machine you are using has a large number of processors, the number of jobs is much greater than the number of processors, or the runtimes of the individual jobs could vary greatly. It dedicates the head node (whichever processor gets processor rank #0) to handling job requests from the slave nodes (all nonzero ranks). Unlike the MPIWorkPartitionJobDistributor, this JD will not work at all without MPI and the implementations of all but the interface functions have been put inside of ifdef directives. Generally each function has a master and slave version, and the interface functions call one or the other depending on processor rank.


Constructor & Destructor Documentation

protocols::jd2::archive::AbstractArchiveBase::AbstractArchiveBase ( ArchiveManagerAP  ptr) [inline]
protocols::jd2::archive::AbstractArchiveBase::AbstractArchiveBase ( ) [inline]

Member Function Documentation

virtual bool protocols::jd2::archive::AbstractArchiveBase::finished ( ) const [pure virtual]
virtual void protocols::jd2::archive::AbstractArchiveBase::generate_batch ( ) [pure virtual]
virtual void protocols::jd2::archive::AbstractArchiveBase::idle ( ) [pure virtual]

do some computations on archive that can be done while we are waiting

Implemented in protocols::abinitio::IterativeAbrelax, protocols::abinitio::IterativeBase, and protocols::jd2::archive::ArchiveBase.

virtual void protocols::jd2::archive::AbstractArchiveBase::init_from_decoy_set ( core::io::silent::SilentFileData const &  sfd) [pure virtual]
ArchiveManager& protocols::jd2::archive::AbstractArchiveBase::manager ( ) [inline]
ArchiveManagerAP protocols::jd2::archive::AbstractArchiveBase::manager_ptr ( ) [inline, protected]
std::string const& protocols::jd2::archive::AbstractArchiveBase::name ( ) const [inline]
virtual void protocols::jd2::archive::AbstractArchiveBase::read_structures ( core::io::silent::SilentFileData returned_decoys,
Batch const &  batch 
) [pure virtual]
virtual bool protocols::jd2::archive::AbstractArchiveBase::restore_from_file ( ) [pure virtual]
virtual void protocols::jd2::archive::AbstractArchiveBase::save_status ( std::ostream &  ) const [pure virtual]
virtual void protocols::jd2::archive::AbstractArchiveBase::save_to_file ( std::string  suffix = "") [pure virtual]

save archive to file .. you can put 'suffix' at end of dirname to save other snapshots than the 'current'

Implemented in protocols::abinitio::IterativeAbrelax, and protocols::jd2::archive::ArchiveBase.

virtual void protocols::jd2::archive::AbstractArchiveBase::set_manager ( ArchiveManagerAP  manager) [inline, virtual]
void protocols::jd2::archive::AbstractArchiveBase::set_name ( std::string const &  set) [inline]

set name of archive ( used also for save_to_file and restore_from_file )

Referenced by protocols::abinitio::IterativeBase::IterativeBase().

virtual bool protocols::jd2::archive::AbstractArchiveBase::still_interested ( jd2::archive::Batch const &  ) const [inline, virtual]

old-batches might be outdated and should not be computed anymore return true for this query if this is the case for old_batch

Reimplemented in protocols::abinitio::IterativeAbrelax, and protocols::abinitio::IterativeBase.

Referenced by protocols::jd2::archive::ArchiveBase::count_structure().


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines