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
core
scoring
TwelveANeighborGraph.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 core/scoring/TwelveANeighborGraph.hh
11
/// @brief Twelve Angstrom Neighbor Graph class declaration
12
/// @author Andrew Leaver-Fay (leaverfa@email.unc.edu)
13
14
#ifndef INCLUDED_core_scoring_TwelveANeighborGraph_hh
15
#define INCLUDED_core_scoring_TwelveANeighborGraph_hh
16
17
// Unit Headers
18
#include <
core/scoring/TwelveANeighborGraph.fwd.hh
>
19
20
// Package Headers
21
#include <
core/scoring/ContextGraph.hh
>
22
23
// Project Headers
24
#include <
core/graph/Graph.hh
>
25
#include <
core/pose/Pose.fwd.hh
>
26
27
#include <utility/vector1.hh>
28
29
30
31
namespace
core {
32
namespace
scoring {
33
34
class
TwelveANeighborNode
:
public
graph::Node
35
{
36
public
:
37
typedef
graph::Node
parent
;
38
39
public
:
40
virtual
~TwelveANeighborNode
();
41
TwelveANeighborNode
(
graph::Graph
*,
Size
node_id );
42
43
virtual
void
copy_from
(
Node
const
* source );
44
45
virtual
Size
count_static_memory
()
const
;
46
virtual
Size
count_dynamic_memory
()
const
;
47
private
:
48
49
};
50
51
class
TwelveANeighborEdge
:
public
graph::Edge
52
{
53
public
:
54
typedef
graph::Edge
parent
;
55
56
public
:
57
virtual
~TwelveANeighborEdge
();
58
TwelveANeighborEdge
(
graph::Graph
* owner,
Size
first_node_ind,
Size
second_node_ind);
59
60
virtual
void
copy_from
(
graph::Edge
const
* source );
61
62
virtual
Size
count_static_memory
()
const
;
63
virtual
Size
count_dynamic_memory
()
const
;
64
65
private
:
66
67
};
68
69
class
TwelveANeighborGraph
:
public
ContextGraph
70
{
71
public
:
72
typedef
ContextGraph
parent
;
73
74
public
:
75
76
virtual
~TwelveANeighborGraph
();
77
78
TwelveANeighborGraph
();
79
TwelveANeighborGraph
(
Size
num_nodes
);
80
TwelveANeighborGraph
(
TwelveANeighborGraph
const
& source );
81
TwelveANeighborGraph
&
operator =
(
TwelveANeighborGraph
const
& source );
82
83
virtual
84
Distance
85
neighbor_cutoff
()
const
;
86
87
virtual
88
void
89
conditionally_add_edge
(
90
Size
lower_node_id,
91
Size
upper_node_id,
92
DistanceSquared
dsq
93
);
94
95
virtual
96
ContextGraphOP
97
clone
()
const
;
98
99
virtual
100
void
update_from_pose
(
101
pose::Pose
const
& pose
102
);
103
104
virtual
void
delete_edge
(
graph::Edge
* edge );
105
106
protected
:
107
108
virtual
Size
count_static_memory
()
const
;
109
virtual
Size
count_dynamic_memory
()
const
;
110
111
virtual
graph::Node
*
create_new_node
(
Size
node_index );
112
virtual
graph::Edge
*
create_new_edge
(
Size
index1,
Size
index2);
113
virtual
graph::Edge
*
create_new_edge
(
graph::Edge
const
* example_edge );
114
115
private
:
116
static
Distance
const
twelveA_
;
117
static
DistanceSquared
const
twelveA_squared_
;
118
119
};
120
121
}
// scoring
122
}
// core
123
124
#endif
Generated on Sat Jun 1 2013 11:40:20 for Rosetta 3.5 by
1.8.4