Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
NoOutputJobOutputter.hh
Go to the documentation of this file.
1 // -*- mode:c++;tab-width:2;indent-tabs-mode:t;show-trailing-whitespace:t;rm-trailing-spaces:t -*-
2 // vi: set ts=2 noet:
3 //
4 // (c) Copyright Rosetta Commons Member Institutions.
5 // (c) This file is part of the Rosetta software suite and is made available under license.
6 // (c) The Rosetta software is developed by the contributing members of the Rosetta Commons.
7 // (c) For more information, see http://www.rosettacommons.org. Questions about this can be
8 // (c) addressed to University of Washington UW TechTransfer, email: license@u.washington.edu.
9 
10 /// @file protocols/jd2/NoOutputJobOutputter.hh
11 /// @brief header file for NoOutputJobOutputter class, part of August 2008 job distributor as planned at RosettaCon08
12 /// @author Steven Lewis smlewi@gmail.com
13 
14 
15 #ifndef INCLUDED_protocols_jd2_NoOutputJobOutputter_hh
16 #define INCLUDED_protocols_jd2_NoOutputJobOutputter_hh
17 
18 //unit headers
20 #include <protocols/jd2/Job.hh>
21 
22 //project headers
23 #include <core/pose/Pose.fwd.hh>
24 
25 //utility headers
26 //C++ headers
27 #include <string>
28 
29 #include <utility/vector1.hh>
30 
31 
32 namespace protocols {
33 namespace jd2 {
34 
35 ///@details the NoOutputJobOutputter class is responsible for NOT dealing with output
37 public:
38 
39  //constructor -- reads cmd-line to initialize evaluators
41 
42  //////////////////////////////creating output functions/////////////////////////////////////////
43 
44  ///@brief this function takes a string and writes it to disk (separately from Tracer output).
45  ///use some sort of extention option system - default .dat? .data?
46  virtual
47  void file( JobCOP, std::string const & ) {};
48 
49  ///@brief this function outputs the final result of a job.
50  virtual
51  void final_pose( JobCOP, core::pose::Pose const & ) {};
52 
53  ///@brief this function is intended for saving mid-protocol poses; for example the final centroid structure in a combined centroid/fullatom protocol.
54  virtual
55  void other_pose( JobCOP, core::pose::Pose const & , std::string const &, int /*copy_count = -1*/, bool /*score_only = false*/ ) {};
56 
57  /////////////////////////////////state of output functions/////////////////////////////////
58 
59  ///@brief 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.
60  virtual
61  bool job_has_completed( JobCOP ) { return false; };
62 
63  virtual std::string output_name( JobCOP job ) {
64  return affixed_numbered_name( job );
65  }
66 
67 }; // NoOutputJobOutputter
68 
69 } // namespace jd2
70 } // namespace protocols
71 
72 #endif //INCLUDED_protocols_jd2_NoOutputJobOutputter_HH