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
jd2
JobOutputterCreator.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/jd2/JobOutputterCreator.hh
11
/// @brief Base class for JobOutputterCreators for the JobOutputter load-time factory registration scheme
12
/// @author Steven Lewis smlewi@gmail.com, Brian Weitzner brian.weitzner@gmail.com
13
14
#ifndef INCLUDED_protocols_jd2_JobOutputterCreator_hh
15
#define INCLUDED_protocols_jd2_JobOutputterCreator_hh
16
17
// Unit Headers
18
#include <
protocols/jd2/JobOutputter.fwd.hh
>
19
20
// Utility Headers
21
#include <utility/pointer/ReferenceCount.hh>
22
23
// c++ headers
24
#include <string>
25
26
namespace
protocols {
27
namespace
jd2 {
28
29
/// @brief Abstract base class for a JobOutputter factory; the Creator class is responsible for
30
/// creating a particular mover class.
31
class
JobOutputterCreator
:
public
utility::pointer::ReferenceCount
32
{
33
public
:
34
JobOutputterCreator
();
35
virtual
~JobOutputterCreator
();
36
37
virtual
JobOutputterOP
create_JobOutputter
()
const
= 0;
38
virtual
std::string
keyname
()
const
= 0;
39
};
40
41
typedef
utility::pointer::owning_ptr< JobOutputterCreator >
JobOutputterCreatorOP
;
42
typedef
utility::pointer::owning_ptr< JobOutputterCreator const >
JobOutputterCreatorCOP
;
43
44
}
//namespace jd2
45
}
//namespace protocols
46
47
#endif
Generated on Sat Jun 1 2013 11:54:52 for Rosetta 3.5 by
1.8.4