ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-3.0/src/types/AtomStamp.hpp
Revision: 1490
Committed: Fri Sep 24 04:16:43 2004 UTC (19 years, 9 months ago) by gezelter
File size: 1209 byte(s)
Log Message:
Import of OOPSE v. 2.0

File Contents

# User Rev Content
1 gezelter 1490 #ifndef __ATOMSTAMP_H__
2     #define __ATOMSTAMP_H__
3    
4     #include "LinkedAssign.hpp"
5    
6     class AtomStamp{
7    
8     public:
9     AtomStamp();
10     ~AtomStamp();
11    
12     void setPosition( double x, double y, double z );
13     void setOrientation( double phi, double theta, double psi );
14     char* assignString( char* lhs, char* rhs );
15     char* assignDouble( char* lhs, double rhs );
16     char* assignInt( char* lhs, int rhs );
17     char* checkMe( void );
18    
19     char* getType( void ) { return type; }
20     short int havePosition( void ) { return have_position; }
21     short int haveOrientation( void ) { return have_orientation; }
22     double getPosX( void ) { return pos[0]; }
23     double getPosY( void ) { return pos[1]; }
24     double getPosZ( void ) { return pos[2]; }
25     double getEulerPhi( void ) { return ornt[0]; }
26     double getEulerTheta( void ) { return ornt[1]; }
27     double getEulerPsi( void ) { return ornt[2]; }
28    
29    
30     private:
31    
32     double pos[3]; //the position vector
33     short int have_position; // boolean for positions
34     double ornt[3]; // the Euler angles
35     short int have_orientation;
36     char type[100]; // the type name of the atom
37     short int have_type;
38    
39     LinkedAssign* unhandled; // the list of unhandled assignments
40     short int have_extras;
41     };
42    
43     #endif