• Skip to content
  • Skip to link menu
KDE 4.2 API Reference
  • KDE API Reference
  • kdeedu
  • Sitemap
  • Contact Us
 

kalzium

Avogadro::Molecule

Avogadro::Molecule Class Reference

#include <primitive.h>

Inheritance diagram for Avogadro::Molecule:

Inheritance graph
[legend]

List of all members.


Detailed Description

Molecule Class.

Author:
Donald Ephraim Curtis
The Molecule class implements the OpenBabel::OBMol virtual functions in order to not only use our primitive objects but also to provide signals based on internal OpenBabel actions. In terms of a Model-View architecture, this is our model class and is used by our various views to hold all required data.

Definition at line 269 of file src/primitive.h.


Signals

void primitiveAdded (Primitive *primitive)
void primitiveRemoved (Primitive *primitive)
void primitiveUpdated (Primitive *primitive)

Public Member Functions

const Eigen::Vector3d & center () const
Atom * CreateAtom (void)
Bond * CreateBond (void)
Residue * CreateResidue (void)
void DestroyAtom (OpenBabel::OBAtom *atom)
void DestroyBond (OpenBabel::OBBond *bond)
void DestroyResidue (OpenBabel::OBResidue *residue)
const Atom * farthestAtom () const
Atom * getAtomById (unsigned long id) const
Bond * getBondById (unsigned long id) const
 Molecule (const Molecule &other)
 Molecule (QObject *parent=0)
Atom * newAtom (unsigned long id)
Atom * newAtom ()
Bond * newBond (unsigned long id)
Bond * newBond ()
const Eigen::Vector3d & normalVector () const
Molecule & operator+= (const Molecule &other)
Molecule & operator= (const Molecule &other)
const double & radius () const
void update ()
virtual ~Molecule ()

Constructor & Destructor Documentation

Avogadro::Molecule::Molecule ( QObject *  parent = 0  ) 

Constructor.

Parameters:
parent the object parent.

Definition at line 132 of file primitive.cpp.

Avogadro::Molecule::Molecule ( const Molecule &  other  ) 

Definition at line 137 of file primitive.cpp.

Avogadro::Molecule::~Molecule (  )  [virtual]

Definition at line 143 of file primitive.cpp.


Member Function Documentation

const Eigen::Vector3d & Avogadro::Molecule::center (  )  const

Definition at line 315 of file primitive.cpp.

Atom * Avogadro::Molecule::CreateAtom ( void   ) 

Virtual function inherited from OpenBabel::OBMol.

Creates a new Atom object.

Returns:
pointer to a newly allocated Atom object

Definition at line 147 of file primitive.cpp.

Bond * Avogadro::Molecule::CreateBond ( void   ) 

Virtual function inherited from OpenBabel::OBMol.

Creates a new Bond object.

Returns:
pointer to a newly allocated Bond object

Definition at line 168 of file primitive.cpp.

Residue * Avogadro::Molecule::CreateResidue ( void   ) 

Virtual function inherited from OpenBabel::OBMol.

Creates a new Residue object.

Returns:
pointer to a newly allocated Residue object

Definition at line 189 of file primitive.cpp.

void Avogadro::Molecule::DestroyAtom ( OpenBabel::OBAtom *  atom  ) 

Virtual function inherited from OpenBabel::OBMol.

Deletes an Atom object.

Parameters:
atom the atom to delete

Definition at line 224 of file primitive.cpp.

void Avogadro::Molecule::DestroyBond ( OpenBabel::OBBond *  bond  ) 

Virtual function inherited from OpenBabel::OBMol.

Deletes an Bond object.

Parameters:
atom the bond to delete

Definition at line 270 of file primitive.cpp.

void Avogadro::Molecule::DestroyResidue ( OpenBabel::OBResidue *  residue  ) 

Virtual function inherited from OpenBabel::OBMol.

Deletes an Residue object.

Parameters:
atom the residue to delete

Definition at line 291 of file primitive.cpp.

const Atom * Avogadro::Molecule::farthestAtom (  )  const

Definition at line 336 of file primitive.cpp.

Atom * Avogadro::Molecule::getAtomById ( unsigned long  id  )  const

Definition at line 235 of file primitive.cpp.

Bond * Avogadro::Molecule::getBondById ( unsigned long  id  )  const

Definition at line 281 of file primitive.cpp.

Atom * Avogadro::Molecule::newAtom ( unsigned long  id  ) 

Definition at line 203 of file primitive.cpp.

Atom * Avogadro::Molecule::newAtom (  ) 

These are new functions to replace OBMol::NewAtom to use our new unique identifier functionality.

Definition at line 197 of file primitive.cpp.

Bond * Avogadro::Molecule::newBond ( unsigned long  id  ) 

Definition at line 250 of file primitive.cpp.

Bond * Avogadro::Molecule::newBond (  ) 

These are new functions to replace OBMol::NewBond to use our new unique identifier functionality.

Definition at line 245 of file primitive.cpp.

const Eigen::Vector3d & Avogadro::Molecule::normalVector (  )  const

Definition at line 322 of file primitive.cpp.

Molecule & Avogadro::Molecule::operator+= ( const Molecule &  other  ) 

Definition at line 391 of file primitive.cpp.

Molecule & Avogadro::Molecule::operator= ( const Molecule &  other  ) 

Definition at line 343 of file primitive.cpp.

void Avogadro::Molecule::primitiveAdded ( Primitive *  primitive  )  [signal]

Emitted when a child primitive is added.

Parameters:
primitive pointer to the primitive that was added

void Avogadro::Molecule::primitiveRemoved ( Primitive *  primitive  )  [signal]

Emitted when a child primitive is deleted.

Parameters:
primitive pointer to the primitive that was updated before it is free'd

void Avogadro::Molecule::primitiveUpdated ( Primitive *  primitive  )  [signal]

Emitted when a child primitive is updated.

Parameters:
primitive pointer to the primitive that was updated

const double & Avogadro::Molecule::radius (  )  const

Definition at line 329 of file primitive.cpp.

void Avogadro::Molecule::update (  ) 

Function used to push changes to a primitive to the rest of the system.

At this time there is no way (other than this) to generate a signal when properties of a primitive change.

In the case of the Atom primitive, this should be called when changes to coordinates have been made.

Reimplemented from Avogadro::Primitive.

Definition at line 308 of file primitive.cpp.


The documentation for this class was generated from the following files:
  • src/primitive.h
  • primitive.cpp

kalzium

Skip menu "kalzium"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

kdeedu

Skip menu "kdeedu"
  • kalzium
  • kanagram
  • kig
  •   lib
  • klettres
  • kstars
  • libkdeedu
  •   keduvocdocument
  •   docs
  •   src
  • parley
  •   stepcore
Generated for kdeedu by doxygen 1.5.4
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal