Rosetta 3.5
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
src
protocols
moves
MoverCreator.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/moves/MoverCreator.hh
11
/// @brief Base class for MoverCreators for the Mover load-time factory registration scheme
12
/// @author Andrew Leaver-Fay
13
14
#ifndef INCLUDED_protocols_moves_MoverCreator_hh
15
#define INCLUDED_protocols_moves_MoverCreator_hh
16
17
// Unit Headers
18
#include <
protocols/moves/Mover.fwd.hh
>
19
20
// Utility Headers
21
#include <utility/pointer/ReferenceCount.hh>
22
23
// c++ headers
24
25
namespace
protocols {
26
namespace
moves {
27
28
/// @brief Abstract base class for a Mover factory; the Creator class is responsible for
29
/// creating a particular mover class.
30
class
MoverCreator
:
public
utility::pointer::ReferenceCount
31
{
32
public
:
33
MoverCreator
();
34
virtual
~MoverCreator
();
35
36
virtual
MoverOP
create_mover
()
const
= 0;
37
virtual
std::string
keyname
()
const
= 0;
38
};
39
40
typedef
utility::pointer::owning_ptr< MoverCreator >
MoverCreatorOP
;
41
typedef
utility::pointer::owning_ptr< MoverCreator const >
MoverCreatorCOP
;
42
43
}
//namespace moves
44
}
//namespace protocols
45
46
#endif
Generated on Sat Jun 1 2013 12:00:27 for Rosetta 3.5 by
1.8.4