Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ctab_typer.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 // This file is part of the Rosetta software suite and is made available under license.
6 // The Rosetta software is developed by the contributing members of the Rosetta Commons consortium.
7 // (C) 199x-2009 Rosetta Commons participating institutions and developers.
8 // For more information, see http://www.rosettacommons.org/.
9 
10 /// @file core/chemical/sdf/ctab_typer.hh
11 ///
12 /// @brief determine the type of an atom
13 /// @author Robert Carroll
14 
15 
16 #ifndef INCLUDED_core_chemical_sdf_ctab_typer_HH
17 #define INCLUDED_core_chemical_sdf_ctab_typer_HH
18 
19 #include <string>
20 #include <map>
21 #include <vector>
23 // AUTO-REMOVED #include <core/chemical/ResidueType.hh>
24 #include <utility/vector1.hh>
25 
27 
28 
29 
30 namespace core {
31 namespace chemical {
32 namespace sdf {
33 enum typerBond { Csingle=0,
36  Caro=3,
40  Naro=7,
43  Oaro=11,
44  Hsingle=12,
45  AroBonds=13};
46 
47 class atomTyper {
48 public:
51  //core::Size getNumBonds(typerBond i);
54 
55  core::Size get_bond_count(std::string const element, core::chemical::BondName const bond_type) const;
56 
58 
59  core::Size get_bondelement_count(std::string const element) const;
60 
61 private:
66  std::map< std::pair<std::string,core::chemical::BondName>,core::Size> numBonds_;
67  //core::Size numBonds_[14];
69 
70  void set_bond_count(std::string const element, core::chemical::BondName const bond_type,core::Size const bond_count);
71 
72 
73 
74  bool hasbbN(); //For CObb (bb N means 2x C bonds)
75  bool hasCarbonylC(); //for Cabb and NH2O, Nbb, Npro
76  bool hasNinRing(); //for Nhis
77  bool hasGuanidiniumC(); //for Narg
78  bool hasAmideN(); //For ONH2
79  bool hasCarboxylC(); //For OOC
80  bool hasCwithbbN(); //for OCbb
81 };
82 
83 
84 }
85 }
86 }
87 
88 
89 #endif /* CTAB_TYPER_HH_ */