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
core
chemical
orbitals
OrbitalTypeSet.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
/// @begin AtomTypeSet
11
///
12
/// @brief
13
/// A class for reading in the orbital type properties
14
///
15
/// @detailed
16
/// This class reads in the orbital_properties.txt file which contains the "chemical" information for orbitals.
17
/// This does not contain the actual properties, but sets the properties through the OrbitalType class.
18
/// This class is called by the ChemicalManager. Modeled off of atomtypeset.
19
///
20
///
21
///
22
/// @authors
23
/// Steven Combs
24
///
25
///
26
/// @last_modified December 12 2010
27
/////////////////////////////////////////////////////////////////////////
28
29
#ifndef INCLUDED_core_chemical_orbitals_OrbitalTypeSet_hh
30
#define INCLUDED_core_chemical_orbitals_OrbitalTypeSet_hh
31
32
33
// Project headers
34
#include <
core/chemical/orbitals/OrbitalType.hh
>
35
// AUTO-REMOVED #include <utility/exit.hh>
36
#include <utility/pointer/ReferenceCount.hh>
37
#include <map>
38
#include <
core/types.hh
>
39
#include <utility/vector1_bool.hh>
40
#include <
core/chemical/orbitals/OrbitalTypeSet.fwd.hh
>
41
42
#include <utility/vector1.hh>
43
44
45
namespace
core{
46
namespace
chemical{
47
namespace
orbitals{
48
49
50
51
class
OrbitalTypeSet
:
public
utility::pointer::ReferenceCount
{
52
53
54
55
public
:
56
///@brief Automatically generated virtual destructor for class deriving directly from ReferenceCount
57
virtual
~OrbitalTypeSet
();
58
OrbitalTypeSet
(
std::string
const
& directory);
59
60
void
read_file
(
std::string
const
&
filename
);
61
62
/// @brief [ ] operator, simulating vector index behavior
63
///
64
/// @details look up an OrbitalTypeSet by 1-based indexing
65
///
66
OrbitalType
const
&
67
operator[]
(
core::Size
const
index)
const
68
{
69
return
*(
orbitals_
[index]);
70
}
71
72
73
/// @brief lookup the orbital type by the orbital type name string
74
int
75
orbital_type_index
(
std::string
const
& orbital_type_name )
const
;
76
77
/// @brief lookup the orbital type by the orbital type name string
78
int
79
orbital_type_index
(
std::string
& orbital_type_name )
const
;
80
81
private
:
82
/// lookup map: get orbital_type_index by orbital_type_name
83
std::map< std::string, int >
orbital_type_index_
;
84
85
86
/// @brief Save the directory name for future use
87
std::string
directory_
;
88
89
/// @brief a collection of OrbitalTypes,
90
///
91
/// @details OrbitalType has data of atom properties, and it can be
92
/// looked up by orbital_type_index.
93
utility::vector1< OrbitalType* >
orbitals_
;
94
95
96
};
97
98
99
100
}
101
}
102
}
103
104
105
106
107
#endif
/* ORBITALTYPESET_HH_ */
Generated on Sat Jun 1 2013 11:31:36 for Rosetta 3.5 by
1.8.4