Rosetta  2021.16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Attributes | List of all members
protocols::jd3::JGJobNode Class Reference

#include <JobGenealogist.hh>

Inheritance diagram for protocols::jd3::JGJobNode:
Inheritance graph
[legend]

Public Member Functions

 JGJobNode ()
 
 JGJobNode (core::Size global_job, unsigned int job_dag_node, JGResultNodeAP parent_node, unsigned int input_source)
 
 ~JGJobNode ()=default
 
bool operator< (JGJobNode const &rhs) const
 This is purely for the sake of sorting. More...
 
void add_parent (JGResultNodeAP p, bool tell_parent_to_add_child=true)
 Like humans, the JGJobNode can have more than one parent. More...
 
bool remove_parent (JGResultNodeAP p, bool tell_parent_to_remove_child=true)
 
core::Size global_job_id () const
 
void global_job_id (core::Size global_job_id)
 
unsigned int node () const
 
unsigned int job_dag_node () const
 "Node" is the most over-used word in this file. This method calls node() but has a more descriptive name so that we know what type of node we are talking about. More...
 
void node (unsigned int node)
 
void job_dag_node (unsigned int node)
 "Node" is the most over-used word in this file. This method calls node() but has a more descriptive name so that we know what type of node we are talking about. More...
 
unsigned int input_source_id () const
 
void input_source_id (unsigned int input_source_id)
 
utility::vector1
< JGResultNodeAP > & 
parents ()
 
utility::vector1
< JGResultNodeAP > const & 
parents () const
 Be careful here! The vector is const but the elements are not. More...
 
utility::vector1
< JGResultNodeAP > & 
children ()
 
utility::vector1
< JGResultNodeAP > const & 
children () const
 Be careful here! The vector is const but the elements are not. More...
 

Private Attributes

core::Size global_job_id_
 
unsigned int node_
 
unsigned int input_source_id_
 
utility::vector1< JGResultNodeAPparents_
 
utility::vector1< JGResultNodeAPchildren_
 

Constructor & Destructor Documentation

protocols::jd3::JGJobNode::JGJobNode ( )
protocols::jd3::JGJobNode::JGJobNode ( core::Size  global_job,
unsigned int  job_dag_node,
JGResultNodeAP  parent_node,
unsigned int  input_source 
)
protocols::jd3::JGJobNode::~JGJobNode ( )
default

Member Function Documentation

void protocols::jd3::JGJobNode::add_parent ( JGResultNodeAP  p,
bool  tell_parent_to_add_child = true 
)

Like humans, the JGJobNode can have more than one parent.

please only set tell_parent_to_add_child to false if you plan on adding this job node to p's vector of children. The parent/child relationship is very complicated when only one of the two parties knows about the relationship.

References parents_.

utility::vector1< JGResultNodeAP >& protocols::jd3::JGJobNode::children ( )
inline

References children_.

utility::vector1< JGResultNodeAP > const& protocols::jd3::JGJobNode::children ( ) const
inline

Be careful here! The vector is const but the elements are not.

References children_.

core::Size protocols::jd3::JGJobNode::global_job_id ( ) const
inline
void protocols::jd3::JGJobNode::global_job_id ( core::Size  global_job_id)
inline

References global_job_id(), and global_job_id_.

unsigned int protocols::jd3::JGJobNode::input_source_id ( ) const
inline

References input_source_id_.

Referenced by input_source_id().

void protocols::jd3::JGJobNode::input_source_id ( unsigned int  input_source_id)
inline
unsigned int protocols::jd3::JGJobNode::job_dag_node ( ) const
inline

"Node" is the most over-used word in this file. This method calls node() but has a more descriptive name so that we know what type of node we are talking about.

References node_.

void protocols::jd3::JGJobNode::job_dag_node ( unsigned int  node)
inline

"Node" is the most over-used word in this file. This method calls node() but has a more descriptive name so that we know what type of node we are talking about.

References node(), and node_.

unsigned int protocols::jd3::JGJobNode::node ( ) const
inline

References node_.

Referenced by job_dag_node(), and node().

void protocols::jd3::JGJobNode::node ( unsigned int  node)
inline

References node(), and node_.

bool protocols::jd3::JGJobNode::operator< ( JGJobNode const &  rhs) const
inline

This is purely for the sake of sorting.

References global_job_id_.

utility::vector1< JGResultNodeAP >& protocols::jd3::JGJobNode::parents ( )
inline

References parents_.

utility::vector1< JGResultNodeAP > const& protocols::jd3::JGJobNode::parents ( ) const
inline

Be careful here! The vector is const but the elements are not.

References parents_.

bool protocols::jd3::JGJobNode::remove_parent ( JGResultNodeAP  p,
bool  tell_parent_to_remove_child = true 
)

please only set tell_parent_to_add_child to false if you plan on removing this job node from p's vector of children. The parent/child relationship is very complicated when only one of the two parties knows that the relationship has ended.

References input_source_id_, and parents_.

Member Data Documentation

utility::vector1< JGResultNodeAP > protocols::jd3::JGJobNode::children_
private

Referenced by children().

core::Size protocols::jd3::JGJobNode::global_job_id_
private

Referenced by global_job_id(), and operator<().

unsigned int protocols::jd3::JGJobNode::input_source_id_
private

Referenced by input_source_id(), and remove_parent().

unsigned int protocols::jd3::JGJobNode::node_
private

Referenced by job_dag_node(), and node().

utility::vector1< JGResultNodeAP > protocols::jd3::JGJobNode::parents_
private

Referenced by add_parent(), parents(), and remove_parent().


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