Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ExtraThreadingMover.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 protocols/comparative_modeling/ExtraThreadingMover.hh
11 /// @brief class for copying extra stuff (ligands,dna,peptides,etc) from a template Pose
12 /// @author James Thompson
13 /// @author TJ Brunette
14 
15 // libRosetta headers
16 
17 #ifndef INCLUDED_protocols_comparative_modeling_ExtraThreadingMover_HH
18 #define INCLUDED_protocols_comparative_modeling_ExtraThreadingMover_HH
19 
20 #include <protocols/moves/Mover.hh>
21 
22 #include <core/types.hh>
23 #include <core/pose/Pose.hh>
24 
27 // AUTO-REMOVED #include <core/fragment/FragSet.hh>
28 // AUTO-REMOVED #include <core/fragment/FragSet.fwd.hh>
29 
30 // C++ headers
31 // AUTO-REMOVED #include <set>
32 #include <string>
33 
34 #include <utility/vector1.hh>
35 
36 
37 
38 namespace protocols {
39 namespace comparative_modeling {
40 
42 
43 public:
44  /// @brief align describes the association between the query and template
45  /// sequences, template_pose is the conformation from which to build a
46  /// threading model.
49  core::pose::Pose const & template_pose,
50  utility::vector1< core::Size > const & residue_selection
51  );
52 
53  virtual ~ExtraThreadingMover() {}
54 
55  /// @brief Returns the index of the query sequence in SequenceAlignment
56  /// object.
57  core::Size query_index() const;
58 
59  /// @brief Returns the index of the template sequence in SequenceAlignment
60  /// object.
61  core::Size template_index() const;
62 
63  /// @brief Returns the SequenceAlignment object used in threading.
65 
66  /// @brief Returns the SequenceMapping between query and template.
68  core::pose::Pose const & query_pose
69  ) const;
70 
71  /// @brief Threads the given Pose onto the template_pose with the
72  /// SequenceAlignment provided.
73  virtual void apply( core::pose::Pose & query_pose );
74 
75  virtual std::string get_name() const;
76 
77 private: // data members
82 }; // ExtraThreadingMover
83 
84 } // comparative_modeling
85 } // protocols
86 
87 #endif