Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
DisulfPairingLibrary.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/jumping/PairingTemplate
11 /// @brief header file for ClassicAbinitio protocol
12 /// @detailed
13 /// from converting jumping_pairings.cc of rosetta++ into mini
14 ///
15 ///
16 ///
17 /// @author Oliver Lange
18 
19 
20 
21 #ifndef INCLUDED_protocols_jumping_DisulfPairingLibrary_hh
22 #define INCLUDED_protocols_jumping_DisulfPairingLibrary_hh
23 
24 // Unit Headers
25 
26 // Package Headers
27 
28 // Project Headers
29 // AUTO-REMOVED #include <core/pose/Pose.fwd.hh>
30 #include <core/types.hh>
31 
34 
35 // AUTO-REMOVED #include <protocols/jumping/DisulfPairingsList.hh>
36 // AUTO-REMOVED #include <core/scoring/dssp/PairingsList.hh>
37 
38 // ObjexxFCL Headers
39 #include <ObjexxFCL/FArray1D.hh>
40 
41 // Utility headers
42 #include <utility/pointer/ReferenceCount.hh>
43 // AUTO-REMOVED #include <utility/vector1.hh>
44 #include <core/kinematics/RT.hh>
46 
47 //// C++ headers
48 #include <cstdlib>
49 #include <string>
50 #include <map>
51 // AUTO-REMOVED #include <vector>
52 
54 #include <utility/vector1.hh>
55 
56 
57 namespace protocols {
58 namespace jumping {
59 
62 public:
63 
64  //create template with identical set of three upstream and downstream atoms to define their stubs
65  DisulfTemplate( std::string const& c, std::string const& s1, std::string const& s2, std::string const& s3);
66  DisulfTemplate( std::string const& s1, std::string const& s2, std::string const& s3);
68  ObjexxFCL::FArray1D_float phi;
69  ObjexxFCL::FArray1D_float psi;
70  ObjexxFCL::FArray1D_float omega;
71  ObjexxFCL::FArray1D_char secstruct;
74 };
75 
76 
78 public:
79  ///@brief Automatically generated virtual destructor for class deriving directly from ReferenceCount
80  virtual ~BaseDisulfPairingLibrary();
81 
82  //Not currently using base class as copied from PairingLibrary, it's hanging
83  //around because I plan to build into it
84 
85  //virtual void
86  //create_jump_fragments(
87  // int const orientation,
88  // int const pleating,
89  // bool bWithTorsion,
90  // core::fragment::FragDataList &
91  //) const = 0;
92 
93  //virtual void
94  //generate_jump_frags(
95  // PairingsList const& pairings,
96  // core::kinematics::MoveMap const& mm,
97  // bool bWithTorsion,
98  // core::fragment::FragSet& frags_accumulator
99  //) = 0;
100 };
101 
103  typedef std::vector< DisulfTemplate > DisulfTemplateList;
104  typedef std::map< std::pair< int, int >, DisulfTemplateList > DisulfTemplateMap;
105 public:
107  void read_from_file( std::string const& fn);
108  //void read_from_file_no_filters( std::string const& fn); /*Version which does not assume the jump is a beta sheet */
109  //void read_from_database();
110 
111  void
113  bool bWithTorsion,
115  ) const;
116 
117  core::Size
118  size() const {
119  return num_of_pairings_;
120  }
121 
122  void
124  DisulfPairingsList const & pairings,
125  core::kinematics::MoveMap const & mm,
126  bool bWithTorsion,
127  core::fragment::FragSet & frags_accumulator
128  );
129 
130 private:
134 };
135 
136 
138 public:
140 private:
143 };
144 
145 
146 } //protocols
147 } //jumping
148 
149 #endif
150