ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/mdtools/headers/MakeStamps.hpp
Revision: 11
Committed: Tue Jul 9 18:40:59 2002 UTC (22 years ago) by mmeineke
File size: 2047 byte(s)
Log Message:
This commit was generated by cvs2svn to compensate for changes in r10, which
included commits to RCS files with non-trunk default branches.

File Contents

# Content
1 #ifndef __MAKESTAMPS_H__
2 #define __MAKESTAMPS_H__
3
4 #include <cstdlib>
5 #include <cstring>
6
7 #include "BASS_interface.h"
8 #include "MoleculeStamp.hpp"
9 #include "AtomStamp.hpp"
10 #include "BondStamp.hpp"
11 #include "BendStamp.hpp"
12 #include "TorsionStamp.hpp"
13
14 class LinkedMolStamp{
15
16 public:
17 LinkedMolStamp(){ mol_stamp = NULL; next = NULL; }
18 ~LinkedMolStamp();
19
20 MoleculeStamp* match( char* id );
21 void setStamp( MoleculeStamp* the_stamp ){ mol_stamp = the_stamp; }
22 MoleculeStamp* getStamp(){ return mol_stamp; }
23 void setNext( LinkedMolStamp* the_next ){ next = the_next; }
24 LinkedMolStamp* getNext() { return next; }
25
26 private:
27 MoleculeStamp* mol_stamp;
28 LinkedMolStamp* next;
29 };
30
31 class MakeStamps{
32
33 public:
34 MakeStamps();
35 ~MakeStamps();
36
37 int newMolecule( event* the_event );
38 int moleculeAssign( event* the_event );
39 int moleculeEnd( event* the_event );
40
41 int newAtom( event* the_event );
42 int atomPosition( event* the_event );
43 int atomOrientation( event* the_event );
44 int atomAssign( event* the_event );
45 int atomEnd( event* the_event );
46
47 int newBond( event* the_event );
48 int bondAssign( event* the_event );
49 int bondMember( event* the_event );
50 int bondConstraint( event* the_event );
51 int bondEnd( event* the_event );
52
53 int newBend( event* the_event );
54 int bendAssign( event* the_event );
55 int bendMember( event* the_event );
56 int bendConstraint( event* the_event );
57 int bendEnd( event* the_event );
58
59 int newTorsion( event* the_event );
60 int torsionAssign( event* the_event );
61 int torsionMember( event* the_event );
62 int torsionConstraint( event* the_event );
63 int torsionEnd( event* the_event );
64
65 MoleculeStamp* getMolecule( char* the_id );
66
67 private:
68
69 static const int hash_size = 51;
70 static const int hash_shift = 4;
71 int hash( char* text );
72 LinkedMolStamp** my_mols;
73 void addMolStamp( MoleculeStamp* the_stamp );
74
75 MoleculeStamp* current_mol;
76 AtomStamp* current_atom;
77 BondStamp* current_bond;
78 BendStamp* current_bend;
79 TorsionStamp* current_torsion;
80
81
82
83
84
85 };
86
87
88
89
90 #endif