Rosetta
Public Types | Public Member Functions | Private Attributes | Friends | List of all members
protocols::jd3::standard::StandardInnerLarvalJob Class Reference

#include <StandardInnerLarvalJob.hh>

Inheritance diagram for protocols::jd3::standard::StandardInnerLarvalJob:
Inheritance graph
[legend]

Public Types

typedef jd3::InnerLarvalJob parent
 

Public Member Functions

 StandardInnerLarvalJob ()
 
 StandardInnerLarvalJob (core::Size nstruct, JobDAGNodeID job_node, PrelimJobNodeID preliminary_job_node)
 
 StandardInnerLarvalJob (StandardInnerLarvalJob const &src)
 
 ~StandardInnerLarvalJob () override
 
bool operator== (InnerLarvalJob const &other) const override
 Mutual comparison of this inner job to the other inner job so that if either one thinks it's not the same as the other, then it returns false. Invokes the same_type() function on both this and other. More...
 
bool same_type (InnerLarvalJob const &other) const override
 returns true if this is the same type as other; does not call other.same_type() More...
 
void show (std::ostream &out) const override
 
PrelimJobNodeID preliminary_job_node () const
 Return the job node this StandardInnerLarvalJob belongs to If the Job Node has not been set, we return 0. More...
 
- Public Member Functions inherited from protocols::jd3::InnerLarvalJob
 InnerLarvalJob ()
 
 InnerLarvalJob (core::Size nstruct, core::Size job_node)
 
 InnerLarvalJob (InnerLarvalJob const &src)
 
 ~InnerLarvalJob () override
 
bool sources_same (InnerLarvalJob const &other) const
 Determine if two jobs are defined with the same set of InputSources. More...
 
virtual bool operator!= (InnerLarvalJob const &other) const
 
basic::datacache::ConstDataMap const & const_data_map () const
 Read access to the ConstDataMap that the InnerLarvalJob holds. More...
 
basic::datacache::ConstDataMap & const_data_map ()
 Write access to the ConstDataMap that the InnerLarvalJob holds. The objects pointed to by the const data map can be shared between two InnerLarvalJobs, but the data maps themselves should not be shared. More...
 
core::Size job_node () const
 Return the job node this InnerLarvalJob belongs to If the Job Node has not been set, we return 0. More...
 
core::Size n_input_sources () const
 Return the number of pose input sources for this job. More...
 
core::Size nstruct_max () const
 The number of job replicates to be performed for this InnerLarvalJob. More...
 
void input_source (InputSourceCOP setting)
 Set the single InputSource for this job. More...
 
void clear_input_sources ()
 Clear the vector of InputSources. More...
 
void append_input_source (InputSourceCOP setting)
 Append a InputSource to the vector of them. More...
 
std::string input_tag () const
 Return the input tag – a string that describes the input structure, but that is in no way a complete description of the job. The job_tag instead should be looked to as the name to use to identify information about this job: a single input structure may be used for multiple jobs. More...
 
void input_tag (std::string const &setting)
 Set the input tag – if it is not set, then the InputSources will be used, the file names / tags being concatenated together, separated by underscores. More...
 
virtual std::string job_tag () const
 Return the job tag – a string that describes what task is being performed and and (usually) what input structure that job is being performed upon. This is the tag can be defined by the user in the job-definition XML file. More...
 
void job_tag (std::string const &setting)
 Set the job tag. If not set, then the input tag will be returned. More...
 
std::string outputter () const
 Return the outputter class; i.e. the key used by the PoseOutputterFactory. More...
 
void outputter (std::string const &setting)
 Set the outputter class for this job; i.e. the key used by the PoseOutputterFactory. More...
 
utility::tag::TagCOP jobdef_tag () const
 
void jobdef_tag (utility::tag::TagCOP setting)
 
void nstruct_max (core::Size setting)
 Set the total number of Nstruct for this InnerLarvelJob (IE - how many LarvalJobs will we need?) More...
 
void job_node (core::Size setting)
 Set the Job Node for this ILJ. More...
 
InputSource const & input_source () const
 Read access to the InputSource object that describes how the Pose for this job should be constructed. Requires that there is only a single InputSource for this job. More...
 
InputSourceCOP const & input_source_cop () const
 
InputSource const & input_source (core::Size index) const
 Retrieve a particular InputSource. More...
 
