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
NamedAtomPairConstraint.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
#ifndef INCLUDED_core_scoring_constraints_NamedAtomPairConstraint_hh
14
#define INCLUDED_core_scoring_constraints_NamedAtomPairConstraint_hh
15
16
#include <
core/scoring/constraints/AtomPairConstraint.hh
>
17
#include <
core/scoring/constraints/NamedAtomPairConstraint.fwd.hh
>
18
19
#include <
core/scoring/constraints/Constraint.hh
>
20
#include <
core/scoring/constraints/Func.hh
>
21
// AUTO-REMOVED #include <core/scoring/constraints/XYZ_Func.hh>
22
23
#include <
core/scoring/ScoreType.hh
>
24
// AUTO-REMOVED #include <core/scoring/EnergyMap.hh>
25
#include <
core/scoring/ScoreFunction.fwd.hh
>
26
27
28
#include <
core/pose/Pose.fwd.hh
>
29
#include <
core/id/AtomID.hh
>
30
#include <
core/id/NamedAtomID.hh
>
31
32
#include <utility/vector1.hh>
33
34
35
36
// C++ Headers
37
//#include <cstdlib>
38
//#include <iostream>
39
//#include <map>
40
//#include <utility>
41
42
43
namespace
core {
44
namespace
scoring {
45
namespace
constraints {
46
47
/* this helper class may have become obsoleted by the remapped_clone() method of ConstraintSet
48
but since it is still in use by abinitio::Template I haven't removed it.
49
*/
50
class
Obsolet_NamedAtomPairConstraint
:
public
utility::pointer::ReferenceCount
{
51
typedef
core::scoring::constraints::AtomPairConstraintOP
AtomPairConstraintOP
;
52
typedef
core::id::NamedAtomID
NamedAtomID
;
53
typedef
core::id::SequenceMapping
SequenceMapping
;
54
public
:
55
///@brief Automatically generated virtual destructor for class deriving directly from ReferenceCount
56
virtual
~Obsolet_NamedAtomPairConstraint
();
57
Obsolet_NamedAtomPairConstraint
(
AtomPairConstraintOP
,
core::pose::Pose
const
& );
58
Obsolet_NamedAtomPairConstraint
(
NamedAtomID
const
&
atom1
,
NamedAtomID
const
&
atom2
,
AtomPairConstraintOP
cst );
59
AtomPairConstraintOP
mapto
(
SequenceMapping
const
&,
core::pose::Pose
const
& )
const
;
60
Obsolet_NamedAtomPairConstraintOP
mapto
(
SequenceMapping
const
& )
const
;
61
AtomPairConstraintOP
mapto
(
core::pose::Pose
const
& )
const
;
62
63
friend
std::ostream&
operator<<
( std::ostream& out,
Obsolet_NamedAtomPairConstraint
const
& cst );
64
65
id::NamedAtomID
const
&
atom1
() {
66
return
atom1_
;
67
}
68
69
id::NamedAtomID
const
&
atom2
() {
70
return
atom2_
;
71
}
72
73
private
:
74
75
id::NamedAtomID
atom1_
;
76
id::NamedAtomID
atom2_
;
77
AtomPairConstraintOP
cst_
;
78
};
79
80
class
NamedAtomPairConstraint
:
public
AtomPairConstraint
{
81
public
:
82
NamedAtomPairConstraint
(
83
id::NamedAtomID
const
& a1,
84
id::NamedAtomID
const
& a2,
85
FuncOP
func
,
86
ScoreType
scoretype =
atom_pair_constraint
87
) :
88
AtomPairConstraint
( id::
AtomID
( 0, a1.rsd() ), id::
AtomID
( 0, a2.rsd() ), func, scoretype ),
89
named_atom1_
( a1 ),
90
named_atom2_
( a2 ),
91
type1_id_
( 0 ),
92
type2_id_
( 0 )
93
{}
94
95
virtual
ConstraintOP
clone
()
const
{
96
return
new
NamedAtomPairConstraint
(
named_atom1_
,
named_atom2_
,
func_
,
score_type
() );
97
}
98
99
/// @brief Copies the data from this Constraint into a new object and returns an OP
100
/// atoms are mapped to atoms with the same name in dest pose ( e.g. for switch from centroid to fullatom )
101
/// if a sequence_mapping is present it is used to map residue numbers .. NULL = identity mapping
102
/// to the new object. Intended to be implemented by derived classes.
103
virtual
ConstraintOP
remapped_clone
(
pose::Pose
const
& src,
pose::Pose
const
& dest,
id::SequenceMappingCOP
map=NULL )
const
;
104
105
106
//@brief translates the atom-names into numbers
107
virtual
void
setup_for_scoring
(
XYZ_Func
const
&,
ScoreFunction
const
& )
const
;
108
109
virtual
void
show_def
( std::ostream& out,
pose::Pose
const
& pose )
const
;
110
void
show_def_nopose
( std::ostream& out )
const
;
111
112
virtual
void
read_def
( std::istream& in,
pose::Pose
const
& pose,
FuncFactory
const
& func_factory );
113
// //@brief set constraint such that the pose doesn't violate it.
114
// virtual void steal( pose::Pose& );
115
116
private
:
117
id::NamedAtomID
named_atom1_
;
118
id::NamedAtomID
named_atom2_
;
119
core::Size
type1_id_
;
120
core::Size
type2_id_
;
121
//@brief this could contain a checksum made from the "annotated-sequence"
122
Size
pose_chemical_checksum_
;
123
};
124
125
126
}
127
}
128
}
129
130
#endif
Generated on Sat Jun 1 2013 11:35:41 for Rosetta 3.5 by
1.8.4