Changeset 834ff3 for molecuilder/src/linkedcell.hpp
- Timestamp:
- Aug 3, 2009, 2:48:42 PM (16 years ago)
- Children:
- d8fce3, e78824
- Parents:
- 4e4940
- File:
-
- 1 edited
-
molecuilder/src/linkedcell.hpp (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
molecuilder/src/linkedcell.hpp
r4e4940 r834ff3 1 /* 2 * linkedcell.hpp 3 * 4 * If the linked cell should be usable, the class has to inherit LCNodeSet and the nodes (containing the Vectors) have to inherit LCNode. This works well 5 * for molecule and atom classes. 6 * 7 * Created on: Aug 3, 2009 8 * Author: heber 9 */ 10 1 11 #ifndef LINKEDCELL_HPP_ 2 12 #define LINKEDCELL_HPP_ 13 14 using namespace std; 3 15 4 16 // include config.h … … 7 19 #endif 8 20 9 #include "molecules.hpp"21 #include <list> 10 22 11 #define LinkedAtoms list <atom *> 23 #include "defs.hpp" 24 #include "helpers.hpp" 25 #include "vector.hpp" 12 26 13 class LinkedCell{ 27 class TesselPoint; 28 class PointCloud; 29 30 #define LinkedNodes list<TesselPoint *> 31 32 /** Linked Cell class for containing Vectors in real space efficiently. 33 */ 34 class LinkedCell { 14 35 public: 15 36 Vector max; // upper boundary 16 37 Vector min; // lower boundary 17 Linked Atoms *LC; // linked cell list38 LinkedNodes *LC; // linked cell list 18 39 double RADIUS; // cell edge length 19 40 int N[NDIM]; // number of cells per axis … … 22 43 23 44 LinkedCell(); 24 LinkedCell( molecule *mol, double RADIUS);45 LinkedCell(PointCloud *set, double RADIUS); 25 46 ~LinkedCell(); 26 Linked Atoms* GetCurrentCell();27 bool SetIndexTo Atom(atom*Walker);47 LinkedNodes* GetCurrentCell(); 48 bool SetIndexToNode(TesselPoint *Walker); 28 49 bool SetIndexToVector(Vector *x); 29 50 bool CheckBounds(); 30 51 31 52 // not implemented yet 32 bool Add Atom(atom*Walker);33 bool Delete Atom(atom*Walker);34 bool Move Atom(atom*Walker);53 bool AddNode(Vector *Walker); 54 bool DeleteNode(Vector *Walker); 55 bool MoveNode(Vector *Walker); 35 56 }; 36 57
Note:
See TracChangeset
for help on using the changeset viewer.
