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
abinitio
HedgeArchive.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
// This file is part of the Rosetta software suite and is made available under license.
5
// The Rosetta software is developed by the contributing members of the Rosetta Commons consortium.
6
// (C) 199x-2009 Rosetta Commons participating institutions and developers.
7
// For more information, see http://www.rosettacommons.org/.
8
9
///
10
/// @author Oliver Lange
11
/// Archive class to collect structures such that variances of scores can be computed to determine normalized weights
12
13
14
#ifndef INCLUDED_protocols_abinitio_HedgeArchive_hh
15
#define INCLUDED_protocols_abinitio_HedgeArchive_hh
16
17
// Unit Headers
18
//#include <protocols/abinitio/IterativeAbrelax.fwd.hh>
19
20
// Package Headers
21
#include <
protocols/jd2/archive/EvaluatedArchive.hh
>
22
#include <
protocols/jd2/archive/ArchiveManager.fwd.hh
>
23
#include <
protocols/abinitio/HedgeArchive.fwd.hh
>
24
// Project Headers
25
#include <
core/types.hh
>
26
#include <
core/pose/Pose.fwd.hh
>
27
#include <
core/io/silent/silent.fwd.hh
>
28
29
// Utility headers
30
#include <utility/vector1.hh>
31
32
// Third-party Headers
33
34
//// C++ headers
35
36
#include <string>
37
#include <set>
38
39
40
41
namespace
protocols {
42
namespace
abinitio {
43
44
class
HedgeArchive
:
public
jd2::archive::EvaluatedArchive
{
45
typedef
jd2::archive::EvaluatedArchive
Parent
;
46
typedef
std::list< std::pair< core::Real, core::io::silent::SilentStructOP > >
SilentStructs
;
47
typedef
std::map< core::Size, SilentStructs >
BatchStructuresMap
;
48
public
:
49
HedgeArchive
(
std::string
name
);
50
51
virtual
bool
add_evaluated_structure
(
core::io::silent::SilentStructOP
,
jd2::archive::Batch
const
& batch );
52
53
virtual
void
generate_batch
() {};
54
virtual
void
rescore
() {};
//do nothing since we don't care about scores
55
///@brief save and restore status of archive to file-system
56
virtual
void
save_status
( std::ostream& )
const
;
57
virtual
void
restore_status
( std::istream& );
58
///@brief overloaded to make input decoys appear the same as decoys coming from batches
59
virtual
void
init_from_decoy_set
(
core::io::silent::SilentFileData
const
& ) {};
60
void
collect
(
jd2::archive::Batch
const
& batch,
core::io::silent::SilentStructOPs
& )
const
;
61
protected
:
62
void
incorporate_batch
(
core::Size
batch_id );
63
private
:
64
void
save_decoys
(
SilentStructs
const
&
decoys
,
core::Size
batch_id )
const
;
65
void
remove_decoys
(
core::Size
batch_id )
const
;
66
core::Real
score_cut_per_batch_
;
67
core::Real
add_fuzzy_
;
//0 for strictly score based, 1 for totally random
68
BatchStructuresMap
incoming_structures_
;
69
typedef
std::set< core::Size >
BatchList
;
70
BatchList
old_batches_
;
71
};
72
73
74
}
75
}
76
77
78
#endif
Generated on Sat Jun 1 2013 11:41:11 for Rosetta 3.5 by
1.8.4