ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/fortranWrappers.cpp
Revision: 378
Committed: Fri Mar 21 17:42:12 2003 UTC (21 years, 3 months ago) by mmeineke
File size: 1780 byte(s)
Log Message:
This commit was generated by cvs2svn to compensate for changes in r377,
which included commits to RCS files with non-trunk default branches.

File Contents

# Content
1 #define __C
2 #include "fSimulation.h"
3 #include <fortranWrappers.hpp>
4
5
6 extern "C" {
7
8 void wrapforcefield_( void (*wrapFunction)( void (*p1) makeAtypeList,
9 void (*p2) initFortranFFList,
10 void (*p3) doForceLoopList ));
11
12 void wrapsimmod_ ( void (*wrapFunction)( void (*p1) setFortranSimList,
13 void (*p2) setFortranBoxList) );
14
15 #ifdef IS_MPI
16 void wrapsimparallelmod_( void (*wrapFunction)(void (*p1) setFortranMPIlist ) );
17 #endif // is_mpi
18
19 }
20
21
22 void wrapFF( void (*p1) makeAtypeList, void (*p2) initFortranFFList,
23 void (*p3) doForceLoopList );
24 void (*makeAtype) makeAtypeList;
25 void (*initFortranFF) initFortranFFList;
26
27 void wrapSimInfo( void (*p1) setFortranSimList, void (*p2) setFortranBoxList );
28
29 #ifdef IS_MPI
30 void wrapSimParallel(void (*p1) setFortranMPIlist );
31 #endif // is_mpi
32
33
34 // take care of the ForceField functions
35
36 ForceFields* currentFF;
37 void wrapMeFF( ForceFields* thisFF ){
38
39 currentFF = thisFF;
40 wrapforcefield_( wrapFF );
41 }
42
43
44 void wrapFF( void (*p1) makeAtypeList, void (*p2) initFortranFFList,
45 void (*p3) doForceLoopList ){
46
47 makeAtype = p1;
48 initFortranFF = p2;
49 currentFF->setFortranForceLoop( p3 );
50 }
51
52
53 // wrap the SimInfo functions
54
55 SimInfo* currentPlug;
56 void wrapMeSimInfo( SimInfo* thePlug ){
57
58 currentPlug = thePlug;
59 wrapsimmod_( wrapSimInfo );
60 }
61
62 void wrapSimInfo( void (*p1) setFortranSimList, void (*p2) setFortranBoxList ){
63
64 currentPlug->setInternal( p1, p2 );
65 }
66
67
68 #ifdef IS_MPI
69
70 // wrap the mpiSim functions
71
72 mpiSimulation* currentMPIsim;
73 void wrapMeSimParallel( mpiSimulation* thisMPIsim ){
74
75 currentMPIsim = thisMPIsim;
76 wrapsimparallelmod_( wrapSimParallel );
77 }
78
79 void wrapSimParallel(void (*p1) setFortranMPIlist ){
80
81 currentMPIsim->setInternal( p1 );
82 }
83
84
85 #endif // is_mpi