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
core
pack
task
TaskFactory.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 core/pack/task/PackerTaskFactory.hh
11
/// @brief Factory class for the creation and initialization of PackerTask objects
12
/// @author Andrew Leaver-Fay (leaverfa@email.unc.edu)
13
14
#ifndef INCLUDED_core_pack_task_TaskFactory_hh
15
#define INCLUDED_core_pack_task_TaskFactory_hh
16
17
// Unit Headers
18
#include <
core/pack/task/TaskFactory.fwd.hh
>
19
#include <
core/types.hh
>
20
21
// Package Headers
22
#include <
core/pack/task/PackerTask.hh
>
23
#include <
core/pack/task/operation/TaskOperation.fwd.hh
>
24
25
// Project Headers
26
// AUTO-REMOVED #include <core/chemical/ResidueTypeSet.fwd.hh>
27
#include <
core/pose/Pose.fwd.hh
>
28
29
// Utility Headers
30
#include <utility/pointer/ReferenceCount.hh>
31
32
// C++ Headers
33
#include <list>
34
35
#include <utility/vector1.hh>
36
37
38
namespace
core {
39
namespace
pack {
40
namespace
task {
41
42
/// @brief Factory class for the creation and initialization of PackerTask objects
43
class
TaskFactory
:
public
utility::pointer::ReferenceCount
44
{
45
public
:
46
typedef
utility::pointer::ReferenceCount
parent
;
47
typedef
operation::TaskOperation
TaskOperation
;
48
typedef
operation::TaskOperationOP
TaskOperationOP
;
49
typedef
operation::TaskOperationCOP
TaskOperationCOP
;
50
typedef
operation::TaskOperationSP
TaskOperationSP
;
51
typedef
std::list< TaskOperationOP >
OperationList
;
52
typedef
OperationList::const_iterator
const_iterator
;
53
54
public
:
55
56
TaskFactory
();
57
TaskFactory
(
TaskFactory
const
& );
58
virtual
~TaskFactory
();
59
60
TaskFactory
const
&
operator =
(
TaskFactory
const
& );
61
62
virtual
TaskFactoryOP
clone
()
const
;
63
64
/// @brief Non static version.
65
PackerTaskOP
66
create_task_and_apply_taskoperations
(
pose::Pose
const
& pose )
const
;
67
68
void
modify_task
(
core::pose::Pose
const
& pose,
PackerTaskOP
task )
const
;
69
70
/// @brief clones the input task, and pushes it back into the list
71
void
72
push_back
(
TaskOperationCOP
);
73
74
void
75
push_back
(
TaskOperationSP
);
76
77
/// @brief begin iterator of operations_
78
const_iterator
79
begin
()
const
;
80
81
/// @brief end iterator of operations_
82
const_iterator
83
end
()
const
;
84
85
void
86
clear
();
87
88
/// @brief return the size of the operations_ list
89
core::Size
size
()
const
;
90
91
public
:
92
/// @brief Static construction of a task
93
static
94
PackerTaskOP
95
create_packer_task
(
pose::Pose
const
& );
96
97
private
:
98
99
void
copy_operations
(
TaskFactory
const
& src );
100
101
private
:
102
OperationList
operations_
;
103
104
};
105
106
}
//namespace task
107
}
//namespace pack
108
}
//namespace core
109
110
111
#endif
Generated on Sat Jun 1 2013 11:34:07 for Rosetta 3.5 by
1.8.4