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/RosettaScripts/util.hh
11 /// @brief Utility functions useful in RosettaScripts.
12 /// @author Sarel Fleishman (sarelf@u.washington.edu), Jacob Corn (jecorn@u.washington.edu), Rocco Moretti (rmoretti@u.washington.edu), Eva-Maria Strauch (evas01@uw.edu)
13 
14 #ifndef INCLUDED_protocols_rosetta_scripts_util_hh
15 #define INCLUDED_protocols_rosetta_scripts_util_hh
16 
17 // Unit headers
18 
19 // Project Headers
20 #include <core/pose/Pose.fwd.hh>
23 #include <core/types.hh>
29 // Utillity Headers
30 #include <utility/tag/Tag.fwd.hh>
31 #include <utility/vector1.fwd.hh>
32 
33 // C++ headers
34 #include <string>
35 #include <set>
36 
37 #include <utility/vector1.hh>
38 #include <basic/Tracer.hh>
39 
40 namespace protocols {
41 namespace rosetta_scripts {
42 
43 static basic::Tracer TR("protocols.rosetta_scripts.util.hh");
44 
47 
50 
51 /// allows the transfer of whole taskfactories on the datamap. This way a "base" taskfactory can be created, transferred on the datamap, and
52 /// individual mover's specific taskoperations can be added on top
55 
57 parse_task_operations( std::string const task_list, protocols::moves::DataMap const & data );
58 
60 parse_score_function( utility::tag::TagPtr const tag, protocols::moves::DataMap const & data, std::string const dflt_key="score12" );
61 
62 
63 /// @brief convenience function to access pointers to poses that will be stored
64 /// in the data map at an arbitrary point during an RS protocol
67 
68 void
69 parse_movemap( utility::tag::TagPtr const in_tag, core::pose::Pose const & pose, core::kinematics::MoveMapOP & mm, protocols::moves::DataMap &, bool const reset_movemap = true /* should we turn everything to true at start?*/ );
70 
71 void
73 
75 parse_filter( std::string const filter_name, protocols::filters::Filters_map const & d );
76 
78 parse_mover( std::string const mover_name, protocols::moves::Movers_map const & d );
79 
81 parse_xyz_vector( utility::tag::TagPtr const xyz_vector_tag );
82 
83 
84 /// @brief find source residue that is nearest to res on source. If distance is greater than 2.0A, return 0. chain=0, search all chains, chain=1,2,3 etc. search only that chain
86 find_nearest_res( core::pose::Pose const & source, core::pose::Pose const & target, core::Size const res, core::Size const chain = 0 );
87 
88 /// @brief returns a vector containing all the residues with a given packer state according to the TF
90 residue_packer_states( core::pose::Pose const & pose, core::pack::task::TaskFactoryCOP tf, bool const designable, bool const packable/*but not designable*/ );
91 
92 } // RosettaScripts
93 } // protocols
94 
95 
96 #endif /*INCLUDED_protocols_RosettaScripts_util_HH*/