#include <chemically_typed_object.hpp>
Inheritance diagram for ChemicallyTypedObject:

| Public Types | |
| typedef ChemicalTypeSystemType | chemical_type_system | 
| typedef DictionaryType | dictionary | 
| typedef dictionary::id_type | id_type | 
| Public Member Functions | |
| ChemicallyTypedObject (chemical_type_system const &ts=chemical_type_system(), id_type t=id_type()) | |
| ChemicallyTypedObject (self_type const &src) | |
| virtual | ~ChemicallyTypedObject () | 
| id_type | type () const | 
| Returns the chemical id type of the object. | |
| std::string | name () const | 
| Returns the name of the object. | |
| chemical_type_system const & | get_chemical_type_system () const | 
| Returns a const reference to the chemical type system for the object. | |
| chemical_type_system & | get_chemical_type_system () | 
| Returns a mutable reference to the chemical type system for the object. | |
| virtual dictionary const & | get_dictionary () const=0 | 
| virtual dictionary & | get_dictionary ()=0 | 
| Protected Member Functions | |
| virtual void | set_type (id_type t) | 
| Set the chemical ID type of the object to a new value. | |
| virtual void | set_chemical_type_system (chemical_type_system const &ts) | 
| Set a new chemical type system for the object. | |
| self_type const & | operator= (self_type const &src) | 
| void | swap (self_type &rhs) | 
| bool | operator== (self_type const &rhs) const | 
| Comparison operators. | |
| bool | operator!= (self_type const &rhs) const | 
| Comparison operators. | |
| bool | operator< (self_type const &rhs) const | 
| Comparison operators. | |
This is a base class useful for implementing types that need to model the StrictlyChemicallyTyped and ChemicallyTyped concepts.
| typedef ChemicalTypeSystemType chemical_type_system | 
Reimplemented in Atom, PDBSystem, AtomicStructure, Chain, Molecule, Monomer, Polymer, PolymerStructure, System, and System< PolymerType, ChemicalTypeSystemType, StorageStrategy >.
| typedef DictionaryType dictionary | 
Reimplemented in Atom, PDBSystem, AtomicStructure, Chain, Molecule, Monomer, Polymer, PolymerStructure, System, and System< PolymerType, ChemicalTypeSystemType, StorageStrategy >.
| typedef dictionary::id_type id_type | 
Reimplemented in Atom, PDBSystem, AtomicStructure, Chain, Molecule, Monomer, Polymer, PolymerStructure, System, and System< PolymerType, ChemicalTypeSystemType, StorageStrategy >.
| ChemicallyTypedObject | ( | chemical_type_system const & | ts = chemical_type_system(), | |
| id_type | t = id_type() | |||
| ) | 
| ChemicallyTypedObject | ( | self_type const & | src | ) | 
| virtual ~ChemicallyTypedObject | ( | ) |  [virtual] | 
| id_type type | ( | ) | const | 
Returns the chemical id type of the object.
| std::string name | ( | ) | const | 
Returns the name of the object.
A "name," in this context, is a textual representation of the chemical type (i.e. an atom name or a residue name). If the chemical type is undefined or unknown, the empty string is returned.
| chemical_type_system const& get_chemical_type_system | ( | ) | const | 
Returns a const reference to the chemical type system for the object.
| chemical_type_system& get_chemical_type_system | ( | ) | 
Returns a mutable reference to the chemical type system for the object.
| virtual dictionary const& get_dictionary | ( | ) | const  [pure virtual] | 
Implemented in Atom, AtomicStructure, Molecule, Monomer, Polymer, PolymerStructure, System, and System< PolymerType, ChemicalTypeSystemType, StorageStrategy >.
| virtual dictionary& get_dictionary | ( | ) |  [pure virtual] | 
Implemented in Atom, AtomicStructure, Molecule, Monomer, Polymer, PolymerStructure, System, and System< PolymerType, ChemicalTypeSystemType, StorageStrategy >.
| virtual void set_type | ( | id_type | t | ) |  [protected, virtual] | 
Set the chemical ID type of the object to a new value.
| virtual void set_chemical_type_system | ( | chemical_type_system const & | ts | ) |  [protected, virtual] | 
Set a new chemical type system for the object.
| void swap | ( | self_type & | rhs | ) |  [protected] | 
Comparison operators.
Note: the full EqualityComparable and LessThanComparable concepts are supported through the use of the boost::operators template classes. These operators are protected, in order to prevent unintentional heterogeneous type comparisons.
Comparison operators.
Note: the full EqualityComparable and LessThanComparable concepts are supported through the use of the boost::operators template classes. These operators are protected, in order to prevent unintentional heterogeneous type comparisons.
Comparison operators.
Note: the full EqualityComparable and LessThanComparable concepts are supported through the use of the boost::operators template classes. These operators are protected, in order to prevent unintentional heterogeneous type comparisons.
 1.5.1
 1.5.1