Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ConstraintGraph.cc
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/constraints/ConstraintsEnergyContainer.hh
11 /// @brief Constraints Energy Container class declaration
12 /// @author Andrew Leaver-Fay
13 
14 // Unit headers
16 
17 
18 namespace core {
19 namespace scoring {
20 namespace constraints {
21 
23 :
24  parent( owner, node_id )
25 {}
26 
27 
29 {}
30 
31 void
33 {
34  parent::copy_from( source ); // I can't remember if this is supposed to be recursive
35 }
36 
37 Size
39 {
40  return sizeof ( ConstraintNode );
41 }
42 
43 Size
45 {
47 }
48 
50 {}
51 
52 ConstraintEdge::ConstraintEdge( graph::Graph * owner, Size first_node_ind, Size second_node_ind)
53 :
54  parent( owner, first_node_ind, second_node_ind ),
55  rna_bond_geometry_energy_( 0.0 ),
56  atom_pair_constraint_energy_( 0.0 ),
57  coordinate_constraint_energy_( 0.0 ),
58  angle_constraint_energy_( 0.0 ),
59  dihedral_constraint_energy_( 0.0 ),
60  backbone_stub_constraint_energy_( 0.0 ),
61  res_type_linking_constraint_energy_( 0.0 ),
62  energy_computed_( false )
63 {
64 }
65 
67 :
68  parent( owner, example_edge.get_first_node_ind(), example_edge.get_second_node_ind() ),
69  rna_bond_geometry_energy_( example_edge.rna_bond_geometry_energy_ ),
70  atom_pair_constraint_energy_( example_edge.atom_pair_constraint_energy_ ),
71  coordinate_constraint_energy_( example_edge.coordinate_constraint_energy_ ),
72  angle_constraint_energy_( example_edge.angle_constraint_energy_ ),
73  dihedral_constraint_energy_( example_edge.dihedral_constraint_energy_ ),
74  backbone_stub_constraint_energy_( example_edge.backbone_stub_constraint_energy_ ),
75  res_type_linking_constraint_energy_( example_edge.res_type_linking_constraint_energy_ ),
76  energy_computed_( example_edge.energy_computed_ )
77 {}
78 
79 void
81 {
82  ConstraintEdge const * cst_source = static_cast< ConstraintEdge const * > ( source );
83 
91  energy_computed_ = cst_source->energy_computed_;
92 }
93 
94 Size
96 {
97  return sizeof ( ConstraintEdge );
98 }
99 
100 Size
102 {
104 }
105 
106 void
108 {
109  rna_bond_geometry_energy_ = setting;
110 }
111 
112 void
114 {
116 }
117 
118 void
120 {
122 }
123 
124 void
126 {
127  angle_constraint_energy_ = setting;
128 }
129 
130 void
132 {
133  dihedral_constraint_energy_ = setting;
134 }
135 
136 void
138 {
140 }
141 
142 void
144 {
146 }
147 
148 Energy
150 {
152 }
153 
154 Energy
156 {
158 }
159 
160 Energy
162 {
164 }
165 
166 Energy
168 {
170 }
171 
172 Energy
174 {
176 }
177 
178 Energy
180 {
182 }
183 
184 Energy
186 {
188 }
189 
190 
191 
193 {
194  energy_computed_ = setting;
195 }
196 
198 {
199  return energy_computed_;
200 }
201 
202 
204 
206 :
207  parent()
208 {
209  set_num_nodes( num_nodes );
210 }
211 
213  parent::operator = ( source );
214 }
215 
218 {
219  parent::operator = ( source );
220  return *this;
221 }
222 
224 
226 {
227  delete edge;
228 }
229 
230 
231 Size
233 {
234  return sizeof( ConstraintGraph );
235 }
236 
237 Size
239 {
241 }
242 
245 {
246  return new ConstraintNode( this, node_index );
247 }
248 
251 {
252  return new ConstraintEdge( this, index1, index2 );
253 }
254 
255 
258 {
259  return new ConstraintEdge(
260  this,
261  * ( static_cast< ConstraintEdge const * > (example_edge) )
262  );
263 }
264 
265 
266 
267 }
268 }
269 }