Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PeptideStapleDesignMover.cc
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/protein_interface_design/movers/PeptideStapleDesignMover.cc
11 /// @brief
12 /// @author Sarel Fleishman (sarelf@u.washington.edu), Jacob Corn (jecorn@u.washington.edu)
13 
14 // Unit headers
17 
18 // Package headers
19 
20 // Project headers
22 #include <core/pose/selection.hh>
23 #include <utility/tag/Tag.hh>
24 #include <basic/Tracer.hh>
25 
27 #include <utility/vector0.hh>
28 #include <utility/vector1.hh>
29 
30 
31 namespace protocols {
32 namespace protein_interface_design {
33 namespace movers {
34 
35 using namespace core;
36 using namespace std;
37 using namespace core::scoring;
38 using namespace protocols::moves;
39 
40 static basic::Tracer TR( "protocols.protein_interface_design.movers.PeptideStapleDesignMover" );
41 
44 {
46 }
47 
50  return new PeptideStapleDesignMover;
51 }
52 
55 {
56  return "StapleMover";
57 }
58 
60  protocols::moves::Mover( PeptideStapleDesignMoverCreator::mover_name() )
61 {}
62 
64  protocols::moves::Mover( PeptideStapleDesignMoverCreator::mover_name() )
65 {
66  stapler_ = new protocols::simple_moves::PeptideStapleMover( seqpos, staple_gap );
67 }
68 
70  //utility::pointer::ReferenceCount(),
71  protocols::moves::Mover( init )
72 {
74 }
75 
77 
80  return( protocols::moves::MoverOP( new PeptideStapleDesignMover( *this ) ));
81 }
82 
84 {
85  stapler_->apply( pose );
86 }
87 
91 }
92 
93 void
95 {
96  core::Size const staple_start( core::pose::get_resnum( tag, pose ));
97  core::Size const gap( tag->getOption<core::Size>( "staple_gap", 4 ) );
98  stapler_ = new protocols::simple_moves::PeptideStapleMover( staple_start, gap );
99 }
100 
101 } //movers
102 } //protein_interface_design
103 } //protocols
104