ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libBASS/MakeStamps.cpp
(Generate patch)

Comparing trunk/OOPSE/libBASS/MakeStamps.cpp (file contents):
Revision 747 by gezelter, Fri Sep 5 21:28:52 2003 UTC vs.
Revision 988 by gezelter, Tue Jan 27 19:37:48 2004 UTC

# Line 1 | Line 1
1 < #include <cstdlib>
2 < #include <cstdio>
1 > #include <stdlib.h>
2 > #include <stdio.h>
3 > #include <string.h>
4  
5   #include "MakeStamps.hpp"
6   #include "MoleculeStamp.hpp"
7 + #include "RigidBodyStamp.hpp"
8   #include "simError.h"
9   #ifdef IS_MPI
10   #include "mpiBASS.h"
# Line 208 | Line 210 | int MakeStamps::moleculeEnd( event* the_event ){
210    if( the_event->err_msg != NULL ) return 0;
211  
212    addMolStamp( current_mol );
213 +  return 1;
214 + }
215 +
216 + int MakeStamps::newRigidBody( event* the_event ){
217 +  
218 +  current_rigidbody = new RigidBodyStamp;
219 +  
220 +  the_event->err_msg = current_mol->addRigidBody( current_rigidbody,
221 +                                                  the_event->evt.blk_index );
222 +  if( the_event->err_msg != NULL ) return 0;
223 +  return 1;
224 + }
225 +
226 + int MakeStamps::rigidBodyAssign( event* the_event ){
227 +
228 +  switch( the_event->evt.asmt.asmt_type ){
229 +    
230 +  case STRING:
231 +    the_event->err_msg =
232 +      current_rigidbody->assignString( the_event->evt.asmt.lhs,
233 +                                       the_event->evt.asmt.rhs.sval );
234 +    if( the_event->err_msg != NULL ) return 0;
235 +    return 1;
236 +    break;
237 +    
238 +  case DOUBLE:
239 +    the_event->err_msg =
240 +      current_rigidbody->assignDouble( the_event->evt.asmt.lhs,
241 +                                       the_event->evt.asmt.rhs.dval );
242 +    if( the_event->err_msg != NULL ) return 0;
243 +    return 1;    
244 +    break;
245 +
246 +  case INT:
247 +    the_event->err_msg =
248 +      current_rigidbody->assignInt( the_event->evt.asmt.lhs,
249 +                                    the_event->evt.asmt.rhs.ival );
250 +    if( the_event->err_msg != NULL ) return 0;
251 +    return 1;
252 +    break;
253 +    
254 +  default:
255 +    the_event->err_msg = strdup( "MakeStamp error. Invalid rigidBody"
256 +                                 " assignment type" );
257 +    return 0;
258 +    break;
259 +  }
260 +  return 0;
261 + }
262 +
263 + int MakeStamps::rigidBodyMember( event* the_event ){
264 +
265 +  current_member = new MemberStamp;
266 +  
267 +  the_event->err_msg = current_rigidbody->addMember( current_member,
268 +                                                     the_event->evt.blk_index );
269 +  
270 +  if( the_event->err_msg != NULL ) return 0;
271    return 1;
272 +  
273   }
274  
275 + int MakeStamps::rigidBodyEnd( event* the_event ){
276 +
277 +  the_event->err_msg = current_rigidbody->checkMe();
278 +  if( the_event->err_msg != NULL ) return 0;
279 +  
280 +  return 1;
281 + }
282 +
283   int MakeStamps::newAtom( event* the_event ){
284    
285    current_atom = new AtomStamp;
286    
287    the_event->err_msg = current_mol->addAtom( current_atom,
288                                               the_event->evt.blk_index );
289 +  
290    if( the_event->err_msg != NULL ) return 0;
291    return 1;
292   }
# Line 325 | Line 395 | int MakeStamps::bondMember( event* the_event ){
395    return 0;
396   }
397  
398 < int MakeStamps::bondMember( event* the_event ){
398 > int MakeStamps::bondMembers( event* the_event ){
399  
400 <  current_bond->members( the_event->evt.mbr.a,
401 <                         the_event->evt.mbr.b );
400 >  current_bond->members( the_event->evt.mbrs.a,
401 >                         the_event->evt.mbrs.b );
402    return 1;
403   }
404  
# Line 388 | Line 458 | int MakeStamps::bendMember( event* the_event ){
458    return 0;
459   }
460  
461 < int MakeStamps::bendMember( event* the_event ){
461 > int MakeStamps::bendMembers( event* the_event ){
462  
463 <  current_bend->members( the_event->evt.mbr.a,
464 <                         the_event->evt.mbr.b,
465 <                         the_event->evt.mbr.c );
463 >  current_bend->members( the_event->evt.mbrs.a,
464 >                         the_event->evt.mbrs.b,
465 >                         the_event->evt.mbrs.c );
466    return 1;
467   }
468  
# Line 452 | Line 522 | int MakeStamps::torsionMember( event* the_event ){
522    return 0;
523   }
524  
525 < int MakeStamps::torsionMember( event* the_event ){
525 > int MakeStamps::torsionMembers( event* the_event ){
526  
527 <  current_torsion->members( the_event->evt.mbr.a,
528 <                            the_event->evt.mbr.b,
529 <                            the_event->evt.mbr.c,
530 <                            the_event->evt.mbr.d );
527 >  current_torsion->members( the_event->evt.mbrs.a,
528 >                            the_event->evt.mbrs.b,
529 >                            the_event->evt.mbrs.c,
530 >                            the_event->evt.mbrs.d );
531    return 1;
532   }
533  
# Line 474 | Line 544 | int MakeStamps::torsionEnd( event* the_event ){
544    
545    return 1;
546   }
547 +
548 + int MakeStamps::newMember( event* the_event ){
549 +  
550 +  current_member = new MemberStamp;
551 +  
552 +  the_event->err_msg = current_rigidbody->addMember( current_member,
553 +                                                     the_event->evt.blk_index );
554 +  if( the_event->err_msg != NULL ) return 0;
555 +  
556 +  return 1;
557 + }
558 +
559 + int MakeStamps::memberAssign( event* the_event ){
560 +  
561 +  switch( the_event->evt.asmt.asmt_type ){
562 +    
563 +  case STRING:
564 +    current_member->assignString( the_event->evt.asmt.lhs,
565 +                                  the_event->evt.asmt.rhs.sval );
566 +    return 1;
567 +    break;
568 +    
569 +  case DOUBLE:
570 +    current_member->assignDouble( the_event->evt.asmt.lhs,
571 +                                  the_event->evt.asmt.rhs.dval );
572 +    return 1;
573 +    break;
574 +    
575 +  case INT:
576 +    current_member->assignInt( the_event->evt.asmt.lhs,
577 +                               the_event->evt.asmt.rhs.ival );
578 +    return 1;
579 +    break;
580 +    
581 +  default:
582 +    the_event->err_msg = strdup( "MakeStamp error. Invalid member"
583 +                                 " assignment type" );
584 +    return 0;
585 +    break;
586 +  }
587 +  return 0;
588 + }
589 +
590 + int MakeStamps::memberEnd( event* the_event ){
591 +  
592 +  the_event->err_msg = current_member->checkMe();
593 +  if( the_event->err_msg != NULL ) return 0;
594 +  
595 +  return 1;
596 + }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines