Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
util.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 src/protocols/comparative_modeling/util.hh
11 /// @brief small bundle of utilities for comparative modeling
12 /// @author James Thompson
13 
14 #ifndef INCLUDED_protocols_comparative_modeling_util_hh
15 #define INCLUDED_protocols_comparative_modeling_util_hh
16 
17 #include <core/types.hh>
18 #include <core/pose/Pose.fwd.hh>
20 
22 
26 #include <utility/vector1.hh>
27 #include <map>
28 
29 namespace protocols {
30 namespace comparative_modeling {
31 
33  core::Size nres,
35  core::Size const min_loop_size
36 );
37 
38 /// @brief Identifies consecutive stretches of unaligned residues by scanning
39 /// the alignment. Each unaligned region is guaranteed to have length at least
40 /// <min_size>. Aligned regions share this property as well, and can be obtained
41 /// by calling the invert() method on the output parameter <unaligned_regions>.
43  const core::Size num_residues,
44  const core::Size min_size,
45  const core::sequence::SequenceAlignment& alignment,
46  protocols::loops::LoopsOP & unaligned_regions);
47 
49  core::Size nres1,
51  core::Size nres2,
53  core::Size const min_loop_size
54 );
55 
57  core::Size nres,
58  utility::vector1< core::Size > const & unaligned_residues,
59  core::Size min_loop_size
60 );
61 
63  core::pose::Pose & query_pose,
64  core::Size min_loop_size
65 );
66 
68  core::pose::Pose & query_pose,
69  core::Size const min_loop_size,
70  core::Size const max_times,
71  std::string const & loop_mover_name
72 );
73 
74 /// @brief Function for stealing ligands from a given Pose
75 /// and adding them to source_pose.
76 /// @detailed: The parameters are: @arg dest_pose Pose to which
77 /// ligands are added.
78 /// @arg source_pose_in Pose from which ligands and orientations
79 /// are taken.
80 /// @arg anchor_atom_dest anchor atom providing reference in
81 /// dest_pose for ligand orientation.
82 /// @arg anchor_atom_source anchor atom providing reference in
83 /// source_pose for ligand orientation.
84 /// @arg ligand_indices list of AtomID entries for ligand, one per
85 /// ligand. Ligand orientation is determined by orientation between
86 /// anchor_atom_source and each ligand AtomID.
87 void steal_ligands(
88  core::pose::Pose & dest_pose,
89  core::pose::Pose const & source_pose_in,
90  core::id::NamedAtomID const anchor_atom_dest,
91  core::id::NamedAtomID const anchor_atom_source,
93 );
94 
95 void initialize_ss( core::pose::Pose & pose );
96 
99 
100 bool loops_are_closed( core::pose::Pose & pose );
101 
102 std::map< std::string, core::pose::Pose >
104  utility::vector1< std::string > const & fn_list
105 );
106 
107 AlignmentSet
109 
111  core::pose::Pose & query_pose,
112  core::id::AtomID_Mask const & selected
113 );
114 
115 
116 } // comparative_modeling
117 } // protocols
118 
119 #endif