Rosetta 3.5
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
src
protocols
dna
PDBOutput.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
/// @author ashworth
11
12
#ifndef INCLUDED_protocols_dna_PDBOutput_hh
13
#define INCLUDED_protocols_dna_PDBOutput_hh
14
15
#include <
protocols/dna/PDBOutput.fwd.hh
>
16
#include <
protocols/jd2/PDBJobOutputter.hh
>
// base class
17
#include <
protocols/jd2/Job.fwd.hh
>
18
19
//#include <protocols/dna/typedefs.hh> // Strings
20
21
#include <
core/types.hh
>
22
#include <
core/conformation/Residue.fwd.hh
>
23
#include <
core/pack/task/PackerTask.fwd.hh
>
24
#include <
core/pose/Pose.fwd.hh
>
25
#include <
core/scoring/ScoreFunction.fwd.hh
>
26
27
#include <utility/vector1.hh>
28
29
#include <string>
30
#include <list>
31
#include <iosfwd>
32
#include <map>
33
34
namespace
protocols {
35
namespace
dna {
36
37
class
PDBOutput
:
public
jd2::PDBJobOutputter
{
38
public
:
39
typedef
std::list< std::string >
Strings
;
// needs to match typedef in jd2/Job.hh
40
typedef
std::map< std::string, Strings >
StringsMap
;
41
typedef
jd2::JobCOP
JobCOP
;
42
typedef
core::pose::Pose
Pose
;
43
typedef
core::pose::PoseOP
PoseOP
;
44
typedef
core::pose::PoseCOP
PoseCOP
;
45
typedef
core::scoring::ScoreFunction
ScoreFunction
;
46
typedef
core::scoring::ScoreFunctionCOP
ScoreFunctionOP
;
47
typedef
core::scoring::ScoreFunctionCOP
ScoreFunctionCOP
;
48
typedef
core::pack::task::PackerTaskCOP
PackerTaskCOP
;
49
typedef
core::conformation::Residue
Residue
;
50
typedef
utility::io::ozstream
ozstream
;
51
52
public
:
53
PDBOutput
();
54
virtual
~PDBOutput
();
55
///@brief JobDistributor calls this method
56
virtual
void
final_pose
(
JobCOP
,
Pose
const
& );
57
///@brief functor for non-JobDistributor usage
58
void
operator()
(
Pose
const
&,
std::string
const
& );
59
60
void
enabled
(
bool
value )
const
{
enabled_
= value; }
61
bool
enabled
()
const
{
return
enabled_
; }
62
63
virtual
void
starting_pose
(
Pose
const
& );
64
virtual
void
reference_pose
(
Pose
const
& );
65
PoseCOP
reference_pose
()
const
;
66
67
void
score_function
(
ScoreFunction
const
& sf );
68
ScoreFunctionCOP
score_function
()
const
;
69
70
void
add_info
(
std::string
const
&,
Strings
const
&,
bool
append
=
true
);
71
bool
remove_info
(
std::string
const
& );
72
73
void
designed_residue
(
core::Size
,
bool
value =
true
);
74
void
note_designed_residues
(
PackerTaskCOP
);
75
bool
residues_are_different
(
Residue
const
&,
Residue
const
& )
const
;
76
77
private
:
// methods
78
void
get_residue_indices_to_output
();
79
void
output_pdb
(
ozstream
& );
80
void
output_info
(
ozstream
& );
81
void
output_score_info
(
ozstream
& );
82
void
output_hbond_info
(
ozstream
& );
83
void
output_buried_unsatisfied_hbonds
(
ozstream
& );
84
void
output_design_tags
(
ozstream
& )
const
;
85
86
private
:
// data
87
PoseOP
pose_copy_
;
// to allow rescoring (nonconst)
88
PoseCOP
reference_pose_
;
89
ScoreFunctionOP
score_function_
;
90
core::Real
chi_diff_threshold_
,
mainchain_torsion_diff_threshold_
;
91
mutable
bool
enabled_
;
92
StringsMap
info_map_
;
// deprecated in favor of jd2 framework (extract_data_from_Job)
93
utility::vector1< core::Size >
res_indices_to_output_
;
94
utility::vector1< bool >
designed_residues_
;
95
};
96
97
void
make_subdirs
(
std::string
const
& );
98
99
}
// namespace dna
100
}
// namespace protocols
101
102
#endif
Generated on Sat Jun 1 2013 11:46:32 for Rosetta 3.5 by
1.8.4