InputSourceCOP const & input_source_cop (core::Size index) const
 
utility::vector1< JobResultID > const & input_job_result_indices () const
 The list of the JobResults required to mature this LarvalJob, by global index of the already-executed (Lavral)Jobs. More...
 
void add_input_job_result_index (JobResultID job_result_id)
 Add a required input by the pair representing 1) the global index of the job that produced the JobResult, and 2) the index of that JobResult among all the results produced by that job. More...
 
void set_bad (bool setting=true)
 Store the fact that this job is bad, for some reason or another, e.g. it has malformed inputs. More...
 
bool bad () const
 Has this job been labeled as bad? More...
 

Private Attributes

PrelimJobNodeID preliminary_job_node_
 

Friends

std::ostream & operator<< (std::ostream &out, const StandardInnerLarvalJob &inner_job)
 

Detailed Description

The StandardInnerLarvalJob class is responsible for holding the input requirements for a given job - how many nstruct, and what the input is. StandardInnerLarvalJobs are relatively heavy; there is no need to duplicate a series of StandardInnerLarvalJobs for each index into nstruct. The companion Job class handles the nstruct index and has a pointer to an StandardInnerLarvalJob (which is shared across many Jobs). The JobQueen has considerable leeway in how she shares data held in the StandardInnerLarvalJobs she creates: if all of the options for a set of StandardInnerLarvalJob are identical, and they differ only in their input structure, then she can, e.g. share a single JobOptions object between all of them. StandardInnerLarvalJobs are serialized by the JobDistributor and shipped between nodes. For this reason, they should not be loaded with ResourceManager-managed data (that data should not get shipped between nodes, though it should be instantiatable on any node), but they may need to store Poses, as would be necessary in any multi-round protocol, where the JobResults from round i are the starting points for round i+1.

Member Typedef Documentation

◆ parent

Constructor & Destructor Documentation

◆ StandardInnerLarvalJob() [1/3]

protocols::jd3::standard::StandardInnerLarvalJob::StandardInnerLarvalJob ( )

◆ StandardInnerLarvalJob() [2/3]

protocols::jd3::standard::StandardInnerLarvalJob::StandardInnerLarvalJob ( core::Size  nstruct,
JobDAGNodeID  job_node,
PrelimJobNodeID  preliminary_job_node 
)

◆ StandardInnerLarvalJob() [3/3]

protocols::jd3::standard::StandardInnerLarvalJob::StandardInnerLarvalJob ( StandardInnerLarvalJob const &  src)

◆ ~StandardInnerLarvalJob()

protocols::jd3::standard::StandardInnerLarvalJob::~StandardInnerLarvalJob ( )
overridedefault

Member Function Documentation

◆ operator==()

bool protocols::jd3::standard::StandardInnerLarvalJob::operator== ( InnerLarvalJob const &  other) const
overridevirtual

Mutual comparison of this inner job to the other inner job so that if either one thinks it's not the same as the other, then it returns false. Invokes the same_type() function on both this and other.

Mutual comparison of this inner job to the other inner job so that if either one thinks it's not the same as the other, then it returns false. Invokes the same() function on both this and other.

Reimplemented from protocols::jd3::InnerLarvalJob.

References preliminary_job_node_.

◆ preliminary_job_node()

PrelimJobNodeID protocols::jd3::standard::StandardInnerLarvalJob::preliminary_job_node ( ) const

Return the job node this StandardInnerLarvalJob belongs to If the Job Node has not been set, we return 0.

References preliminary_job_node_.

Referenced by protocols::multistage_rosetta_scripts::MRSJobQueen::complete_larval_job_maturation().

◆ same_type()

bool protocols::jd3::standard::StandardInnerLarvalJob::same_type ( InnerLarvalJob const &  other) const
overridevirtual

returns true if this is the same type as other; does not call other.same_type()

Reimplemented from protocols::jd3::InnerLarvalJob.

◆ show()

void protocols::jd3::standard::StandardInnerLarvalJob::show ( std::ostream &  out) const
overridevirtual

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  out,
const StandardInnerLarvalJob inner_job 
)
friend

Member Data Documentation

◆ preliminary_job_node_

PrelimJobNodeID protocols::jd3::standard::StandardInnerLarvalJob::preliminary_job_node_
private

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