ObjCryst++  1.5CVS
Public Member Functions | Private Attributes
ObjCryst::MolAtom Class Reference

MolAtom : atom inside a Molecule. More...

List of all members.

Public Member Functions

 MolAtom (const REAL x, const REAL y, const REAL z, const ScatteringPower *pPow, const string &name, Molecule &parent)
 Constructor for a MolAtom.
virtual ~MolAtom ()
 Destructor.
void SetName (const string &name)
const string & GetName () const
string & GetName ()
const MoleculeGetMolecule () const
MoleculeGetMolecule ()
const REAL & X () const
const REAL & Y () const
const REAL & Z () const
REAL & X ()
REAL & Y ()
REAL & Z ()
REAL GetX () const
REAL GetY () const
REAL GetZ () const
REAL GetOccupancy () const
void SetOccupancy (const REAL)
bool IsDummy () const
 Returns true if this is a dummy atom, i.e.
const ScatteringPowerGetScatteringPower () const
void SetScatteringPower (const ScatteringPower &)
virtual void XMLOutput (ostream &os, int indent=0) const
virtual void XMLInput (istream &is, const XMLCrystTag &tag)
void SetIsInRing (const bool r) const
 Flag this atom as being in a ring (or not).
bool IsInRing () const
void SetX (const REAL) const
 Set the X,Y,Z coordinate - this is const because sometimes their coordinate must be changed even though the atom does not move, if the atom is part of a rigid group (its position is then described by a combination of atomic cooordinates, plus a global translation and rotation...
void SetY (const REAL) const
void SetZ (const REAL) const

Private Attributes

string mName
 Name for this atom.
REAL mX
 Cartesian oordinates in the Molecule reference frame.
REAL mY
REAL mZ
REAL mOccupancy
 Occupancy.
const ScatteringPowermpScattPow
 ScatteringPower.
MoleculempMol
 Parent Molecule.
bool mIsInRing
 Is the atom in a ring ?

Detailed Description

MolAtom : atom inside a Molecule.

This keeps coordinates, recorded in a cartesian frame (in Angstroem), the associated scattering power and it also keeps in a list of all bonds in which this atom is involved.

Note:
maybe it's not a great idea to keep a reference of bonds for this atom in here

Constructor & Destructor Documentation

ObjCryst::MolAtom::MolAtom ( const REAL  x,
const REAL  y,
const REAL  z,
const ScatteringPower pPow,
const string &  name,
Molecule parent 
)

Constructor for a MolAtom.

   
virtual ObjCryst::MolAtom::~MolAtom ( )
virtual

Destructor.

Tells the parent Molecule and all Bond that it is being destroyed.


Member Function Documentation

bool ObjCryst::MolAtom::IsDummy ( ) const

Returns true if this is a dummy atom, i.e.

without an associated scattering power.

Dummy atoms can be used to mark positions, or for restraints.

void ObjCryst::MolAtom::SetIsInRing ( const bool  r) const

Flag this atom as being in a ring (or not).

This is a const method because the existence of a ring is only a consequence of the connectivity of the Molecule.

void ObjCryst::MolAtom::SetX ( const REAL  ) const

Set the X,Y,Z coordinate - this is const because sometimes their coordinate must be changed even though the atom does not move, if the atom is part of a rigid group (its position is then described by a combination of atomic cooordinates, plus a global translation and rotation...


Member Data Documentation

REAL ObjCryst::MolAtom::mX
mutableprivate

Cartesian oordinates in the Molecule reference frame.

mutable because they may need to be changed when in a rigid group, even though the end position of the atom remains the same.


The documentation for this class was generated from the following file: