Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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 
18 
21 // AUTO-REMOVED #include <core/scoring/constraints/XYZ_Func.hh>
22 
24 // AUTO-REMOVED #include <core/scoring/EnergyMap.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 */
54 public:
55  ///@brief Automatically generated virtual destructor for class deriving directly from ReferenceCount
62 
63  friend std::ostream& operator<< ( std::ostream& out, Obsolet_NamedAtomPairConstraint const& cst );
64 
66  return atom1_;
67  }
68 
70  return atom2_;
71  }
72 
73 private:
74 
78 };
79 
81 public:
83  id::NamedAtomID const& a1,
84  id::NamedAtomID const& a2,
85  FuncOP func,
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 {
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:
121  //@brief this could contain a checksum made from the "annotated-sequence"
123 };
124 
125 
126 }
127 }
128 }
129 
130 #endif