|
The Gnome Chemistry Utils
0.14.17
|
#include <gcu/molecule.h>
Public Member Functions | |
| Molecule (TypeId Type=MoleculeType, ContentType ct=ContentType3D) | |
| Molecule (Atom *pAtom, ContentType ct=ContentType3D) | |
| virtual | ~Molecule () |
| void | AddChild (Object *object) |
| virtual void | AddAtom (Atom *pAtom) |
| virtual void | AddBond (Bond *pBond) |
| virtual void | Remove (gcu::Object *pObject) |
| void | UpdateCycles (Bond *pBond) |
| void | UpdateCycles () |
| bool | operator== (Molecule const &molecule) const |
| virtual unsigned | GetAtomsNumber () const |
| void | Clear () |
| Atom const * | GetFirstAtom (std::list< Atom *>::const_iterator &i) const |
| Atom const * | GetNextAtom (std::list< Atom *>::const_iterator &i) const |
| Bond const * | GetFirstBond (std::list< Bond *>::const_iterator &i) const |
| Bond const * | GetNextBond (std::list< Bond *>::const_iterator &i) const |
| void | SetName (char const *name, char const *convention) |
| char const * | GetName (char const *convention=NULL) |
| std::string | Name () |
| void | ResetIndentifiers () |
| std::string const & | GetCML () |
| void | ClearCycles () |
| std::string const & | GetInChI () |
| std::string const & | GetInChIKey () |
| std::string const & | GetSMILES () |
| virtual std::string | GetRawFormula () const |
Public Member Functions inherited from gcu::Object | |
| Object (TypeId Id=OtherType) | |
| virtual | ~Object () |
| TypeId | GetType () const |
| void | SetId (gchar const *Id) |
| char const * | GetId () const |
| Object * | GetMolecule () const |
| Object * | GetReaction () const |
| Object * | GetGroup () const |
| Document * | GetDocument () const |
| Application * | GetApplication () const |
| Object * | GetParentOfType (TypeId Id) const |
| Object * | GetChild (const gchar *Id) const |
| Object * | GetFirstChild (std::map< std::string, Object *>::iterator &i) |
| Object * | GetNextChild (std::map< std::string, Object *>::iterator &i) |
| Object * | GetDescendant (const char *Id) const |
| Object * | GetParent () const |
| void | SetParent (Object *Parent) |
| virtual xmlNodePtr | Save (xmlDocPtr xml) const |
| virtual bool | Load (xmlNodePtr node) |
| virtual bool | GetCoords (double *x, double *y, double *z=NULL) const |
| virtual void | Move (double x, double y, double z=0.) |
| virtual void | Transform2D (Matrix2D &m, double x, double y) |
| bool | SaveChildren (xmlDocPtr xml, xmlNodePtr node) const |
| void | SaveId (xmlNodePtr node) const |
| xmlNodePtr | GetNodeByProp (xmlNodePtr node, char const *Property, char const *Id) |
| xmlNodePtr | GetNextNodeByProp (xmlNodePtr node, char const *Property, char const *Id) |
| xmlNodePtr | GetNodeByName (xmlNodePtr node, char const *Name) |
| xmlNodePtr | GetNextNodeByName (xmlNodePtr node, char const *Name) |
| bool | HasChildren () const |
| unsigned | GetChildrenNumber () const |
| virtual Object * | GetAtomAt (double x, double y, double z=0.) |
| virtual bool | Build (std::set< Object * > const &Children) throw (std::invalid_argument) |
| virtual double | GetYAlign () |
| virtual bool | BuildContextualMenu (UIManager *uim, Object *object, double x, double y) |
| void | EmitSignal (SignalId Signal) |
| virtual bool | OnSignal (SignalId Signal, Object *Child) |
| void | Lock (bool state=true) |
| bool | IsLocked () |
| Object * | GetFirstLink (std::set< Object *>::iterator &i) |
| Object * | GetNextLink (std::set< Object *>::iterator &i) |
| void | Link (Object *object) |
| void | Unlink (Object *object) |
| virtual void | OnUnlink (Object *object) |
| void | GetPossibleAncestorTypes (std::set< TypeId > &types) const |
| virtual bool | SetProperty (unsigned property, char const *value) |
| virtual std::string | GetProperty (unsigned property) const |
| virtual void | OnLoaded () |
| void | SetDirty (bool dirty=true) |
| std::string | Identity () |
| virtual char const * | HasPropertiesDialog () const |
| virtual bool | CanSelect () const |
| virtual void | NotifyEmpty () |
| void | ShowPropertiesDialog () |
| bool | GetDirty (void) const |
Static Public Member Functions | |
| static Molecule * | MoleculeFromFormula (Document *Doc, Formula const &formula, bool add_pseudo=true) |
Static Public Member Functions inherited from gcu::Object | |
| static TypeId | AddType (std::string TypeName, Object *(*CreateFunc)(), TypeId id=OtherType) |
| static void | AddAlias (TypeId id, std::string TypeName) |
| static Object * | CreateObject (const std::string &TypeName, Object *parent=NULL) |
| static TypeId | GetTypeId (const std::string &Name) |
| static std::string | GetTypeName (TypeId Id) |
| static void | AddMenuCallback (TypeId Id, BuildMenuCb cb) |
| static void | AddRule (TypeId type1, RuleId rule, TypeId type2) |
| static void | AddRule (const std::string &type1, RuleId rule, const std::string &type2) |
| static const std::set< TypeId > & | GetRules (TypeId type, RuleId rule) |
| static const std::set< TypeId > & | GetRules (const std::string &type, RuleId rule) |
| static void | SetCreationLabel (TypeId Id, std::string Label) |
| static const std::string & | GetCreationLabel (TypeId Id) |
| static const std::string & | GetCreationLabel (const std::string &TypeName) |
| static SignalId | CreateNewSignalId () |
Protected Attributes | |
| std::list< Cycle * > | m_Cycles |
| std::list< Chain * > | m_Chains |
| std::list< Atom * > | m_Atoms |
| std::list< Bond * > | m_Bonds |
Additional Inherited Members | |
Protected Member Functions inherited from gcu::Object | |
| virtual Dialog * | BuildPropertiesDialog () |
Represents molecules.
Definition at line 43 of file gcu/molecule.h.
| gcu::Molecule::Molecule | ( | TypeId | Type = MoleculeType, |
| ContentType | ct = ContentType3D |
||
| ) |
| Type | the type id of a derived class |
| ct | the content type for the molecule (2d or 3d), defaults to ContentType3D. |
The constructor. The type id may be changed in derived classes, otherwise the argument is not needed, since the default value is enough.
| gcu::Molecule::Molecule | ( | Atom * | pAtom, |
| ContentType | ct = ContentType3D |
||
| ) |
| pAtom | |
| ct | the content type for the molecule (2d or 3d), defaults to ContentType3D. |
Builds a molecule from an atom. If the atom has bonds, the connectivity will be explored and all atoms and bonds found will be added to the molecule.
|
virtual |
The destructor.
Reimplemented in gcp::Molecule, and gcugtk::Molecule.
|
virtual |
|
virtual |
|
virtual |
| object | an object, generally an atom or a bond. |
Adds an object (which might be an atom or a bond) to the molecule.
Reimplemented from gcu::Object.
Reimplemented in gcp::Molecule.
|
virtual |
Clears cycles and chains and call gcu::Object::Clear().
Reimplemented from gcu::Object.
Reimplemented in gcp::Molecule.
Referenced by GetAtomsNumber().
| void gcu::Molecule::ClearCycles | ( | ) |
Clears all information related to cycles.
Referenced by GetAtomsNumber().
|
inlinevirtual |
Reimplemented in gcp::Molecule.
Definition at line 113 of file gcu/molecule.h.
References Clear(), ClearCycles(), GetCML(), GetFirstAtom(), GetFirstBond(), GetInChI(), GetInChIKey(), GetName(), GetNextAtom(), GetNextBond(), GetRawFormula(), GetSMILES(), m_Atoms, MoleculeFromFormula(), Name(), ResetIndentifiers(), and SetName().
Referenced by gcu::Chem3dDoc::IsEmpty().
| std::string const& gcu::Molecule::GetCML | ( | ) |
Referenced by GetAtomsNumber().
| i | an uninitialized iterator. |
Referenced by GetAtomsNumber().
| i | an uninitialized iterator. |
Referenced by GetAtomsNumber().
| std::string const& gcu::Molecule::GetInChI | ( | ) |
Referenced by GetAtomsNumber().
| std::string const& gcu::Molecule::GetInChIKey | ( | ) |
Referenced by GetAtomsNumber().
| char const* gcu::Molecule::GetName | ( | char const * | convention = NULL | ) |
| convention | a naming convention. |
Referenced by GetAtomsNumber().
| i | an iterator initialized by a call to GetFirstAtom(). |
Referenced by GetAtomsNumber().
| i | an iterator initialized by a call to GetFirstBond(). |
Referenced by GetAtomsNumber().
|
virtual |
| std::string const& gcu::Molecule::GetSMILES | ( | ) |
Referenced by GetAtomsNumber().
|
static |
| Doc | a document. |
| formula | a formula |
| add_pseudo | tells if a pseudo atom (with Z = 0) has to be added (used when building a gcu::Residue instance). |
Tries to build a molecule from a formula, adding bonds between atoms. Atoms coordinates are not calculated.
Referenced by GetAtomsNumber().
|
virtual |
Reimplemented from gcu::Object.
Referenced by GetAtomsNumber().
| bool gcu::Molecule::operator== | ( | Molecule const & | molecule | ) | const |
| molecule | a molecule. |
|
virtual |
| pObject | an atom or a bond in the molecule. |
Removes an atom or a bond from a molecule.
Reimplemented in gcp::Molecule.
| void gcu::Molecule::ResetIndentifiers | ( | ) |
Reinitialize all chemical identifiers for the molecule (InChI, InChIKey, and SMILES
Referenced by GetAtomsNumber().
| void gcu::Molecule::SetName | ( | char const * | name, |
| char const * | convention | ||
| ) |
| name | a name. |
| convention | a naming convention, might be NULL. |
Adds a molecule name following convention. Only one name can be stored for a given convention.
Referenced by GetAtomsNumber().
| void gcu::Molecule::UpdateCycles | ( | Bond * | pBond | ) |
| pBond | a bond in the molecule. |
Updates the cycles list after a change, starting the exploration from pBond.
| void gcu::Molecule::UpdateCycles | ( | ) |
Updates the cycles list after a change.
|
protected |
The atoms in the molecule.
Definition at line 224 of file gcu/molecule.h.
Referenced by GetAtomsNumber().
|
protected |
The bonds in the molecule.
Definition at line 228 of file gcu/molecule.h.
|
protected |
The non cyclic chains contained in the molecules (not used at the moment).
Definition at line 220 of file gcu/molecule.h.
|
protected |
The cycles contained in the molecules.
Definition at line 216 of file gcu/molecule.h.
1.8.13