Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
AntibodyModelerProtocol.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
6 // (c) under license. The Rosetta software is developed by the contributing
7 // (c) members of the Rosetta Commons. For more information, see
8 // (c) http://www.rosettacommons.org. Questions about this can be addressed to
9 // (c) University of Washington UW TechTransfer, email:license@u.washington.edu
10 
11 /// @file protocols/antibody2/AntibodyModelerProtocol.hh
12 /// @brief Build a homology model of an antibody2
13 /// @detailed
14 ///
15 ///
16 /// @author Jianqing Xu ( xubest@gmail.com )
17 
18 
19 #ifndef INCLUDED_protocols_antibody2_AntibodyModelerProtocol_hh
20 #define INCLUDED_protocols_antibody2_AntibodyModelerProtocol_hh
21 
22 #include <utility/vector1.hh>
23 #include <core/types.hh>
24 #include <core/pose/Pose.hh>
27 #include <protocols/moves/Mover.hh>
31 
32 
33 
34 using namespace core;
35 namespace protocols {
36 namespace antibody2 {
37 
39 public:
40 
41  // default constructor
43 
44  // default destructor
46 
47  virtual protocols::moves::MoverOP clone() const;
48 
49  /// @brief Assigns default values to primitive members
50  void set_default();
51 
52  /// @brief Instantiates non-primitive members based on the value of the primitive members
53  void sync_objects_with_flags();
54 
55  virtual void apply( pose::Pose & pose );
56 
57  virtual std::string get_name() const;
58 
59  /// @brief Associates relevant options with the AntibodyModeler class
60  static void register_options();
61 
62  // simple inline setters
63  void set_BenchMark(bool setting) {
64  benchmark_ = setting;
65  }
66  void set_ModelH3(bool setting) {
67  model_h3_ = setting;
68  }
69  void set_SnugFit(bool setting) {
70  snugfit_ = setting;
71  }
72  void set_refine_h3(bool setting){
73  refine_h3_ = setting;
74  }
75  void set_H3Filter(bool setting) {
76  h3_filter_ = setting;
77  }
78  void set_CterInsert (bool setting) {
79  cter_insert_ = setting;
80  }
81  void set_sc_min(bool setting) {
82  sc_min_ = setting ;
83  }
84  void set_rt_min(bool setting) {
85  rt_min_ = setting ;
86  }
87  void set_flank_residue_min (bool setting) {
88  flank_residue_min_ = setting;
89  }
90  void set_perturb_type(std::string remodel) {
91  h3_perturb_type_ = remodel;
92  }
93  void set_refine_type (std::string refine) {
94  h3_refine_type_ = refine;
95  }
96  void set_H3Filter_Tolerance(core::Size const number){
97  h3_filter_tolerance_ = number;
98  }
99  void set_cst_weight ( core::Real const cst_weight){
100  cst_weight_ = cst_weight;
101  }
102  void set_use_constraints(bool const use_csts){
103  use_csts_ = use_csts;
104  }
105  void set_constrain_cter(bool const setting){
106  constrain_cter_ = setting;
107  }
108  void set_constrain_vlvh_qq(bool const setting){
109  constrain_vlvh_qq_ = setting;
110  }
111  void set_flank_residue_size(core::Real const flank_residue_size) {
112  flank_residue_size_ = flank_residue_size;
113  }
114  void set_middle_pack_min( bool middle_pack_min) {
115  middle_pack_min_ = middle_pack_min;
116  }
117  void set_bad_nter(bool setting){
118  bad_nter_ = setting;
119  }
120 
121 
122  void display_constraint_residues( pose::Pose & pose );
123 
124  void show( std::ostream & out=std::cout );
125  friend std::ostream & operator<<(std::ostream& out, const AntibodyModelerProtocol & ab_m );
126 
127 
128 
129 private:
130  bool model_h3_;
131  bool snugfit_;
136  bool sc_min_;
137  bool rt_min_;
138  bool camelid_;
146  bool bad_nter_;
147  bool use_csts_;
148  bool constrain_vlvh_qq_, constrain_cter_;
149 
150  // Benchmark mode for shorter_cycles
152 
153  bool user_defined_; // for constructor options passed to init
154 
157 
158 
159  // used as a flag to enable reading in of cst files
161 
162  // score functions
167 
168  // constraint set mover
170 
171  // external objects
173 
174 
175  /// @brief Assigns user specified values to primitive members using command line options
176  void init_from_options();
177 
178  /// @brief Performs the portion of setup of non-primitive members that requires a pose - called on apply
179  void finalize_setup( core::pose::Pose & pose );
180 
181  /// @brief Sets up the instance of AntibodyModeler and initializes all members based on values passed in at construction
182  /// or via the command line.
183  void init();
184 
185  void setup_objects();
186 
187 }; // class
188 
189 
190 
191 
192 } // namespace antibody2
193 } // namespace protocols
194 
195 #endif
196