Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
SingleMotif.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 SingleMotif.hh
11 /// @brief Header for interaction motif between residues
12 /// @author havranek, sthyme (sthyme@gmail.com)
13 
14 #ifndef INCLUDED_protocols_motifs_SingleMotif_hh
15 #define INCLUDED_protocols_motifs_SingleMotif_hh
16 
17 // Unit Headers
19 
20 // Package Headers
22 
23 #include <utility/vector1.hh>
24 
25 
26 // Project Headers
27 
28 // Utility Headers
29 
30 // C++ Headers
31 
32 namespace protocols {
33 namespace motifs {
34 
35 class SingleMotif : public Motif {
36 
37 public:
38  // This is a 'by hand' way to associate a jump with the coordinate system-forming
39  // atoms.
41  std::string const resname1,
42  std::string const res1_atom1,
43  std::string const res1_atom2,
44  std::string const res1_atom3,
45  std::string const resname2,
46  std::string const res2_atom1,
47  std::string const res2_atom2,
48  std::string const res2_atom3,
49  core::kinematics::Jump const & orientation
50  );
51 
52  // This constructor gets the jump for you - PDB numbering + chain id
54  core::pose::Pose const & pose,
55  Size const pdb_residue_position_1,
56  char const pdb_chain_id1,
57  std::string const res1_atom1,
58  std::string const res1_atom2,
59  std::string const res1_atom3,
60  Size const pdb_residue_position_2,
61  char const pdb_chain_id2,
62  std::string const res2_atom1,
63  std::string const res2_atom2,
64  std::string const res2_atom3
65  );
66 
67  // This constructor takes a jump, used for ligand motifs
69  std::string const resname1,
70  std::string const res1_atom1,
71  std::string const res1_atom2,
72  std::string const res1_atom3,
73  std::string const res2_atom1,
74  std::string const res2_atom2,
75  std::string const res2_atom3,
76  core::kinematics::Jump const & orientation
77  );
78 
79  // This constructor gets the jump for you - Rosetta numbering
81  core::pose::Pose const & pose,
82  Size const pdb_residue_position_1,
83  std::string const res1_atom1,
84  std::string const res1_atom2,
85  std::string const res1_atom3,
86  Size const pdb_residue_position_2,
87  std::string const res2_atom1,
88  std::string const res2_atom2,
89  std::string const res2_atom3
90  );
91 
92  // This constructor forms a motif using preset atom types from a static map
94  core::conformation::Residue const & res1,
95  core::conformation::Residue const & res2
96  );
97 
98  // Copy constructor
100  SingleMotif const & src
101  );
102 
103  // Overloaded operator for output
104  friend std::ostream & operator <<(
105  std::ostream & os,
106  SingleMotif const & mot
107  );
108 
109 };
110 
111 }
112 }
113 
114 #endif // INCLUDED_protocols_motifs_SingleMotif