ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libBASS/MemberStamp.cpp
Revision: 988
Committed: Tue Jan 27 19:37:48 2004 UTC (20 years, 7 months ago) by gezelter
File size: 1644 byte(s)
Log Message:
More BASS changes to do new rigidBody scheme

File Contents

# User Rev Content
1 gezelter 988 #include <stdlib.h>
2     #include <stdio.h>
3     #include <string.h>
4     #include <iostream>
5    
6     #include "MemberStamp.hpp"
7    
8     char MemberStamp::errMsg[500];
9    
10     MemberStamp::MemberStamp(){
11    
12     atomAssigned = 0;
13    
14     unhandled = NULL;
15     have_extras = 0;
16     }
17    
18     MemberStamp::~MemberStamp(){
19    
20     if( unhandled != NULL ) delete unhandled;
21     }
22    
23     char* MemberStamp::assignString( char* lhs, char* rhs ){
24    
25     if( unhandled == NULL ) unhandled = new LinkedAssign( lhs, rhs );
26     else unhandled->add( lhs, rhs );
27     have_extras = 1;
28    
29     return NULL;
30     }
31    
32     char* MemberStamp::assignDouble( char* lhs, double rhs ){
33    
34     if( !strcmp( lhs, "atom" ) ){
35    
36     myAtom = (int)rhs;
37    
38     if( atomAssigned ){
39     sprintf( errMsg,
40     "MemberStamp error, atom already assigned "
41     " for this Member.\n");
42     return strdup( errMsg );
43     }
44     atomAssigned = 1;
45     }
46     else {
47     if( unhandled == NULL ) unhandled = new LinkedAssign( lhs, rhs );
48     else unhandled->add( lhs, rhs );
49     have_extras = 1;
50     }
51     return NULL;
52     }
53    
54     char* MemberStamp::assignInt( char* lhs, int rhs ){
55     if( !strcmp( lhs, "atom" ) ){
56    
57     myAtom = (int)rhs;
58    
59     if( atomAssigned ){
60     sprintf( errMsg,
61     "MemberStamp error, atom already assigned "
62     " for this Member.\n");
63     return strdup( errMsg );
64     }
65     atomAssigned = 1;
66     }
67     else {
68     if( unhandled == NULL ) unhandled = new LinkedAssign( lhs, rhs );
69     else unhandled->add( lhs, rhs );
70     have_extras = 1;
71     }
72     return NULL;
73     }
74    
75     char* MemberStamp::checkMe(){
76    
77     if( !atomAssigned ){
78     return strdup( "MemberStamp error. No atom was assigned to this Member" );
79     }
80    
81     return NULL;
82     }