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
pmut_scan
Mutant.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
// This file is part of the Rosetta software suite and is made available under license.
5
// The Rosetta software is developed by the contributing members of the Rosetta Commons consortium.
6
// (C) 199x-2009 Rosetta Commons participating institutions and developers.
7
// For more information, see http://www.rosettacommons.org/.
8
9
/// @file protocols/pmut_scan/Mutant.hh
10
/// @brief A helper class for the point mut scan protocol.
11
/// @author Ron Jacak
12
13
#ifndef INCLUDED_protocols_pmut_scan_Mutant_HH
14
#define INCLUDED_protocols_pmut_scan_Mutant_HH
15
16
// Project Headers
17
#include <
protocols/pmut_scan/Mutant.fwd.hh
>
18
19
// AUTO-REMOVED #include <core/graph/Graph.hh>
20
#include <
core/types.hh
>
21
// AUTO-REMOVED #include <core/pose/Pose.fwd.hh>
22
// AUTO-REMOVED #include <core/scoring/ScoreFunction.fwd.hh>
23
// AUTO-REMOVED #include <core/scoring/EnergyMap.fwd.hh>
24
25
// AUTO-REMOVED #include <basic/options/util.hh>
26
27
// Utility headers
28
29
// ObjexxFCL header
30
31
// C++
32
// AUTO-REMOVED #include <string>
33
// AUTO-REMOVED #include <iostream>
34
35
#include <utility/vector1.hh>
36
37
38
namespace
protocols {
39
namespace
pmut_scan {
40
41
class
MutationData
{
42
43
public
:
44
45
MutationData
(
char
wt_residue,
char
mut_residue
,
core::Size
pose_resnum
,
core::Size
pdb_resnum,
char
icode,
char
chain );
46
~MutationData
();
47
48
std::string
mutation_string
()
const
;
49
std::string
mutation_string_PDB_numbering
()
const
;
50
51
char
mut_residue
()
const
;
52
core::Size
pose_resnum
()
const
;
53
54
char
pdb_chain
()
const
{
return
chain_
; }
55
56
// print function for mutation data class; only used by unit tests
57
void
print_mutation_data
(
MutationData
& md );
58
59
// function which tests two mutation_data objects for equality; only used by unit tests
60
bool
operator==
(
const
MutationData
& md_other )
const
;
61
62
friend
std::ostream &
operator<<
( std::ostream & os,
const
MutationData
& md );
63
64
private
:
65
66
char
wt_residue_
;
67
char
mut_residue_
;
68
core::Size
pose_resnum_
;
69
core::Size
pdb_resnum_
;
// position in PDB numbering
70
char
icode_
;
// insertion code
71
char
chain_
;
// insertion code
72
73
74
friend
class
Mutant
;
75
friend
class
PointMutScanDriver
;
76
77
};
// class MutationData
78
79
80
class
Mutant
{
81
82
public
:
83
84
Mutant
();
85
~Mutant
();
86
87
core::Size
n_mutations
()
const
;
88
void
add_mutation
(
MutationData
md );
89
90
utility::vector1< MutationData >::const_iterator
mutations_begin
()
const
;
91
utility::vector1< MutationData >::const_iterator
mutations_end
()
const
;
92
93
// function which tests two mutation_data objects for equality; only used by unit tests
94
bool
operator==
(
const
Mutant
& m_other )
const
;
95
96
MutationData
pop_mutation
();
97
98
friend
std::ostream &
operator<<
( std::ostream & os,
const
Mutant
& m );
99
100
private
:
101
102
utility::vector1< MutationData >
mutations_
;
103
104
friend
class
PointMutScanDriver
;
105
106
};
// class Mutant
107
108
109
}
// namespace pmut_scan
110
}
// namespace protocols
111
112
#endif //INCLUDED_protocols_pmut_scan_Mutant_HH
Generated on Sat Jun 1 2013 12:02:30 for Rosetta 3.5 by
1.8.4