Rosetta
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Types | Private Attributes | Static Private Attributes | Friends | List of all members
protocols::jd2::archive::ArchiveManager Class Reference

ArchiveManager is responsible for communication with JobDistributor and organization of Batches and returning decoys @detail he owns an Archive (AbstractArchiveBase) that will be handed the decoys and is asked to generate_batch() if the QUEUE_EMPTY . More...

#include <ArchiveManager.hh>

Inheritance diagram for protocols::jd2::archive::ArchiveManager:
Inheritance graph
[legend]

Public Member Functions

 ArchiveManager (core::Size archive_rank, core::Size jd_master_rank, core::Size file_buf_rank)
 ctor is protected; singleton pattern More...
 
 ~ArchiveManager () override
 
void go (ArchiveBaseOP)
 
core::Size unfinished_batches () const
 
void save_archive () override
 
bool restore_archive () override
 
- Public Member Functions inherited from protocols::jd2::archive::BaseArchiveManager
 BaseArchiveManager ()
 ctor is protected; singleton pattern More...
 
virtual ~BaseArchiveManager ()
 
virtual Batchstart_new_batch ()
 
virtual void finalize_batch (Batch &, bool reread=false)
 
virtual void cancel_batches_previous_to (core::Size batch_id, bool allow_reading_of_decoys=true)
 
BatchList const & batches () const
 
core::Size last_batch_id () const
 

Static Public Member Functions

static void register_options ()
 

Protected Member Functions

virtual void batch_underflow ()
 triggered in slave if new batch_ID comes in. More...
 
void idle ()
 
void jobs_completed ()
 
void queue_batch (Batch const &batch) override
 
void cancel_batch (Batch &batch, bool allow_reading_of_decoys=true) override
 
void read_existing_batches ()
 
void register_batch (Batch new_batch)
 
void send_stop_to_jobdistributor ()
 
void unlock_file (Batch const &batch, bool final) override
 
- Protected Member Functions inherited from protocols::jd2::archive::BaseArchiveManager
void set_archive (AbstractArchiveBaseOP)
 
AbstractArchiveBasethe_archive ()
 
void read_returning_decoys (Batch &batch, bool final)
 

Private Types

typedef BaseArchiveManager Parent
 
typedef MPIArchiveJobDistributor::CompletionMessage CompletionMessage
 
typedef std::map< core::Size, CompletionMessageCompletionMessages
 

Private Attributes

core::Size const archive_rank_
 
core::Size const jd_master_rank_
 
core::Size const file_buf_rank_
 
CompletionMessages jobs_completed_
 
core::Size save_archive_time_interval_
 specify seconds between automatic saves to filesystem More...
 

Static Private Attributes

static bool options_registered_
 

Friends

class JobDistributorFactory
 

Additional Inherited Members

- Public Types inherited from protocols::jd2::archive::BaseArchiveManager
typedef utility::vector1< BatchBatchList
 
- Protected Attributes inherited from protocols::jd2::archive::BaseArchiveManager
utility::vector1< Batchbatches_
 
- Static Protected Attributes inherited from protocols::jd2::archive::BaseArchiveManager
static bool options_registered_
 

Detailed Description

ArchiveManager is responsible for communication with JobDistributor and organization of Batches and returning decoys @detail he owns an Archive (AbstractArchiveBase) that will be handed the decoys and is asked to generate_batch() if the QUEUE_EMPTY .

Member Typedef Documentation

◆ CompletionMessage

◆ CompletionMessages

◆ Parent

Constructor & Destructor Documentation

◆ ArchiveManager()

protocols::jd2::archive::ArchiveManager::ArchiveManager ( core::Size  archive_rank,
core::Size  jd_master_rank,
core::Size  file_buf_rank 
)

ctor is protected; singleton pattern

constructor. Notice it calls the parent class! It also builds some internal variables for determining which processor it is in MPI land.

References options_registered_.

◆ ~ArchiveManager()

protocols::jd2::archive::ArchiveManager::~ArchiveManager ( )
inlineoverride

Member Function Documentation

◆ batch_underflow()

virtual void protocols::jd2::archive::ArchiveManager::batch_underflow ( )
inlineprotectedvirtual

triggered in slave if new batch_ID comes in.

◆ cancel_batch()

void protocols::jd2::archive::ArchiveManager::cancel_batch ( Batch batch,
bool  allow_reading_of_decoys = true 
)
overrideprotectedvirtual

◆ go()

void protocols::jd2::archive::ArchiveManager::go ( ArchiveBaseOP  archive)

◆ idle()

void protocols::jd2::archive::ArchiveManager::idle ( )
protected

◆ jobs_completed()

void protocols::jd2::archive::ArchiveManager::jobs_completed ( )
protected

◆ queue_batch()

void protocols::jd2::archive::ArchiveManager::queue_batch ( Batch const &  batch)
overrideprotectedvirtual

◆ read_existing_batches()

void protocols::jd2::archive::ArchiveManager::read_existing_batches ( )
protected

◆ register_batch()

void protocols::jd2::archive::ArchiveManager::register_batch ( Batch  new_batch)
protected

◆ register_options()

void protocols::jd2::archive::ArchiveManager::register_options ( )
static

◆ restore_archive()

bool protocols::jd2::archive::ArchiveManager::restore_archive ( )
overridevirtual

◆ save_archive()

void protocols::jd2::archive::ArchiveManager::save_archive ( )
overridevirtual

◆ send_stop_to_jobdistributor()

void protocols::jd2::archive::ArchiveManager::send_stop_to_jobdistributor ( )
protected

◆ unfinished_batches()

core::Size protocols::jd2::archive::ArchiveManager::unfinished_batches ( ) const

◆ unlock_file()

void protocols::jd2::archive::ArchiveManager::unlock_file ( Batch const &  batch,
bool  final 
)
overrideprotectedvirtual

Friends And Related Function Documentation

◆ JobDistributorFactory

friend class JobDistributorFactory
friend

Member Data Documentation

◆ archive_rank_

core::Size const protocols::jd2::archive::ArchiveManager::archive_rank_
private

Referenced by go().

◆ file_buf_rank_

core::Size const protocols::jd2::archive::ArchiveManager::file_buf_rank_
private

Referenced by go().

◆ jd_master_rank_

core::Size const protocols::jd2::archive::ArchiveManager::jd_master_rank_
private

Referenced by go().

◆ jobs_completed_

CompletionMessages protocols::jd2::archive::ArchiveManager::jobs_completed_
private

Referenced by go(), and idle().

◆ options_registered_

bool protocols::jd2::archive::ArchiveManager::options_registered_
staticprivate

Referenced by ArchiveManager().

◆ save_archive_time_interval_

core::Size protocols::jd2::archive::ArchiveManager::save_archive_time_interval_
private

specify seconds between automatic saves to filesystem

Referenced by idle().


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