ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE_old/src/mdtools/libmdCode/fortranWrappers.cpp
Revision: 359
Committed: Mon Mar 17 21:38:57 2003 UTC (21 years, 6 months ago) by mmeineke
File size: 1729 byte(s)
Log Message:
adding more to the interface

File Contents

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