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
fragment
TorsionSRFD.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
// :noTabs=false:tabSize=4:indentSize=4:
4
//
5
// (c) Copyright Rosetta Commons Member Institutions.
6
// (c) This file is part of the Rosetta software suite and is made available under license.
7
// (c) The Rosetta software is developed by the contributing members of the Rosetta Commons.
8
// (c) For more information, see http://www.rosettacommons.org. Questions about this can be
9
// (c) addressed to University of Washington UW TechTransfer, email: license@u.washington.edu.
10
11
/// @file core/fragments/FragData.hh
12
/// @brief A fragment as list of SingleResidue Data
13
/// @author Oliver Lange (olange@u.washington.edu)
14
/// @date Wed Oct 20 12:08:31 2007
15
///
16
#ifndef INCLUDED_core_fragment_TorsionSRFD_HH
17
#define INCLUDED_core_fragment_TorsionSRFD_HH
18
19
// Unit Headers
20
#include <
core/fragment/SingleResidueFragData.hh
>
21
22
// Package Headers
23
#include <
core/fragment/Frame.fwd.hh
>
24
25
// Project Headers
26
#include <
core/pose/Pose.hh
>
27
#include <
core/kinematics/MoveMap.fwd.hh
>
28
#include <
core/types.hh
>
29
30
#include <
core/conformation/Residue.hh
>
// for ResidueSRFD
31
32
#include <
core/kinematics/types.hh
>
33
#include <
core/id/TorsionID.hh
>
34
35
// Utility headers
36
#include <utility/vector1.hh>
37
#include <utility/pointer/ReferenceCount.hh>
38
39
namespace
core {
40
namespace
fragment {
41
42
// WARNING: this class has not been maintained ... it is a sketch of how one could do non-backbone Torsions in fragments.. but
43
// it has to be brought up-to date ...
44
45
// that is like TorsionID without the seqpos
46
typedef
std::pair < id::TorsionType, Size >
TorsionInfo
;
47
48
typedef
utility::vector1 < TorsionInfo >
TorsionInfoList
;
49
50
class
TorsionInfoSet
;
51
typedef
utility::pointer::owning_ptr< TorsionInfoSet const >
TorsionInfoSetCOP
;
52
53
class
TorsionInfoSet
:
public
utility::pointer::ReferenceCount
{
54
public
:
55
id::TorsionID
get_full_id
(
Size
seq_pos,
Size
dof_id )
const
{
56
TorsionInfo
const
& t_info(
list_
[ dof_id ] );
57
return
id::TorsionID
( seq_pos, t_info.first, t_info.second);
58
};
59
60
Size
size
()
const
61
{
return
list_
.size(); };
62
63
private
:
64
TorsionInfoList
list_
;
65
};
66
67
/*
68
class TorsionSRFD : public BaseTorsionSRFD {
69
public:
70
TorsionSRFD() {
71
//setup data and verify that
72
assert( data_.size() == torsion_ids_->size() );
73
};
74
75
bool apply ( pose::Pose& pose, Size seq_pos ) const {
76
for ( Size dof_id = 1; dof_id < data_.size(); dof_id++ ) {
77
if ( ! pose.residue( seq_pos ).is_protein() ) return false;
78
pose.set_torsion( torsion_ids_->get_full_id( seq_pos, dof_id ), data_[ dof_id ] );
79
};
80
return true;
81
};
82
83
private:
84
TorsionInfoSetCOP torsion_ids_; //COP--> allows to share info between TorsionSRFD but one might be able to change the INFO from outside !
85
utility::vector1 < Real > data_;
86
};
87
*/
88
}
//fragment
89
}
//core
90
91
#endif
Generated on Sat Jun 1 2013 11:32:46 for Rosetta 3.5 by
1.8.4