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
constraints
XYZ_Func.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
11
/// @brief
12
13
14
#ifndef INCLUDED_core_scoring_constraints_XYZ_Func_hh
15
#define INCLUDED_core_scoring_constraints_XYZ_Func_hh
16
17
#include <
core/scoring/constraints/XYZ_Func.fwd.hh
>
18
19
#include <
core/types.hh
>
20
21
#include <
core/conformation/Residue.fwd.hh
>
22
#include <
core/conformation/Conformation.fwd.hh
>
23
#include <
core/id/AtomID.fwd.hh
>
24
25
//Utility Headers
26
27
// C++ Headers
28
29
namespace
core {
30
namespace
scoring {
31
namespace
constraints {
32
33
//////////////////////////////////////////////////////////////////////////////////
34
//////////////////////////////////////////////////////////////////////////////////
35
/// helper classes to reuse code
36
//////////////////////////////////////////////////////////////////////////////////
37
//////////////////////////////////////////////////////////////////////////////////
38
39
/// just a simple class that takes an AtomID and returns a Vector (position)
40
class
XYZ_Func
{
41
public
:
42
typedef
id::AtomID
AtomID
;
43
typedef
conformation::Residue
Residue
;
44
typedef
conformation::Conformation
Conformation
;
45
46
public
:
47
48
virtual
49
Vector
const
&
50
operator()
(
AtomID
const
&
id
)
const
= 0;
51
52
53
virtual
54
Residue
const
&
55
residue
(
Size
seqpos )
const
= 0;
56
57
virtual
58
~XYZ_Func
();
59
};
60
61
62
class
ResidueXYZ
:
public
XYZ_Func
{
63
public
:
64
65
ResidueXYZ
(
Residue
const
& rsd_in );
66
67
virtual
68
Vector
const
&
69
operator()
(
AtomID
const
&
id
)
const
;
70
71
virtual
72
Residue
const
&
73
residue
(
Size
seqpos )
const
;
74
75
virtual
76
~ResidueXYZ
();
77
78
private
:
79
Residue
const
&
rsd_
;
80
81
};
82
83
class
ResiduePairXYZ
:
public
XYZ_Func
{
84
public
:
85
86
ResiduePairXYZ
(
Residue
const
& rsd1_in,
Residue
const
& rsd2_in );
87
88
virtual
89
Vector
const
&
90
operator()
(
AtomID
const
&
id
)
const
;
91
92
virtual
93
Residue
const
&
94
residue
(
Size
seqpos )
const
;
95
96
virtual
97
~ResiduePairXYZ
();
98
99
private
:
100
Residue
const
&
rsd1_
;
101
Residue
const
&
rsd2_
;
102
103
};
104
105
class
ConformationXYZ
:
public
XYZ_Func
{
106
public
:
107
108
ConformationXYZ
(
Conformation
const
& conformation_in );
109
110
virtual
111
Vector
const
&
112
operator()
(
AtomID
const
&
id
)
const
;
113
114
virtual
115
Residue
const
&
116
residue
(
Size
seqpos )
const
;
117
118
virtual
119
~ConformationXYZ
();
120
121
private
:
122
Conformation
const
&
conformation_
;
123
124
};
125
126
// class BBTorsionXYZ : public ResidueXYZ {
127
//
128
// public:
129
//
130
// virtual
131
// ~BBTorsionXYZ;
132
//
133
// private:
134
// Residue const & rsd_;
135
// };
136
137
138
}
// constraints
139
}
// scoring
140
}
// core
141
142
#endif
Generated on Sat Jun 1 2013 11:35:57 for Rosetta 3.5 by
1.8.4