Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Adduct.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
11 /// @brief declaration of implementation class for residue adducts
12 /// @author Jim Havranek
13 
14 
15 #ifndef INCLUDED_core_chemical_Adduct_hh
16 #define INCLUDED_core_chemical_Adduct_hh
17 
18 // Unit headers
20 
21 // Project headers
22 #include <core/types.hh>
25 
26 #include <string>
27 
28 namespace core {
29 namespace chemical {
30 
31 /// @brief Description of optional single-atom residue adducts
32 class Adduct {
33 public:
34  /// default constructor
35  Adduct();
36 
37  /// constructor
38  Adduct(
39  std::string const & adduct_name,
40  std::string const & atom_name,
43  Real const atom_charge_in,
44  Real const phi_in,
45  Real const theta_in,
46  Real const d_in,
47  std::string const & stub_atom1_name,
48  std::string const & stub_atom2_name,
49  std::string const & stub_atom3_name
50  );
51 
52 public:
53  /// accessor to adduct_name string
54  std::string const & adduct_name() const;
55 
56  /// accessor to atom_name string
57  std::string const & atom_name() const;
58 
59  /// accessor to atom type string
60  std::string const & atom_type_name() const;
61 
62  /// accessor to mm type string
63  std::string const & mm_atom_type_name() const;
64 
65  Real atom_charge() const;
66 
67  /// @brief accessor for Adduct geometric info
68  Real phi() const;
69 
70  ///
71  Real theta() const;
72 
73  ///
74  Real d() const;
75 
76  /// accessor to stub_atom1 name string
77  std::string const & stub_atom1() const;
78 
79  /// accessor to stub_atom2 name string
80  std::string const & stub_atom2() const;
81 
82  /// accessor to stub_atom3 name string
83  std::string const & stub_atom3() const;
84 
85  /// const accessor to stub_atom strings by index
86  std::string const & stub_atom( int const atm ) const;
87 
88 private:
102 };
103 
104 } // chemical
105 } // core
106 
107 
108 
109 #endif