Namespaces | Classes | Typedefs | Enumerations | Functions
protocols::jd3 Namespace Reference




struct  CompletedJobOutput
 Each Job will return a JobStatus and a list of JobSummary/JobResult pairs. A pair's index in th job_results vector is used as its identifier for when the JobResult is used as input for another job, or when it is to be output by the JobQueen. More...
class  InnerLarvalJob
class  InputSource
 The InputSource is a small class for holding data about the starting Pose for a Job and where it comes from (i.e. which of the Inputters claims responsibility for creating a Pose for this instance). The "input_tag" is a string description of the input source and will be used as the "job_tag" to control output – the input tag should not include the file extension. It is perfectly reasonable for complex Inputters to subclass from InputSource to tuck more complex data in the InputSource, though, the string-string map ought to provide considerable flexibility in storing data without deriving new subclasses. More...
class  Job
 protocols::jd3::Job, which is created by the JobQueen from a LarvalJob, is responsible for executing some protocol from beginning to end in its "run" method. It must write all of its output data to the JobResult object that it creates and returns. More...
class  JobDirectedNode
 A node to use in JobDigraphs that holds information about how much work has completed for the set of jobs that it represents. More...
class  JobDirectedEdge
 A run-of-the-mill directed edge to use in JobDigraphs. More...
class  JobDigraph
 A Digraph for storing the relationship between groups of jobs, so that each node in this graph represents a group of jobs, and if the outputs from one group are inputs to another group, then a directed edge from the first group to the second group will be in the graph. The JobDistributor will run all of the jobs in the first group before any of the jobs in the second group will start. More...
class  JobDigraphUpdater
 This class defines the set of operations that a JobQueen can perform to update the JobDigraph that she originally gave to the JobDistributor. In particular, the JobQueen may only update the JobDigraph by adding new nodes to the graph (which will receive incrementally larger indexes) and then adding edges to the graph such that the head node for the edge must land on one of the newly added nodes in the graph. The JobDistributor will hand the JobQueen a JobDigraphUpdater through the JobQueen's update_job_digraph method, and in this call, the JobQueen may add as many nodes as she wishes, and as many edges that land on those new nodes, but when the method exits, those nodes petrify: the JobQueen may not add any more edges that land on those new nodes. More...
class  JobDistributor
 OK – I don't know what the division of labor between a JobDistributor base class and a JobDistributor subclass, so I'm just going to start writing a simple JobDistributor and then follow it by writing an MPI job distributor and then I'll see what shakes out. More...
class  JobDistributorFactory
class  JGJobNode
struct  compare_job_nodes
class  JGResultNode
class  JobGenealogist
struct  JobOutputIndex
 The JobOutputIndex holds the four relevant counts for describing the "name" for an output (e.g. a Pose) that is going to be written out to disk. More...
class  JQKey
 This key can be used by to delineate other classes to store/maintain data used by the JQ. More...
class  JobQueen
 The JobQueen class (think of a queen bee) has quite a few responsibilities: More...
class  JobResult
 JobResult class holds the output that's generated by a Job over the course of its execution. The JobResult is handed by the JobQueen to the JobOutputWriter objects, each of which have the opportunity to pull data out of the JobResult class. More...
class  JobSummary
 JobSummary class holds the output that's generated by a Job over the course of its execution. The JobSummary is handed by the JobQueen to the JobOutputWriter objects, each of which have the opportunity to pull data out of the JobSummary class. More...
class  JobTracker
 A simple class for tracking job progress within JD3. More...
class  LarvalJob
 protocols::jd3::LarvalJob, which is initialized by the JobQueen, during its intitialize_job_list method, is an immature form of the. It is matured into a Job that can be run by the JobQueen's mature_job method. A LarvalJob may be one of several LarvalJobs that have the same inputs, but differ in their random number seed (i.e. replicates); two jobs that share the same input are meant to point to the same "InnerLarvalJob" to avoid spending too much memory representing identical data. More...


