#include <gcu/crystaldoc.h>

Public Member Functions | |
| CrystalDoc (Application *App) | |
| virtual | ~CrystalDoc () |
| void | ParseXMLTree (xmlNode *xml) |
| void | Update () |
| CrystalView * | GetView () |
| void | Draw () |
| virtual CrystalView * | CreateNewView () |
| virtual CrystalAtom * | CreateNewAtom () |
| virtual CrystalLine * | CreateNewLine () |
| virtual CrystalCleavage * | CreateNewCleavage () |
| xmlDocPtr | BuildXMLTree () |
| virtual const char * | GetProgramId () |
Protected Member Functions | |
| void | Init () |
| void | Reinit () |
| virtual bool | LoadNewView (xmlNodePtr node) |
Protected Attributes | |
| gcLattices | m_lattice |
| gdouble | m_a |
| gdouble | m_b |
| gdouble | m_c |
| gdouble | m_alpha |
| gdouble | m_beta |
| gdouble | m_gamma |
| gdouble | m_xmin |
| gdouble | m_ymin |
| gdouble | m_zmin |
| gdouble | m_xmax |
| gdouble | m_ymax |
| gdouble | m_zmax |
| gboolean | m_bFixedSize |
| CrystalAtomList | AtomDef |
| CrystalAtomList | Atoms |
| CrystalLineList | LineDef |
| CrystalLineList | Lines |
| CrystalCleavageList | Cleavages |
| list< CrystalView * > | m_Views |
Definition at line 80 of file crystaldoc.h.
| gcu::CrystalDoc::CrystalDoc | ( | Application * | App | ) |
The constructor of CrystalDoc
| virtual gcu::CrystalDoc::~CrystalDoc | ( | ) | [virtual] |
The destructor of CrystalDoc
| void gcu::CrystalDoc::ParseXMLTree | ( | xmlNode * | xml | ) |
| xml,: | a pointer to the root xmlNode of the xmlDoc containing the definition of the crystal. |
CrystalDoc* crystal = new CrystalDoc(); xmlDocPtr doc = xmlParseFile(filename); crystal->ParseXMLTree(doc->children);
| void gcu::CrystalDoc::Update | ( | ) |
This method must be called when a new document is loaded or when the definition of the crystal is changed. It recalculates everything and updates all the views.
| CrystalView* gcu::CrystalDoc::GetView | ( | ) |
Reimplemented from gcu::GLDocument.
| void gcu::CrystalDoc::Draw | ( | ) | [virtual] |
Draws the document using OpenGL primitives.
Implements gcu::GLDocument.
| virtual CrystalView* gcu::CrystalDoc::CreateNewView | ( | ) | [virtual] |
Creates a view of the document. This method should be overrided by programs deriving a new view class from CrystalView.
| virtual CrystalAtom* gcu::CrystalDoc::CreateNewAtom | ( | ) | [virtual] |
Creates a new atom. This method should be overrided by programs deriving a new view class from CrystalAtom.
| virtual CrystalLine* gcu::CrystalDoc::CreateNewLine | ( | ) | [virtual] |
Creates a new line. This method should be overrided by programs deriving a new view class from CrystalLine.
| virtual CrystalCleavage* gcu::CrystalDoc::CreateNewCleavage | ( | ) | [virtual] |
Creates a new cleavage. This method should be overrided by programs deriving a new line class from CrystalCleavage
| xmlDocPtr gcu::CrystalDoc::BuildXMLTree | ( | ) |
Builds the xmlDoc corresponding to the crystal structure.
| virtual const char* gcu::CrystalDoc::GetProgramId | ( | ) | [virtual] |
| void gcu::CrystalDoc::Init | ( | ) | [protected] |
Initialize a new CrystalDoc instance.
| void gcu::CrystalDoc::Reinit | ( | ) | [protected] |
Reinitialize a CrystalDoc instance. Used when loading a file in an already existing document.
| virtual bool gcu::CrystalDoc::LoadNewView | ( | xmlNodePtr | node | ) | [protected, virtual] |
| node,: | the xmlNode containing the serialized view. |
gcLattices gcu::CrystalDoc::m_lattice [protected] |
The Bravais lattice of the crystal.
Definition at line 179 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_a [protected] |
The a parameter of the unit cell.
Definition at line 183 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_b [protected] |
The b parameter of the unit cell.
Definition at line 187 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_c [protected] |
The c parameter of the unit cell.
Definition at line 191 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_alpha [protected] |
The alpha angle of the unit cell.
Definition at line 195 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_beta [protected] |
The beta angle of the unit cell.
Definition at line 199 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_gamma [protected] |
The gamma angle of the unit cell.
Definition at line 203 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_xmin [protected] |
The minimum x coordinate in the representation of the crystal structure.
Definition at line 207 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_ymin [protected] |
The minimum y coordinate in the representation of the crystal structure.
Definition at line 211 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_zmin [protected] |
The minimum z coordinate in the representation of the crystal structure.
Definition at line 215 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_xmax [protected] |
The maximum x coordinate in the representation of the crystal structure.
Definition at line 219 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_ymax [protected] |
The maximum y coordinate in the representation of the crystal structure.
Definition at line 223 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_zmax [protected] |
The maximum z coordinate in the representation of the crystal structure.
Definition at line 227 of file crystaldoc.h.
gboolean gcu::CrystalDoc::m_bFixedSize [protected] |
true if cleavages must not change positions in the view.
Definition at line 231 of file crystaldoc.h.
CrystalAtomList gcu::CrystalDoc::AtomDef [protected] |
List of the atoms in the definition of the crystal
Definition at line 235 of file crystaldoc.h.
CrystalAtomList gcu::CrystalDoc::Atoms [protected] |
List of the atoms displayed.
Definition at line 239 of file crystaldoc.h.
CrystalLineList gcu::CrystalDoc::LineDef [protected] |
List of the lines in the definition of the crystal
Definition at line 243 of file crystaldoc.h.
CrystalLineList gcu::CrystalDoc::Lines [protected] |
List of the lines displayed.
Definition at line 247 of file crystaldoc.h.
CrystalCleavageList gcu::CrystalDoc::Cleavages [protected] |
List of the cleavages defined.
Definition at line 251 of file crystaldoc.h.
list<CrystalView *> gcu::CrystalDoc::m_Views [protected] |
List of the views of the document.
Definition at line 255 of file crystaldoc.h.
1.5.4