Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ProteinSilentReport.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/features/ProteinSilentReport.hh
11 /// @brief report feature data to database
12 /// @author Matthew O'Meara
13 
14 #ifndef INCLUDED_protocols_features_ProteinSilentReport_hh
15 #define INCLUDED_protocols_features_ProteinSilentReport_hh
16 
17 // Unit Headers
20 
21 //External
22 #include <boost/uuid/uuid.hpp>
23 
24 // Project Headers
38 
39 // Platform Headers
40 #include <core/types.hh>
41 #include <core/pose/Pose.fwd.hh>
42 // AUTO-REMOVED #include <utility/sql_database/DatabaseSessionManager.hh>
43 
44 // C++ Headers
45 #include <map>
46 #include <set>
47 
48 #include <utility/vector1.hh>
49 
50 
51 namespace protocols{
52 namespace features{
53 
55 
56 public:
57  typedef std::map< core::Size, core::pose::PoseOP > StructureMap;
58 
59 public:
61 
63 
64  virtual ~ProteinSilentReport();
65 
67  version();
68 
69  bool is_initialized() const;
70 
71  void initialize(utility::sql_database::sessionOP db_session);
72 
73  void
74  apply(
75  core::pose::Pose const & pose,
76  utility::sql_database::sessionOP db_sesion);
77 
78  void
79  apply(
80  core::pose::Pose const & pose,
81  utility::sql_database::sessionOP db_sesion,
82  std::string const & tag);
83 
84  void
85  load_pose(
86  utility::sql_database::sessionOP db_session,
87  boost::uuids::uuid struct_id,
88  core::pose::Pose & pose);
89 
90  void
91  load_pose(
92  utility::sql_database::sessionOP db_session,
93  boost::uuids::uuid struct_id,
94  std::set<core::Size> residue_numbers,
95  core::pose::Pose & pose);
96 
97  void
99  utility::sql_database::sessionOP db_session ) const;
100 
102  utility::sql_database::sessionOP db_session,
103  std::string const & tag);
104 
105  void delete_pose(
106  utility::sql_database::sessionOP db_session,
107  boost::uuids::uuid const & struct_id);
108 
109  core::Size get_protocol_id() const;
110 
111  core::Size get_batch_id() const;
112 
113 
114 private:
115  void
117  utility::sql_database::sessionOP db_session
118  );
119 
120  void write_full_report(
121  core::pose::Pose const & pose,
122  utility::sql_database::sessionOP db_session,
123  std::string const & tag
124  );
125 
126 
127 private:
128  void choose_database_filter();
129 
132 
136 
149 
150 };
151 
152 } //namespace
153 } //namespace
154 
155 #endif //include guard