TypeSystem Class Template Reference

A class for representing a self-consistent set of molecular types. More...

#include <type_system.hpp>

List of all members.

Public Types

typedef ElementDictionaryType element_dictionary
typedef AtomDictionaryType atom_dictionary
typedef MonomerDictionaryType monomer_dictionary
typedef StructureDictionaryType structure_dictionary
typedef element_dictionary::id_type element_id_type
typedef atom_dictionary::id_type atom_id_type
typedef monomer_dictionary::id_type monomer_id_type
typedef structure_dictionary::id_type structure_id_type
typedef TypeSystem< element_dictionary,
atom_dictionary, monomer_dictionary,
structure_dictionary
self_type

Public Member Functions

 TypeSystem ()
 TypeSystem (element_dictionary const &ed, atom_dictionary const &ad, monomer_dictionary const &md, structure_dictionary const &sd)
virtual ~TypeSystem ()
element_dictionaryget_element_dictionary ()
atom_dictionaryget_atom_dictionary ()
monomer_dictionaryget_monomer_dictionary ()
structure_dictionaryget_structure_dictionary ()
element_dictionary const & get_element_dictionary () const
atom_dictionary const & get_atom_dictionary () const
monomer_dictionary const & get_monomer_dictionary () const
structure_dictionary const & get_structure_dictionary () const


Detailed Description

template<typename ElementDictionaryType, typename AtomDictionaryType, typename MonomerDictionaryType, typename StructureDictionaryType>
class BTK::IO::TypeSystem< ElementDictionaryType, AtomDictionaryType, MonomerDictionaryType, StructureDictionaryType >

A class for representing a self-consistent set of molecular types.

A TypeSystem is a class that stores a set of molecular types that are self-consistent for a particular problem. For example, if your problem requires a set of types that are specific to protein molecules, you might create a ProteinTypeSystem, with atom, monomer and structure types defined for proteins. The Atom class is parameterized with a TypeSystem, allowing for compile-time type safety for these fundamental molecular types.

More abstractly, TypeSystem classes are envisioned as the general solution to the problem of representing application-specific molecular types. Force-fields such as CHARMM and AMBER have their own self-consistent sets of atom, monomer and molecule types -- a TypeSystem class would be the correct way to represent these concepts in the BTK.


Member Typedef Documentation

typedef ElementDictionaryType element_dictionary

typedef AtomDictionaryType atom_dictionary

typedef MonomerDictionaryType monomer_dictionary

typedef StructureDictionaryType structure_dictionary

typedef element_dictionary::id_type element_id_type

typedef atom_dictionary::id_type atom_id_type

typedef monomer_dictionary::id_type monomer_id_type

typedef structure_dictionary::id_type structure_id_type

typedef TypeSystem<element_dictionary, atom_dictionary, monomer_dictionary, structure_dictionary> self_type


Constructor & Destructor Documentation

TypeSystem (  ) 

TypeSystem ( element_dictionary const &  ed,
atom_dictionary const &  ad,
monomer_dictionary const &  md,
structure_dictionary const &  sd 
)

virtual ~TypeSystem (  )  [virtual]


Member Function Documentation

element_dictionary& get_element_dictionary (  ) 

atom_dictionary& get_atom_dictionary (  ) 

monomer_dictionary& get_monomer_dictionary (  ) 

structure_dictionary& get_structure_dictionary (  ) 

element_dictionary const& get_element_dictionary (  )  const

atom_dictionary const& get_atom_dictionary (  )  const

monomer_dictionary const& get_monomer_dictionary (  )  const

structure_dictionary const& get_structure_dictionary (  )  const


The documentation for this class was generated from the following file:
Generated on Sun Jul 15 20:46:36 2007 for BTK Core by  doxygen 1.5.1