Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

Atom Class Reference

An atom, building the lattice. More...

#include <lattice.h>

List of all members.

Public Methods

 Atom (Double_t x, Double_t y, Int_t, Lattice *)
virtual ~Atom ()
void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Modifying mouse behaviour.

void InsertDefect ()
 Quick access to these funcs through the context menu.

void RemoveDefect ()
void CompPartEnergy ()
void SetLink (Bool_t fl)
Bool_t IsDefect ()

Private Attributes

Bool_t bDefect
Bool_t bBorderAtom
Bool_t bCornerAtom
Bool_t bLink
Int_t index
UChar_t pos
UChar_t type
Atom * linkedAtom
Atom * linkedAtoms [3]
LatticepLattice

Friends

class Layer
class Lattice


Detailed Description

An atom, building the lattice.

An Atom is inherited from TMarker and defines a special behaviour for reacting on the mouse and other atoms. An Atom can be transformed into a defect and as a result, behaves different to other defects.

Definition at line 94 of file lattice.h.


Constructor & Destructor Documentation

Atom::Atom Double_t    x,
Double_t    y,
Int_t   ,
Lattice  
 

Definition at line 13 of file lattice.cpp.

References Lattice::atomShape, Lattice::atomSize, bBorderAtom, bCornerAtom, bDefect, bLink, index, kAtomCenter, pLattice, pos, and type.

Atom::~Atom   [virtual]
 

Definition at line 29 of file lattice.cpp.


Member Function Documentation

void Atom::CompPartEnergy  
 

Definition at line 83 of file lattice.cpp.

References Layer::CompPartEnergy(), pLattice, and Lattice::pLayer.

void Atom::ExecuteEvent Int_t    event,
Int_t    px,
Int_t    py
 

Modifying mouse behaviour.

Overrides TMarker::ExecuteEvent, so one can not move an atom

Definition at line 34 of file lattice.cpp.

References bDefect.

void Atom::InsertDefect  
 

Quick access to these funcs through the context menu.

Definition at line 50 of file lattice.cpp.

References bBorderAtom, bCornerAtom, bDefect, Lattice::bInfo, bLink, Lattice::defArrayCount, Lattice::defCount, Lattice::defectColor, Lattice::defects, Lattice::defectShape, Lattice::defectSize, Layer::GetMainFrame(), Lattice::GetNUniqueDefects(), linkedAtom, linkedAtoms, pLattice, Lattice::pLayer, MainFrame::SetInfoDefects(), and SetLink().

Referenced by Layer::MoveDefect(), and Lattice::RndInsertDefect().

Bool_t Atom::IsDefect   [inline]
 

Definition at line 111 of file lattice.h.

References bDefect.

Referenced by HexLattice::GetAtomNeighbor(), and SquareLattice::GetAtomNeighbor().

void Atom::RemoveDefect  
 

Definition at line 88 of file lattice.cpp.

References Lattice::atomColor, Lattice::atomShape, Lattice::atomSize, bBorderAtom, bCornerAtom, bDefect, Lattice::bInfo, bLink, Lattice::defArrayCount, Lattice::defCount, Lattice::defects, Layer::GetMainFrame(), Lattice::GetNUniqueDefects(), linkedAtom, linkedAtoms, pLattice, Lattice::pLayer, MainFrame::SetInfoDefects(), and SetLink().

void Atom::SetLink Bool_t    fl [inline]
 

Definition at line 109 of file lattice.h.

References bLink.

Referenced by InsertDefect(), and RemoveDefect().


Friends And Related Function Documentation

friend class Lattice [friend]
 

Definition at line 98 of file lattice.h.

friend class Layer [friend]
 

Definition at line 97 of file lattice.h.


Member Data Documentation

Bool_t Atom::bBorderAtom [private]
 

is atom at the very border of the lattice?

Definition at line 115 of file lattice.h.

Referenced by Atom(), InsertDefect(), RemoveDefect(), and Lattice::SetBorderMode().

Bool_t Atom::bCornerAtom [private]
 

is atom sitting at the corner? (=> 3 links)

Definition at line 116 of file lattice.h.

Referenced by Atom(), InsertDefect(), RemoveDefect(), and Lattice::SetCornerMode().

Bool_t Atom::bDefect [private]
 

flag for normal/defect

Definition at line 114 of file lattice.h.

Referenced by Atom(), ExecuteEvent(), InsertDefect(), IsDefect(), RemoveDefect(), and Lattice::RndInsertDefect().

Bool_t Atom::bLink [private]
 

shall the linked atoms functions be called?

Definition at line 117 of file lattice.h.

Referenced by Atom(), InsertDefect(), RemoveDefect(), and SetLink().

Int_t Atom::index [private]
 

index in atoms array

Definition at line 118 of file lattice.h.

Referenced by Atom(), Layer::CompPartEnergy(), Lattice::GetAtomIndex(), and Layer::MoveDefect().

Atom* Atom::linkedAtom [private]
 

the connected atom at the opposite border

Definition at line 121 of file lattice.h.

Referenced by InsertDefect(), RemoveDefect(), and Lattice::SetBorderMode().

Atom* Atom::linkedAtoms[3] [private]
 

the three connected corners

Definition at line 122 of file lattice.h.

Referenced by InsertDefect(), RemoveDefect(), and Lattice::SetCornerMode().

Lattice* Atom::pLattice [private]
 

a reference to the whole lattice

Definition at line 123 of file lattice.h.

Referenced by Atom(), CompPartEnergy(), InsertDefect(), and RemoveDefect().

UChar_t Atom::pos [private]
 

if atom sits on a border, specify it

Definition at line 119 of file lattice.h.

Referenced by Atom(), Lattice::GetAtomPos(), Lattice::SetBorderMode(), and Lattice::SetCornerMode().

UChar_t Atom::type [private]
 

lattice specific atom info

Definition at line 120 of file lattice.h.

Referenced by Atom(), Lattice::GetAtomType(), and Lattice::SetAtomType().


The documentation for this class was generated from the following files:
Generated on Sun Jun 16 20:08:05 2002 for XEIS by doxygen1.2.16