Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
RotamerRecoveryCreator.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/feature/RotamerRecoveryCreator.hh
11 /// @brief Base class for RotamerRecoveryCreators for the RotamerRecovery load-time factory registration scheme
12 /// @author Matthew O'Meara
13 
14 #ifndef INCLUDED_protocols_rotamer_recovery_RotamerRecoveryCreator_hh
15 #define INCLUDED_protocols_rotamer_recovery_RotamerRecoveryCreator_hh
16 
17 // Unit Headers
19 
20 // Package Headers
24 
25 // Utility Headers
26 #include <utility/pointer/ReferenceCount.hh>
27 
28 #include <string>
29 
30 namespace protocols {
31 namespace rotamer_recovery {
32 
33 /// @brief The Creator class is responsible for creating a particular
34 /// mover class.
36 public:
38  virtual ~RRProtocolCreator() {}
39 
40  virtual RRProtocolOP create_protocol() const = 0;
41  virtual std::string type_name() const = 0;
42 };
43 
45 public:
48 
50  std::string type_name() const;
51 };
52 
54 public:
57 
59  std::string type_name() const;
60 };
61 
63 public:
66 
68  std::string type_name() const;
69 };
70 
72 public:
75 
77  std::string type_name() const;
78 };
79 
81 public:
84 
86  std::string type_name() const;
87 };
88 
90 public:
93 
95  std::string type_name() const;
96 };
97 
98 
99 
100 /// @brief The Creator class is responsible for creating a particular
101 /// mover class.
103 public:
105  virtual ~RRComparerCreator() {}
106 
107  virtual RRComparerOP create_comparer() const = 0;
108  virtual std::string type_name() const = 0;
109 };
110 
112 public:
115 
117  std::string type_name() const;
118 };
119 
121 public:
124 
126  std::string type_name() const;
127 };
128 
130 public:
133 
135  std::string type_name() const;
136 };
137 
138 
139 
140 /// @brief The Creator class is responsible for creating a particular
141 /// mover class.
143 public:
145  virtual ~RRReporterCreator() {}
146 
147  virtual RRReporterOP create_reporter() const = 0;
148  virtual std::string type_name() const = 0;
149 };
150 
152 public:
155 
157  std::string type_name() const;
158 };
159 
161 public:
164 
166  std::string type_name() const;
167 };
168 
170 public:
173 
175  std::string type_name() const;
176 };
177 
178 
179 
180 } //namespace
181 } //namespace
182 
183 #endif