Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members

BTK::Molecule< AtomType > Class Template Reference

Generic molecule class. More...

#include <molecule.h>

Inheritance diagram for BTK::Molecule< AtomType >:

Inheritance graph
[legend]
Collaboration diagram for BTK::Molecule< AtomType >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef Molecule< AtomType > self_type
typedef std::set< GROUP_VARIANT::index_tgroup_variant_container_t
STL-required container type definitions.
typedef base_type::value_type value_type
typedef base_type::reference reference
typedef base_type::const_reference const_reference
typedef base_type::pointer pointer
typedef base_type::const_pointer const_pointer
typedef base_type::size_type size_type
typedef base_type::iterator iterator
typedef base_type::const_iterator const_iterator
atom versions of standard STL typedefs
typedef value_type atom_type
typedef iterator atom_iterator
typedef const_iterator const_atom_iterator

Public Member Functions

 Molecule (size_type s=0)
 Construct a molecule of s default instances of AtomType.

template<typename AtomIterator>  Molecule (AtomIterator first, AtomIterator last)
 Construct a molecule from an iterator range over AtomType.

 Molecule (const self_type &source)
template<typename T2>  Molecule (const Molecule< T2 > &source)
 ~Molecule ()
self_typeoperator= (const self_type &rhs)
template<typename T2> self_typeoperator= (const Molecule< T2 > &rhs)
virtual GROUP::index_t group_index () const
const std::string & name () const
void set_name (const std::string &name)
char chain_id () const
void set_chain_id (char chain_id)
virtual const AtomGroupConcept::group_variant_container_tgroup_variant_codes () const
virtual const std::string & group_name3 () const
virtual int group_num () const
size_type size () const
 Replication of std::vector function (see std::vector documentation).

iterator begin ()
const_iterator begin () const
iterator end ()
const_iterator end () const
reference operator[] (size_type i)
const_reference operator[] (size_type i) const
reference front ()
const_reference front () const
reference back ()
const_reference back () const
Special 'atom_' versions of std::vector functions
size_type atom_size () const
 atom versions of std::vector function names

atom_iterator atom_begin ()
 atom versions of std::vector function names

const_atom_iterator atom_begin () const
 atom versions of std::vector function names

atom_iterator atom_end ()
 atom versions of std::vector function names

const_atom_iterator atom_end () const
 atom versions of std::vector function names

reference atom (size_type i)
 atom versions of std::vector function names

const_reference atom (size_type i) const
 atom versions of std::vector function names

reference atom_back ()
 atom versions of std::vector function names

const_reference atom_back () const
 atom versions of std::vector function names

reference atom_front ()
 atom versions of std::vector function names

const_reference atom_front () const
 atom versions of std::vector function names


Protected Member Functions

void clear ()
 Replication of std::vector function (see std::vector documentation).

void resize (size_type s)
void reserve (size_type s)
void push_back (const value_type &x)
iterator insert (iterator pos, const value_type &x)
void insert (iterator pos, size_type s, const value_type &x)
void insert (iterator pos, InputIterator first, InputIterator last)
iterator erase (iterator pos)
iterator erase (iterator first, iterator last)
void shallow_push_back (value_type *x)
void shallow_insert (iterator pos, const_iterator first, const_iterator last)
void deep_copy (const SharedVectorBase< T2 > &source)
void shallow_copy (const self_type &source)

Detailed Description

template<typename AtomType>
class BTK::Molecule< AtomType >

Generic molecule class.

Molecule is a rigid-body molecule class, meaning that it can represent molecules as fixed collections of atoms/points that may be translated, rotated and transformed like any other fixed set of points in space. You cannot rebuild or refold a Molecule object.


Member Typedef Documentation

template<typename AtomType>
typedef iterator BTK::Molecule< AtomType >::atom_iterator
 

Reimplemented from BTK::AtomContainer< AtomType >.

template<typename AtomType>
typedef value_type BTK::Molecule< AtomType >::atom_type
 

Reimplemented from BTK::AtomContainer< AtomType >.

template<typename AtomType>
typedef const_iterator BTK::Molecule< AtomType >::const_atom_iterator
 

Reimplemented from BTK::AtomContainer< AtomType >.

template<typename AtomType>
typedef base_type::const_iterator BTK::Molecule< AtomType >::const_iterator
 

Reimplemented from BTK::AtomContainer< AtomType >.

