| 4 |
|
#include "MakeStamps.hpp" |
| 5 |
|
#include "MoleculeStamp.hpp" |
| 6 |
|
#include "simError.h" |
| 7 |
+ |
#include "mpiBASS.h" |
| 8 |
|
|
| 9 |
|
LinkedMolStamp::~LinkedMolStamp(){ |
| 10 |
|
if( mol_stamp != NULL ) delete mol_stamp; |
| 61 |
|
// if the key is less than zero, we've had an overflow error |
| 62 |
|
|
| 63 |
|
sprintf( painCave.errMsg, |
| 64 |
< |
"There has been an overflow error in the hash key."); |
| 64 |
> |
"There has been an overflow error in the MakeStamps hash key."); |
| 65 |
|
painCave.isFatal = 1; |
| 66 |
|
simError(); |
| 67 |
+ |
#ifdef IS_MPI |
| 68 |
+ |
if( painCave.isEventLoop ){ |
| 69 |
+ |
if( worldRank == 0 ) mpiInterfaceExit(); |
| 70 |
+ |
} |
| 71 |
+ |
#endif //is_mpi |
| 72 |
|
} |
| 73 |
|
|
| 74 |
|
return key; |
| 111 |
|
switch( the_event->evt.asmt.asmt_type ){ |
| 112 |
|
|
| 113 |
|
case STRING: |
| 114 |
< |
current_mol->assignString( the_event->evt.asmt.lhs, |
| 115 |
< |
the_event->evt.asmt.rhs.sval ); |
| 110 |
< |
return 1; |
| 111 |
< |
break; |
| 112 |
< |
|
| 113 |
< |
case DOUBLE: |
| 114 |
< |
current_mol->assignDouble( the_event->evt.asmt.lhs, |
| 115 |
< |
the_event->evt.asmt.rhs.dval ); |
| 116 |
< |
return 1; |
| 114 |
> |
return current_mol->assignString( the_event->evt.asmt.lhs, |
| 115 |
> |
the_event->evt.asmt.rhs.sval ); |
| 116 |
|
break; |
| 117 |
|
|
| 118 |
+ |
case DOUBLE: |
| 119 |
+ |
return current_mol->assignDouble( the_event->evt.asmt.lhs, |
| 120 |
+ |
the_event->evt.asmt.rhs.dval ); |
| 121 |
+ |
break; |
| 122 |
+ |
|
| 123 |
|
case INT: |
| 124 |
< |
current_mol->assignInt( the_event->evt.asmt.lhs, |
| 125 |
< |
the_event->evt.asmt.rhs.ival ); |
| 122 |
< |
return 1; |
| 124 |
> |
return current_mol->assignInt( the_event->evt.asmt.lhs, |
| 125 |
> |
the_event->evt.asmt.rhs.ival ); |
| 126 |
|
break; |
| 127 |
|
|
| 128 |
|
default: |