Rosetta  2016.11
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Member Functions | Private Attributes | Friends | List of all members
protocols::jd2::InnerJob Class Reference

#include <InnerJob.hh>

Inheritance diagram for protocols::jd2::InnerJob:
Inheritance graph
[legend]

Public Member Functions

 InnerJob (std::string const &input_tag, core::Size nstruct_max)
 ctor. Note that it takes only the input tag and max nstruct, pose instantiation is deferred until the pose is needed More...
 
 InnerJob (core::pose::PoseCOP, std::string const &input_tag, core::Size nstruct_max)
 ctor. Note that it takes only the input tag and max nstruct, pose instantiation is deferred until the pose is needed More...
 
 InnerJob (InnerJob const &src)
 Copy constructor. More...
 
virtual ~InnerJob ()
 
InnerJobOP clone () const
 Return an owning pointer to a copy of this object. More...
 
bool operator== (InnerJob const &other) const
 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. More...
 
bool operator!= (InnerJob const &other) const
 
virtual bool same (InnerJob const &other) const
 returns true if this is the same as other; does not call other.same() More...
 
virtual void show (std::ostream &out) const
 
std::string const & input_tag () const
 return the input tag (a string of space separated PDB filenames) More...
 
core::Size nstruct_max () const
 
core::pose::PoseCOP get_pose () const
 return a COP to the input pose DO NOT USE OUTSIDE OF JD2 NAMESPACE More...
 
void set_bad (bool value=true)
 
bool bad () const
 

Protected Member Functions

void set_pose (core::pose::PoseCOP pose)
 set the input pose. this function is deliberately heavily protected. Parser uses it to re-load the pose after adding constraints. JobInputter is its primary client (using it to load poses). JobDistributor uses it to set the PoseCOP to NULL when done with the input. More...
 

Private Attributes

std::string const input_tag_
 
core::Size const nstruct_max_
 
core::pose::PoseCOP pose_
 
bool bad_
 

Friends

class protocols::jd2::Parser
 
class protocols::jd2::JobInputter
 
class protocols::jd2::JobDistributor
 
std::ostream & operator<< (std::ostream &out, const InnerJob &inner_job)
 

Detailed Description

The InnerJob class is responsible for knowing input requirements for a given job - how many nstruct, and what the input is. InnerJobs are relatively heavy; there is no need to duplicate a series of InnerJobs for each index into nstruct. The companion Job class handles the nstruct index and has a pointer to an InnerJob (which is shared across many Jobs). InnerJob also holds a PoseOP to maintain the unmodified input pose for that job.

Constructor & Destructor Documentation

protocols::jd2::InnerJob::InnerJob ( std::string const &  input_tag,
core::Size  nstruct_max 
)

ctor. Note that it takes only the input tag and max nstruct, pose instantiation is deferred until the pose is needed

Referenced by clone().

protocols::jd2::InnerJob::InnerJob ( core::pose::PoseCOP  pose,
std::string const &  input_tag,
core::Size  nstruct_max 
)

ctor. Note that it takes only the input tag and max nstruct, pose instantiation is deferred until the pose is needed

protocols::jd2::InnerJob::InnerJob ( InnerJob const &  src)

Copy constructor.

protocols::jd2::InnerJob::~InnerJob ( )
virtual

Member Function Documentation

bool protocols::jd2::InnerJob::bad ( ) const
inline

References bad_.

InnerJobOP protocols::jd2::InnerJob::clone ( ) const

Return an owning pointer to a copy of this object.

References InnerJob().

core::pose::PoseCOP protocols::jd2::InnerJob::get_pose ( ) const

return a COP to the input pose DO NOT USE OUTSIDE OF JD2 NAMESPACE

References pose_.

std::string const & protocols::jd2::InnerJob::input_tag ( ) const

return the input tag (a string of space separated PDB filenames)

References input_tag_.

core::Size protocols::jd2::InnerJob::nstruct_max ( ) const

References nstruct_max_.

bool protocols::jd2::InnerJob::operator!= ( InnerJob const &  other) const
bool protocols::jd2::InnerJob::operator== ( InnerJob const &  other) const

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.

Note: only compare if the pointers to the poses are to the same location

Only compare the pointer value of the pose the inner job is referencing.

References same().

bool protocols::jd2::InnerJob::same ( InnerJob const &  other) const
virtual

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

References bad_, input_tag_, nstruct_max_, and pose_.

Referenced by operator==().

void protocols::jd2::InnerJob::set_bad ( bool  value = true)
inline

References bad_.

void protocols::jd2::InnerJob::set_pose ( core::pose::PoseCOP  pose)
protected

set the input pose. this function is deliberately heavily protected. Parser uses it to re-load the pose after adding constraints. JobInputter is its primary client (using it to load poses). JobDistributor uses it to set the PoseCOP to NULL when done with the input.

References pose_.

void protocols::jd2::InnerJob::show ( std::ostream &  out) const
virtual

References bad_, input_tag_, nstruct_max_, and pose_.

Referenced by protocols::jd2::operator<<().

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  out,
const InnerJob inner_job 
)
friend
friend class protocols::jd2::JobDistributor
friend
friend class protocols::jd2::JobInputter
friend
friend class protocols::jd2::Parser
friend

Member Data Documentation

bool protocols::jd2::InnerJob::bad_
private

Referenced by bad(), same(), set_bad(), and show().

std::string const protocols::jd2::InnerJob::input_tag_
private

Referenced by input_tag(), same(), and show().

core::Size const protocols::jd2::InnerJob::nstruct_max_
private

Referenced by nstruct_max(), same(), and show().

core::pose::PoseCOP protocols::jd2::InnerJob::pose_
private

Referenced by get_pose(), same(), set_pose(), and show().


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