Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PlacementAuctionMover.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/protein_interface_design/movers/PlacementAuctionMover.hh
11 /// @brief definition of a class for making the placement auction used by PlaceSimultaneouslyMover
12 /// @author Sarel Fleishman (sarelf@u.washington.edu)
13 
14 #ifndef INCLUDED_protocols_protein_interface_design_movers_PlacementAuctionMover_hh
15 #define INCLUDED_protocols_protein_interface_design_movers_PlacementAuctionMover_hh
16 
17 // Project Headers
18 // AUTO-REMOVED #include <core/pose/Pose.hh>
19 #include <core/types.hh>
20 #include <utility/tag/Tag.fwd.hh>
21 // AUTO-REMOVED #include <protocols/hotspot_hashing/HotspotStubSet.hh>
22 // AUTO-REMOVED #include <protocols/hotspot_hashing/HotspotStub.hh>
27 #include <utility/vector1.hh>
28 
29 // C/C++ headers
30 // AUTO-REMOVED #include <iterator>
31 #include <map>
32 #include <string>
33 // AUTO-REMOVED #include <utility>
34 
37 
38 //Auto Headers
40 
41 
42 
43 namespace protocols {
44 namespace protein_interface_design {
45 namespace movers {
46 
48 {
49 public:
50  typedef std::pair< protocols::hotspot_hashing::HotspotStubSetOP, std::pair< protocols::hotspot_hashing::HotspotStubOP, core::Size > > StubSetStubPos;
51  typedef std::pair< protocols::hotspot_hashing::HotspotStubSetOP, protocols::hotspot_hashing::HotspotStubOP > StubsetStubPair;
52  typedef std::pair< core::Real, std::pair< core::Size, StubsetStubPair > > ResidueAuctionItem;
53  typedef std::multimap< core::Real, std::pair< core::Size, StubsetStubPair > > ResidueAuction;
54  typedef ResidueAuction::iterator iterator;
55  typedef ResidueAuction::const_iterator const_iterator;
56 
57 public:
59  void apply( core::pose::Pose & pose );
60  virtual std::string get_name() const;
65  }
66  void insert( ResidueAuctionItem const & item );
67  core::Size size() const;
68  void erase( iterator it );
69  void clear();
70  iterator begin();
71  iterator end();
72  const_iterator begin() const;
73  const_iterator end() const;
74  virtual void parse_my_tag( utility::tag::TagPtr const tag,
78  core::pose::Pose const & );
79 //// mutators for Placement movers to copy their internals onto auctionMover
80  void host_chain( core::Size const hc );
81  void max_cb_cb_dist( core::Real const mccd );
82  void cb_force( core::Real const cf );
87 
88 private:
93 };
94 
95 } //movers
96 } //protein_interface_design
97 } //protocols
98 
99 #endif /*INCLUDED_protocols_protein_interface_design_movers_PlacementAuction_HH*/
100