template<typename AtomType>
typedef base_type::const_pointer BTK::Molecule< AtomType >::const_pointer
 

Reimplemented from BTK::AtomContainer< AtomType >.

template<typename AtomType>
typedef base_type::const_reference BTK::Molecule< AtomType >::const_reference
 

Reimplemented from BTK::AtomContainer< AtomType >.

typedef std::set<GROUP_VARIANT::index_t> BTK::AtomGroupConcept::group_variant_container_t [inherited]
 

:

template<typename AtomType>
typedef base_type::iterator BTK::Molecule< AtomType >::iterator
 

Reimplemented from BTK::AtomContainer< AtomType >.

template<typename AtomType>
typedef base_type::pointer BTK::Molecule< AtomType >::pointer
 

Reimplemented from BTK::AtomContainer< AtomType >.

template<typename AtomType>
typedef base_type::reference BTK::Molecule< AtomType >::reference
 

Reimplemented from BTK::AtomContainer< AtomType >.

template<typename AtomType>
typedef Molecule<AtomType> BTK::Molecule< AtomType >::self_type
 

Reimplemented from BTK::AtomContainer< AtomType >.

template<typename AtomType>
typedef base_type::size_type BTK::Molecule< AtomType >::size_type
 

Reimplemented from BTK::AtomContainer< AtomType >.

template<typename AtomType>
typedef base_type::value_type BTK::Molecule< AtomType >::value_type
 

Reimplemented from BTK::AtomContainer< AtomType >.


Constructor & Destructor Documentation

template<typename AtomType>
BTK::Molecule< AtomType >::Molecule size_type  s = 0  )  [inline]
 

Construct a molecule of s default instances of AtomType.

template<typename AtomType>
template<typename AtomIterator>
BTK::Molecule< AtomType >::Molecule AtomIterator  first,
AtomIterator  last
[inline]
 

Construct a molecule from an iterator range over AtomType.

template<typename AtomType>
BTK::Molecule< AtomType >::Molecule const self_type source  )  [inline]
 

template<typename AtomType>
template<typename T2>
BTK::Molecule< AtomType >::Molecule const Molecule< T2 > &  source  )  [inline]
 

template<typename AtomType>
BTK::Molecule< AtomType >::~Molecule  )  [inline]
 


Member Function Documentation

template<typename AtomType>
const_reference BTK::AtomContainer< AtomType >::atom size_type  i  )  const [inline, inherited]
 

atom versions of std::vector function names

template<typename AtomType>
reference BTK::AtomContainer< AtomType >::atom size_type  i  )  [inline, inherited]
 

atom versions of std::vector function names

template<typename AtomType>
const_reference BTK::AtomContainer< AtomType >::atom_back  )  const [inline, inherited]
 

atom versions of std::vector function names

template<typename AtomType>
reference BTK::AtomContainer< AtomType >::atom_back  )  [inline, inherited]
 

atom versions of std::vector function names

template<typename AtomType>
const_atom_iterator BTK::AtomContainer< AtomType >::atom_begin  )  const [inline, inherited]
 

atom versions of std::vector function names

template<typename AtomType>
atom_iterator BTK::AtomContainer< AtomType >::atom_begin  )  [inline, inherited]
 

atom versions of std::vector function names

template<typename AtomType>
const_atom_iterator BTK::AtomContainer< AtomType >::atom_end  )  const [inline, inherited]
 

atom versions of std::vector function names

template<typename AtomType>
atom_iterator BTK::AtomContainer< AtomType >::atom_end  )  [inline, inherited]
 

atom versions of std::vector function names

template<typename AtomType>
const_reference BTK::AtomContainer< AtomType >::atom_front  )  const [inline, inherited]
 

atom versions of std::vector function names

template<typename AtomType>
reference BTK::AtomContainer< AtomType >::atom_front  )  [inline, inherited]
 

atom versions of std::vector function names

template<typename AtomType>
size_type BTK::AtomContainer< AtomType >::atom_size  )  const [inline, inherited]
 

atom versions of std::vector function names

const_reference BTK::SharedVectorBase< AtomType >::back  )  const [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

reference BTK::SharedVectorBase< AtomType >::back  )  [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

const_iterator BTK::SharedVectorBase< AtomType >::begin  )  const [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

iterator BTK::SharedVectorBase< AtomType >::begin  )  [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename AtomType>
char BTK::Molecule< AtomType >::chain_id  )  const [inline]
 

