Rosetta 3.5
 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]
Collaboration diagram for protocols::jd2::InnerJob:
Collaboration 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...
 
virtual ~InnerJob ()
 
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
 
bool operator== (InnerJob const &a, InnerJob const &b)
 Note: only compare if the pointers to the poses are to the same location. More...
 
bool operator!= (InnerJob const &a, InnerJob const &b)
 
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.

Definition at line 51 of file InnerJob.hh.

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

Definition at line 39 of file InnerJob.cc.

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

Definition at line 49 of file InnerJob.cc.

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

Definition at line 58 of file InnerJob.cc.

Member Function Documentation

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

Definition at line 97 of file InnerJob.hh.

References bad_.

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

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

Definition at line 64 of file InnerJob.cc.

References pose_.

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

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

Definition at line 60 of file InnerJob.cc.

References input_tag_.

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

Definition at line 62 of file InnerJob.cc.

References nstruct_max_.

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

Definition at line 93 of file InnerJob.hh.

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.

Definition at line 66 of file InnerJob.cc.

References pose_.

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

Definition at line 93 of file InnerJob.cc.

References bad_, input_tag_, nstruct_max_, and pose_.

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

Friends And Related Function Documentation

bool operator!= ( InnerJob const &  a,
InnerJob const &  b 
)
friend

Definition at line 84 of file InnerJob.cc.

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

Definition at line 109 of file InnerJob.cc.

bool operator== ( InnerJob const &  a,
InnerJob const &  b 
)
friend

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.

Definition at line 71 of file InnerJob.cc.

friend class protocols::jd2::JobDistributor
friend

Definition at line 111 of file InnerJob.hh.

friend class protocols::jd2::JobInputter
friend

Definition at line 110 of file InnerJob.hh.

friend class protocols::jd2::Parser
friend

Definition at line 109 of file InnerJob.hh.

Member Data Documentation

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

Definition at line 117 of file InnerJob.hh.

Referenced by bad(), protocols::jd2::operator==(), set_bad(), and show().

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

Definition at line 114 of file InnerJob.hh.

Referenced by input_tag(), protocols::jd2::operator==(), and show().

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

Definition at line 115 of file InnerJob.hh.

Referenced by nstruct_max(), protocols::jd2::operator==(), and show().

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

Definition at line 116 of file InnerJob.hh.

Referenced by get_pose(), protocols::jd2::operator==(), set_pose(), and show().


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