typedef std::pair< JobSummaryOP, JobResultOPSingleJobOutputPair
typedef std::pair< core::Size, core::SizeJobResultID
typedef utility::pointer::shared_ptr< InnerLarvalJobInnerLarvalJobOP
typedef utility::pointer::shared_ptr< InnerLarvalJob const > InnerLarvalJobCOP
typedef utility::vector1< InnerLarvalJobOPInnerLarvalJobs
typedef utility::pointer::shared_ptr< InputSourceInputSourceOP
typedef utility::pointer::shared_ptr< InputSource const > InputSourceCOP
typedef utility::vector1< InputSourceOPInputSources
typedef utility::pointer::shared_ptr< JobJobOP
typedef utility::pointer::shared_ptr< Job const > JobCOP
typedef utility::pointer::shared_ptr< VanillaJobDistributor > VanillaJobDistributorOP
typedef utility::pointer::shared_ptr< VanillaJobDistributor const > VanillaJobDistributorCOP
typedef utility::pointer::shared_ptr< JobDigraphJobDigraphOP
typedef utility::pointer::shared_ptr< JobDigraph const > JobDigraphCOP
typedef utility::pointer::shared_ptr< JobDistributorJobDistributorOP
typedef utility::pointer::shared_ptr< JobDistributor const > JobDistributorCOP
using JGResultNodeOP = utility::pointer::shared_ptr< JGResultNode >
using JGResultNodeCOP = utility::pointer::shared_ptr< JGResultNode const >
using JGResultNodeAP = utility::pointer::weak_ptr< JGResultNode >
using JGResultNodeCAP = utility::pointer::weak_ptr< JGResultNode const >
using JGJobNodeOP = utility::pointer::shared_ptr< JGJobNode >
using JGJobNodeCOP = utility::pointer::shared_ptr< JGJobNode const >
using JGJobNodeAP = utility::pointer::weak_ptr< JGJobNode >
using JGJobNodeCAP = utility::pointer::weak_ptr< JGJobNode const >
using JobGenealogistOP = utility::pointer::shared_ptr< JobGenealogist >
using JobGenealogistCOP = utility::pointer::shared_ptr< JobGenealogist const >
typedef utility::pointer::shared_ptr< JobQueenJobQueenOP
typedef utility::pointer::shared_ptr< JobQueen const > JobQueenCOP
typedef utility::pointer::shared_ptr< JobResultJobResultOP
typedef utility::pointer::shared_ptr< JobResult const > JobResultCOP
typedef utility::pointer::shared_ptr< JobSummaryJobSummaryOP
typedef utility::pointer::shared_ptr< JobSummary const > JobSummaryCOP
typedef utility::pointer::shared_ptr< JobTrackerJobTrackerOP
typedef utility::pointer::shared_ptr< JobTracker const > JobTrackerCOP
typedef utility::pointer::shared_ptr< LarvalJobLarvalJobOP
typedef utility::pointer::shared_ptr< LarvalJob const > LarvalJobCOP
typedef std::list< LarvalJobOPLarvalJobs
using JobDAGNodeID = utility::StrongSize< struct JobDAGNodeID_ >
using PrelimJobNodeID = utility::StrongSize< struct PrelimJobNodeID_ >
using GlobalJobID = utility::StrongSize< struct GlobalJobID_ >
using LocalJobID = utility::StrongSize< struct LocalJobID_ >
using NStructIndex = utility::StrongSize< struct NStructIndex_ >
using ResultIndex = utility::StrongSize< struct ResultIndex_ >


