Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Protected Member Functions | Private Attributes | List of all members
protocols::jd2::FileJobOutputter Class Referenceabstract

#include <FileJobOutputter.hh>

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

Public Types

typedef
protocols::jd2::JobOutputter 
parent
 

Public Member Functions

 FileJobOutputter ()
 
 ~FileJobOutputter () override
 
void set_defaults ()
 
void file (JobCOP job, std::string const &data) override
 this function takes a string and writes it to disk (separately from Tracer output). More...
 
void final_pose (JobOP job, core::pose::Pose const &pose, std::string const &tag) override=0
 this function outputs the final result of a job. More...
 
void other_pose (JobOP job, core::pose::Pose const &pose, std::string const &tag, int copy_count=-1, bool score_only=false) override=0
 this function is intended for saving mid-protocol poses; for example the final centroid structure in a combined centroid/fullatom protocol. More...
 
bool job_has_completed (JobCOP job) override=0
 this function is not used for output, but it belongs here since it needs to check the same output locations as the class normally writes to. This class checks wherever output goes to see if the job's expected output already exists (on disk or whatever). This is the most basic form of checkpointing. The base implementation looks for a pdb with the job's name already in existence. More...
 
std::string output_name (JobCOP job) override=0
 this is the master function for determining the unique output identifier for a job More...
 
utility::file::FileName const & scorefile_name ()
 
bool write_scorefile () const
 
- Public Member Functions inherited from protocols::jd2::JobOutputter
 JobOutputter ()
 constructor – reads cmd-line to initialize evaluators More...
 
 ~JobOutputter () override
 
virtual void flush ()
 this function is meant to be redefined in child classes to allow for flushing of memory buffers. Here's the long version: The SilentFileJobOutputter wanted to buffer output, but needed to guaruntee that the output would be flushed at end of runtime. The original implementation was to A) bend over backward to ensure that the destructor was run (JobOutputter lives inside static JobDistributor, which was previously not destructed because it's static) and B) flush the buffers in the destructor. This caused a problem because the buffer-flushing tried to use the Tracers, which had already been destructed...boom crash. More...
 
virtual void starting_pose (core::pose::Pose const &)
 optionally pass a starting (reference) pose to a JobOutputter for later comparison purposes and/or as interface for initializing evaluators More...
 
virtual std::string filename (JobCOP) const
 
void add_evaluation (evaluation::PoseEvaluatorOP)
 
void set_evaluators (evaluation::PoseEvaluators const &)
 
void clear_evaluators ()
 clear the list of evaluators More...
 
evaluation::PoseEvaluatorsCOP evaluators () const
 
void evaluate (core::pose::Pose &pose, std::string tag, core::io::silent::SilentStruct &pss) const
 
void call_output_observers (core::pose::Pose const &pose, JobOP job) const
 call all output_observers More...
 
void set_defaults ()
 clear the list of evaluators More...
 

Protected Member Functions

virtual void scorefile (JobCOP job, core::pose::Pose const &pose, std::string prefix_tag="", std::string suffix_tag="", std::string scorefile="")
 this function will handle the scorefile. If you need to make it virtual do so. Latter two arguments are for redirecting the output to a different scorefile for "other_pose"s. Also adds StringReal job info to the score file. More...
 
- Protected Member Functions inherited from protocols::jd2::JobOutputter
std::string affixed_numbered_name (JobCOP job)
 this function generates the affixed, numbered name for the job as prefix + input + suffix + number (affixes from options system). This function is deliberately not virtual, this should be a common mechanism; your JobOutputter can not call it if it would like. More...
 

Private Attributes

bool write_scorefile_
 this function will handle the scorefile for arbitrary poses. More...
 
utility::file::FileName scorefile_name_
 

Detailed Description

this is a middle-layer implementation of JobOutputter for file-based output. It handles scorefile output, as scorefiles are common to file-outputting methods.

Member Typedef Documentation

Constructor & Destructor Documentation

protocols::jd2::FileJobOutputter::FileJobOutputter ( )

References set_defaults().

protocols::jd2::FileJobOutputter::~FileJobOutputter ( )
overridedefault

Member Function Documentation

void protocols::jd2::FileJobOutputter::file ( JobCOP  job,
std::string const &  data 
)
overridevirtual

this function takes a string and writes it to disk (separately from Tracer output).

this base class implementation will try to append whatever string it gets to a file named after the job, with a user-specified suffix.

Implements protocols::jd2::JobOutputter.

References core::conformation::membrane::out, output_name(), and protocols::jd2::TR().

Referenced by protocols::jd2::wwPDBJobOutputter::final_pose(), and protocols::jd2::wwPDBJobOutputter::other_pose().

void protocols::jd2::FileJobOutputter::final_pose ( JobOP  job,
core::pose::Pose const &  pose,
std::string const &  tag 
)
overridepure virtual
bool protocols::jd2::FileJobOutputter::job_has_completed ( JobCOP  job)
overridepure virtual

this function is not used for output, but it belongs here since it needs to check the same output locations as the class normally writes to. This class checks wherever output goes to see if the job's expected output already exists (on disk or whatever). This is the most basic form of checkpointing. The base implementation looks for a pdb with the job's name already in existence.

Implements protocols::jd2::JobOutputter.

Implemented in protocols::features::DatabaseJobOutputter, protocols::jd2::RNA_DeNovoJobOutputter, protocols::jd2::SilentFileJobOutputter, protocols::jd2::wwPDBJobOutputter, protocols::jd2::AtomTreeDiffJobOutputter, protocols::jd2::ScoreOnlyJobOutputter, and protocols::enzdes::EnzdesJobOutputter.

void protocols::jd2::FileJobOutputter::other_pose ( JobOP  job,
core::pose::Pose const &  pose,
std::string const &  tag,
int  copy_count = -1,
bool  score_only = false 
)
overridepure virtual

this function is intended for saving mid-protocol poses; for example the final centroid structure in a combined centroid/fullatom protocol.

Implements protocols::jd2::JobOutputter.

Implemented in protocols::features::DatabaseJobOutputter, protocols::jd2::RNA_DeNovoJobOutputter, protocols::jd2::SilentFileJobOutputter, protocols::jd2::wwPDBJobOutputter, protocols::jd2::AtomTreeDiffJobOutputter, and protocols::jd2::ScoreOnlyJobOutputter.

std::string protocols::jd2::FileJobOutputter::output_name ( JobCOP  job)
overridepure virtual
void protocols::jd2::FileJobOutputter::scorefile ( JobCOP  job,
core::pose::Pose const &  pose,
std::string  prefix_tag = "",
std::string  suffix_tag = "",
std::string  scorefile = "" 
)
protectedvirtual
utility::file::FileName const& protocols::jd2::FileJobOutputter::scorefile_name ( )
inline
void protocols::jd2::FileJobOutputter::set_defaults ( )
bool protocols::jd2::FileJobOutputter::write_scorefile ( ) const
inline

Member Data Documentation

utility::file::FileName protocols::jd2::FileJobOutputter::scorefile_name_
private
bool protocols::jd2::FileJobOutputter::write_scorefile_
private

this function will handle the scorefile for arbitrary poses.

Referenced by scorefile(), set_defaults(), and write_scorefile().


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