#include <gcu/crystaldoc.h>
Inheritance diagram for gcu::CrystalDoc:

Public Member Functions | |
| CrystalDoc (Application *App) | |
| virtual | ~CrystalDoc () |
| void | ParseXMLTree (xmlNode *xml) |
| void | Update () |
| CrystalView * | GetView () |
| bool | IsDirty () |
| virtual void | SetDirty () |
| 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 |
| bool | m_bDirty |
| bool | m_bEmpty |
Definition at line 81 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 | ( | ) |
| bool gcu::CrystalDoc::IsDirty | ( | ) | [inline] |
Definition at line 116 of file crystaldoc.h.
References m_bDirty.
| virtual void gcu::CrystalDoc::SetDirty | ( | ) | [virtual] |
Signals the document as modified since the last saving operation.
| 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 188 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_a [protected] |
The a parameter of the unit cell.
Definition at line 192 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_b [protected] |
The b parameter of the unit cell.
Definition at line 196 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_c [protected] |
The c parameter of the unit cell.
Definition at line 200 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_alpha [protected] |
The alpha angle of the unit cell.
Definition at line 204 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_beta [protected] |
The beta angle of the unit cell.
Definition at line 208 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_gamma [protected] |
The gamma angle of the unit cell.
Definition at line 212 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_xmin [protected] |
The minimum x coordinate in the representation of the crystal structure.
Definition at line 216 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_ymin [protected] |
The minimum y coordinate in the representation of the crystal structure.
Definition at line 220 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_zmin [protected] |
The minimum z coordinate in the representation of the crystal structure.
Definition at line 224 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_xmax [protected] |
The maximum x coordinate in the representation of the crystal structure.
Definition at line 228 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_ymax [protected] |
The maximum y coordinate in the representation of the crystal structure.
Definition at line 232 of file crystaldoc.h.
gdouble gcu::CrystalDoc::m_zmax [protected] |
The maximum z coordinate in the representation of the crystal structure.
Definition at line 236 of file crystaldoc.h.
gboolean gcu::CrystalDoc::m_bFixedSize [protected] |
true if cleavages must not change positions in the view.
Definition at line 240 of file crystaldoc.h.
CrystalAtomList gcu::CrystalDoc::AtomDef [protected] |
List of the atoms in the definition of the crystal
Definition at line 244 of file crystaldoc.h.
CrystalAtomList gcu::CrystalDoc::Atoms [protected] |
List of the atoms displayed.
Definition at line 248 of file crystaldoc.h.
CrystalLineList gcu::CrystalDoc::LineDef [protected] |
List of the lines in the definition of the crystal
Definition at line 252 of file crystaldoc.h.
CrystalLineList gcu::CrystalDoc::Lines [protected] |
List of the lines displayed.
Definition at line 256 of file crystaldoc.h.
CrystalCleavageList gcu::CrystalDoc::Cleavages [protected] |
List of the cleavages defined.
Definition at line 260 of file crystaldoc.h.
list<CrystalView *> gcu::CrystalDoc::m_Views [protected] |
List of the views of the document.
Definition at line 264 of file crystaldoc.h.
bool gcu::CrystalDoc::m_bDirty [protected] |
true if the document has changed since the last saving. Changing the orientation of the model in one of the views is considered as a change.
Definition at line 269 of file crystaldoc.h.
Referenced by IsDirty().
bool gcu::CrystalDoc::m_bEmpty [protected] |
true if the document does not contain anything displayable.
Definition at line 273 of file crystaldoc.h.
1.5.1