enum  JobStatus {
  jd3_job_status_success , jd3_job_previously_executed , jd3_job_status_inputs_were_bad , jd3_job_status_failed_w_exception ,
  jd3_job_status_failed_retry , jd3_job_status_failed_max_retries , jd3_job_status_failed_do_not_retry


static basic::Tracer TR ("protocols.jd3.InnerLarvalJob")
template<class T >
bool pointer_equals (utility::pointer::shared_ptr< T > const &first, utility::pointer::shared_ptr< T > const &second)
 Return true if either pointers point at the same object or if they point at objects that are themselves equal. Requires that class T implements operator ==. More...
std::ostream & operator<< (std::ostream &out, const InnerLarvalJob &inner_job)
static basic::Tracer TR ("protocols.jd3.InputSource")
static basic::Tracer TR ("protocols.jd3.JobDistributorFactory")
std::ostream & operator<< (std::ostream &out, const LarvalJob &job)
void append_residue_selector_subelements (utility::tag::XMLSchemaDefinition &job_definition_xsd, utility::tag::XMLSchemaComplexTypeGenerator &job_ct_gen)
 Append Residue Selector elements for your JD file. More...
void append_single_scorefxn_subelement (utility::tag::XMLSchemaDefinition &job_definition_xsd, utility::tag::XMLSchemaComplexTypeGenerator &job_ct_gen)
 Append the ability to have a SINGLE ScoreFunction set. More...
void add_residue_selectors_to_datamap (utility::tag::TagCOP tag, basic::datacache::DataMap &datamap)
 Add all residue selectors to a given datamap from a tag. More...
core::select::residue_selector::ResidueSelectorCOP parse_single_residue_selector (utility::tag::TagCOP tag, std::string const &selector_name)
 Return a single residue selector from tag. More...
core::Size nstruct_for_job (utility::tag::TagCOP job_tag)
 Get the nstruct from the job_tag, or fallback to the cmd-line. More...
utility::options::OptionCollectionOP options_from_tag (utility::options::OptionKeyList const &option_keys, utility::tag::TagCOP job_options_tags, utility::tag::TagCOP common_block_tags)
 Create a local options collection from a tag. More...
utility::options::OptionCollectionOP options_for_job (utility::options::OptionKeyList const &option_keys, InnerLarvalJob const &inner_job, utility::tag::TagCOP common_block_tags)
 Create a local options collection from an InnerLarvalJob. More...
void print_job_template ()
 Prints the job template to a Tracer. More...
utility::options::OptionTypes option_type_from_key (utility::options::OptionKey const &key)
 Get the OptionType from a key. More...
utility::tag::XMLSchemaType value_attribute_type_for_option (utility::options::OptionTypes const &key)
 Get the XMLSchemaType for an option key. Used during SJQ's xsd parsing. More...

Typedef Documentation

◆ GlobalJobID

using protocols::jd3::GlobalJobID = typedef utility::StrongSize< struct GlobalJobID_ >

◆ InnerLarvalJobCOP

typedef utility::pointer::shared_ptr< InnerLarvalJob const > protocols::jd3::InnerLarvalJobCOP

◆ InnerLarvalJobOP

typedef utility::pointer::shared_ptr< InnerLarvalJob > protocols::jd3::InnerLarvalJobOP

◆ InnerLarvalJobs

◆ InputSourceCOP

typedef utility::pointer::shared_ptr< InputSource const > protocols::jd3::InputSourceCOP

◆ InputSourceOP

typedef utility::pointer::shared_ptr< InputSource > protocols::jd3::InputSourceOP

◆ InputSources

typedef utility::vector1< InputSourceOP > protocols::jd3::InputSources

◆ JGJobNodeAP

using protocols::jd3::JGJobNodeAP = typedef utility::pointer::weak_ptr< JGJobNode >

◆ JGJobNodeCAP

using protocols::jd3::JGJobNodeCAP = typedef utility::pointer::weak_ptr< JGJobNode const >

◆ JGJobNodeCOP

using protocols::jd3::JGJobNodeCOP = typedef utility::pointer::shared_ptr< JGJobNode const >

◆ JGJobNodeOP

using protocols::jd3::JGJobNodeOP = typedef utility::pointer::shared_ptr< JGJobNode >

◆ JGResultNodeAP

using protocols::jd3::JGResultNodeAP = typedef utility::pointer::weak_ptr< JGResultNode >

◆ JGResultNodeCAP

using protocols::jd3::JGResultNodeCAP = typedef utility::pointer::weak_ptr< JGResultNode const >

◆ JGResultNodeCOP

using protocols::jd3::JGResultNodeCOP = typedef utility::pointer::shared_ptr< JGResultNode const >

◆ JGResultNodeOP

using protocols::jd3::JGResultNodeOP = typedef utility::pointer::shared_ptr< JGResultNode >

◆ JobCOP

typedef utility::pointer::shared_ptr< Job const > protocols::jd3::JobCOP

◆ JobDAGNodeID

using protocols::jd3::JobDAGNodeID = typedef utility::StrongSize< struct JobDAGNodeID_ >

◆ JobDigraphCOP

typedef utility::pointer::shared_ptr< JobDigraph const > protocols::jd3::JobDigraphCOP

◆ JobDigraphOP

typedef utility::pointer::shared_ptr< JobDigraph > protocols::jd3::JobDigraphOP

◆ JobDistributorCOP

typedef utility::pointer::shared_ptr< JobDistributor const > protocols::jd3::JobDistributorCOP

◆ JobDistributorOP

typedef utility::pointer::shared_ptr< JobDistributor > protocols::jd3::JobDistributorOP

◆ JobGenealogistCOP

using protocols::jd3::JobGenealogistCOP = typedef utility::pointer::shared_ptr< JobGenealogist const >

◆ JobGenealogistOP

using protocols::jd3::JobGenealogistOP = typedef utility::pointer::shared_ptr< JobGenealogist >

◆ JobOP

typedef utility::pointer::shared_ptr< Job > protocols::jd3::JobOP

◆ JobQueenCOP

typedef utility::pointer::shared_ptr< JobQueen const > protocols::jd3::JobQueenCOP

◆ JobQueenOP

typedef utility::pointer::shared_ptr< JobQueen > protocols::jd3::JobQueenOP

◆ JobResultCOP

typedef utility::pointer::shared_ptr< JobResult const > protocols::jd3::JobResultCOP

◆ JobResultID

The first entry in this pair is the Job id; the second entry is the index for a particular job-output-pair in the CompletedJobOutput vector. E.g., the 5th JobSummary/JobResult pair for Job 132 would be identified by the pair { 132, 5 }. A JobResultID is exactly the same thing, but is given another name for when the JobQueen is trying to indicate which JobResult of all the JobSummary/JobResult pairs that she is interested in.

◆ JobResultOP

typedef utility::pointer::shared_ptr< JobResult > protocols::jd3::JobResultOP

◆ JobSummaryCOP

typedef utility::pointer::shared_ptr< JobSummary const > protocols::jd3::JobSummaryCOP

◆ JobSummaryOP

typedef utility::pointer::shared_ptr< JobSummary > protocols::jd3::JobSummaryOP

◆ JobTrackerCOP

typedef utility::pointer::shared_ptr< JobTracker const > protocols::jd3::JobTrackerCOP

◆ JobTrackerOP

typedef utility::pointer::shared_ptr< JobTracker > protocols::jd3::JobTrackerOP

◆ LarvalJobCOP

typedef utility::pointer::shared_ptr< LarvalJob const > protocols::jd3::LarvalJobCOP

◆ LarvalJobOP

typedef utility::pointer::shared_ptr< LarvalJob > protocols::jd3::LarvalJobOP

◆ LarvalJobs

◆ LocalJobID

using protocols::jd3::LocalJobID = typedef utility::StrongSize< struct LocalJobID_ >

◆ NStructIndex

using protocols::jd3::NStructIndex = typedef utility::StrongSize< struct NStructIndex_ >

◆ PrelimJobNodeID

using protocols::jd3::PrelimJobNodeID = typedef utility::StrongSize< struct PrelimJobNodeID_ >

◆ ResultIndex

using protocols::jd3::ResultIndex = typedef utility::StrongSize< struct ResultIndex_ >

◆ SingleJobOutputPair

◆ VanillaJobDistributorCOP

typedef utility::pointer::shared_ptr< VanillaJobDistributor const > protocols::jd3::VanillaJobDistributorCOP

◆ VanillaJobDistributorOP

typedef utility::pointer::shared_ptr< VanillaJobDistributor > protocols::jd3::VanillaJobDistributorOP

Enumeration Type Documentation

◆ JobStatus


Function Documentation

◆ add_residue_selectors_to_datamap()

void protocols::jd3::add_residue_selectors_to_datamap ( utility::tag::TagCOP  tag,
basic::datacache::DataMap datamap 

Add all residue selectors to a given datamap from a tag.

References protocols::parser::ResidueSelectorLoader::load_data().

Referenced by parse_single_residue_selector().

◆ append_residue_selector_subelements()

void protocols::jd3::append_residue_selector_subelements ( utility::tag::XMLSchemaDefinition &  job_definition_xsd,
utility::tag::XMLSchemaComplexTypeGenerator &  job_ct_gen 

◆ append_single_scorefxn_subelement()

void protocols::jd3::append_single_scorefxn_subelement ( utility::tag::XMLSchemaDefinition &  job_definition_xsd,
utility::tag::XMLSchemaComplexTypeGenerator &  job_ct_gen 

Append the ability to have a SINGLE ScoreFunction set.

Used to have the scorefunction defined for the entire job.

References protocols::parser::ScoreFunctionLoader::provide_xml_schema(), and protocols::parser::ScoreFunctionLoader::score_function_loader_ct_namer().

◆ nstruct_for_job()

core::Size protocols::jd3::nstruct_for_job ( utility::tag::TagCOP  job_tag)

◆ operator<<() [1/2]

std::ostream& protocols::jd3::operator<< ( std::ostream &  out,
const InnerLarvalJob inner_job 

◆ operator<<() [2/2]

std::ostream & protocols::jd3::operator<< ( std::ostream &  out,
const LarvalJob job 

◆ option_type_from_key()

utility::options::OptionTypes protocols::jd3::option_type_from_key ( utility::options::OptionKey const &  key)

◆ options_for_job()

utility::options::OptionCollectionOP protocols::jd3::options_for_job ( utility::options::OptionKeyList const &  option_keys,
InnerLarvalJob const &  inner_job,
utility::tag::TagCOP  common_block_tags 

◆ options_from_tag()

utility::options::OptionCollectionOP protocols::jd3::options_from_tag ( utility::options::OptionKeyList const &  option_keys,
utility::tag::TagCOP  job_options_tag,
utility::tag::TagCOP  common_block_tags 

◆ parse_single_residue_selector()

core::select::residue_selector::ResidueSelectorCOP protocols::jd3::parse_single_residue_selector ( utility::tag::TagCOP  tag,
std::string const &  selector_name 

Return a single residue selector from tag.

References add_residue_selectors_to_datamap(), and core::select::residue_selector::get_residue_selector().

◆ pointer_equals()

template<class T >
bool protocols::jd3::pointer_equals ( utility::pointer::shared_ptr< T > const &  first,
utility::pointer::shared_ptr< T > const &  second 

Return true if either pointers point at the same object or if they point at objects that are themselves equal. Requires that class T implements operator ==.

◆ print_job_template()

void protocols::jd3::print_job_template ( )

Prints the job template to a Tracer.

References TR().

◆ TR() [1/3]

static basic::Tracer protocols::jd3::TR ( "protocols.jd3.InnerLarvalJob"  )

◆ TR() [2/3]

static basic::Tracer protocols::jd3::TR ( "protocols.jd3.InputSource"  )

◆ TR() [3/3]

static basic::Tracer protocols::jd3::TR ( "protocols.jd3.JobDistributorFactory"  )

◆ value_attribute_type_for_option()

utility::tag::XMLSchemaType protocols::jd3::value_attribute_type_for_option ( utility::options::OptionTypes const &  key)

Get the XMLSchemaType for an option key. Used during SJQ's xsd parsing.

Referenced by protocols::jd3::standard::StandardJobQueen::job_definition_xsd().