void BTK::SharedVectorBase< AtomType >::clear  )  [inline, protected, inherited]
 

Replication of std::vector function (see std::vector documentation).

void BTK::SharedVectorBase< AtomType >::deep_copy const SharedVectorBase< T2 > &  source  )  [protected, inherited]
 

const_iterator BTK::SharedVectorBase< AtomType >::end  )  const [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

iterator BTK::SharedVectorBase< AtomType >::end  )  [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

iterator BTK::SharedVectorBase< AtomType >::erase iterator  first,
iterator  last
[inline, protected, inherited]
 

Replication of std::vector function (see std::vector documentation).

iterator BTK::SharedVectorBase< AtomType >::erase iterator  pos  )  [inline, protected, inherited]
 

Replication of std::vector function (see std::vector documentation).

const_reference BTK::SharedVectorBase< AtomType >::front  )  const [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

reference BTK::SharedVectorBase< AtomType >::front  )  [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename AtomType>
virtual GROUP::index_t BTK::Molecule< AtomType >::group_index  )  const [inline, virtual]
 

Reimplemented from BTK::AtomContainer< AtomType >.

template<typename AtomType>
virtual const std::string& BTK::AtomContainer< AtomType >::group_name3  )  const [inline, virtual, inherited]
 

Implements BTK::AtomGroupConcept.

Reimplemented in BTK::BuildableMonomer< AtomType >, and BTK::Monomer< AtomType >.

template<typename AtomType>
virtual int BTK::AtomContainer< AtomType >::group_num  )  const [inline, virtual, inherited]
 

Implements BTK::AtomGroupConcept.

Reimplemented in BTK::Monomer< AtomType >.

template<typename AtomType>
virtual const AtomGroupConcept::group_variant_container_t& BTK::AtomContainer< AtomType >::group_variant_codes  )  const [inline, virtual, inherited]
 

Implements BTK::AtomGroupConcept.

void BTK::SharedVectorBase< AtomType >::insert iterator  pos,
InputIterator  first,
InputIterator  last
[protected, inherited]
 

Replication of std::vector function (see std::vector documentation).

void BTK::SharedVectorBase< AtomType >::insert iterator  pos,
size_type  s,
const value_type x
[protected, inherited]
 

Replication of std::vector function (see std::vector documentation).

iterator BTK::SharedVectorBase< AtomType >::insert iterator  pos,
const value_type x
[inline, protected, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename AtomType>
const std::string& BTK::Molecule< AtomType >::name  )  const [inline]
 

template<typename AtomType>
template<typename T2>
BTK::Molecule< AtomType >::self_type & BTK::Molecule< AtomType >::operator= const Molecule< T2 > &  rhs  ) 
 

Here is the call graph for this function:

template<typename AtomType>
BTK::Molecule< AtomType >::self_type & BTK::Molecule< AtomType >::operator= const self_type rhs  ) 
 

Reimplemented from BTK::AtomContainer< AtomType >.

const_reference BTK::SharedVectorBase< AtomType >::operator[] size_type  i  )  const [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

reference BTK::SharedVectorBase< AtomType >::operator[] size_type  i  )  [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

void BTK::SharedVectorBase< AtomType >::push_back const value_type x  )  [inline, protected, inherited]
 

Replication of std::vector function (see std::vector documentation).

void BTK::SharedVectorBase< AtomType >::reserve size_type  s  )  [inline, protected, inherited]
 

Replication of std::vector function (see std::vector documentation).

void BTK::SharedVectorBase< AtomType >::resize size_type  s  )  [inline, protected, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename AtomType>
void BTK::Molecule< AtomType >::set_chain_id char  chain_id  )  [inline]
 

template<typename AtomType>
void BTK::Molecule< AtomType >::set_name const std::string &  name  )  [inline]
 

void BTK::SharedVectorBase< AtomType >::shallow_copy const self_type source  )  [protected, inherited]
 

void BTK::SharedVectorBase< AtomType >::shallow_insert iterator  pos,
const_iterator  first,
const_iterator  last
[inline, protected, inherited]
 

void BTK::SharedVectorBase< AtomType >::shallow_push_back value_type x  )  [inline, protected, inherited]
 

size_type BTK::SharedVectorBase< AtomType >::size  )  const [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).


The documentation for this class was generated from the following files:
Generated on Wed Apr 14 00:43:21 2004 for BTK by doxygen 1.3.6