Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
MultiThreadingMover.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/MultiThreadingMover.hh
11 /// @brief
12 /// @author James Thompson
13 
14 // libRosetta headers
15 
16 #ifndef INCLUDED_protocols_comparative_modeling_MultiThreadingMover_HH
17 #define INCLUDED_protocols_comparative_modeling_MultiThreadingMover_HH
18 
19 #include <protocols/moves/Mover.hh>
20 
21 #include <core/types.hh>
22 #include <core/pose/Pose.hh>
23 
25 #include <core/fragment/FragSet.hh>
27 
28 // C++ headers
29 #include <string>
30 #include <utility/vector1.hh>
31 
32 namespace protocols {
33 namespace comparative_modeling {
34 
36 
37 public:
41 
42 public:
43 
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.
48  Alignments const & aligns,
49  Poses const & template_poses
50  );
51 
52  virtual ~MultiThreadingMover() {}
53 
54  /// @brief Returns the SequenceAlignments used in threading.
55  //Alignments alignment();
56 
57  /// @brief Manipulate the SequenceAlignments associated with this object.
58  //void alignments( Alignments alns );
59  //void add_alignment( Alignment const & aln );
60  //void clear_alignments();
61 
62  //void template_poses( Poses poses );
63  //void add_template_pose( core::pose::Pose const & template_pose );
64  //void clear_template_poses();
65 
66  void build_loops( bool setting );
67 
68  void randomize_loop_coords( bool setting );
69 
70  void repack_query( bool setting );
71 
72  bool build_loops() const;
73 
74  bool repack_query() const;
75 
76  bool randomize_loop_coords();
77 
78  void min_loop_size( core::Size const new_size );
79 
80  Size min_loop_size() const;
81 
83 
84  void frag_libs(
86  );
87 
88  /// @brief Threads the given Pose onto the template_pose with the
89  /// SequenceAlignment provided.
90  virtual void apply( core::pose::Pose & query_pose );
91 
92  virtual std::string get_name() const;
93 
94 private:
95  void check_internals() const;
96 
97 private: // data members
104 
106 }; // MultiThreadingMover
107 
108 } // comparative_modeling
109 } // protocols
110 
111 #endif