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
DnaInterfaceFinder.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
/// @brief
11
/// @author ashworth
12
13
#ifndef INCLUDED_protocols_dna_DnaInterfaceFinder_hh
14
#define INCLUDED_protocols_dna_DnaInterfaceFinder_hh
15
16
#include <
protocols/dna/DnaInterfaceFinder.fwd.hh
>
17
18
#include <
core/types.hh
>
19
#include <
core/pose/Pose.fwd.hh
>
20
21
#include <utility/pointer/ReferenceCount.hh>
22
#include <utility/vector1.fwd.hh>
23
24
#include <map>
25
26
#include <utility/vector1.hh>
27
28
29
namespace
protocols {
30
namespace
dna {
31
32
class
DnaNeighbor
{
33
public
:
34
DnaNeighbor
() :
close_
(false),
contact_
(false) {}
35
void
close
(
bool
val ) {
close_
|= val; }
36
void
contact
(
bool
val ) {
contact_
|= val; }
37
bool
close
()
const
{
return
close_
; }
38
bool
contact
()
const
{
return
contact_
; }
39
private
:
40
bool
close_
,
contact_
;
41
};
42
43
typedef
std::map< core::Size, DnaNeighbor >
DnaNeighbors
;
44
45
class
DnaInterfaceFinder
:
public
utility::pointer::ReferenceCount
{
46
public
:
47
48
DnaInterfaceFinder
(
49
core::Real
close_threshold = 10 * 10,
50
core::Real
contact_threshold = 3.7 * 3.7,
51
core::Real
z_cutoff = 10.,
52
bool
base_only =
false
53
) : utility::pointer::ReferenceCount(),
54
close_threshold_
( close_threshold ),
55
contact_threshold_
( contact_threshold ),
56
z_cutoff_
( z_cutoff ),
57
base_only_
( base_only ),
58
initialized_
( false )
59
{}
60
61
virtual
~DnaInterfaceFinder
(){}
62
63
DnaInterfaceFinderOP
clone
()
const
{
return
new
DnaInterfaceFinder
(*
this
); }
64
65
void
determine_protein_interface
(
core::pose::Pose
const
& pose );
66
67
void
68
determine_interface
(
69
core::pose::Pose
const
& pose,
70
utility::vector1< core::Size >
const
& protein_positions,
71
utility::vector1< core::Size >
const
& dna_positions
72
);
73
74
void
75
determine_interface
(
core::pose::Pose
const
& pose );
76
77
void
78
determine_protein_interface
(
79
core::pose::Pose
const
& pose,
80
utility::vector1< core::Size >
const
& protein_positions,
81
utility::vector1< core::Size >
const
& dna_positions
82
);
83
84
void
85
determine_dna_interface
(
86
core::pose::Pose
const
& pose,
87
utility::vector1< core::Size >
const
& protein_positions,
88
utility::vector1< core::Size >
const
& dna_positions
89
);
90
91
bool
initialized
()
const
{
return
initialized_
; }
92
93
DnaNeighbors
const
&
protein_neighbors
()
const
;
94
DnaNeighbors
const
&
dna_neighbors
()
const
;
95
96
private
:
97
core::Real
close_threshold_
,
contact_threshold_
,
z_cutoff_
;
98
bool
base_only_
;
99
bool
initialized_
;
100
DnaNeighbors
protein_neighbors_
;
101
DnaNeighbors
dna_neighbors_
;
102
103
};
104
105
}
// namespace dna
106
}
// namespace protocols
107
108
#endif
Generated on Sat Jun 1 2013 11:46:18 for Rosetta 3.5 by
1.8.4