ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/fortranWrappers.cpp
Revision: 462
Committed: Sat Apr 5 02:56:27 2003 UTC (21 years, 2 months ago) by gezelter
File size: 2358 byte(s)
Log Message:
bug fixes for compilation

File Contents

# User Rev Content
1 mmeineke 377 #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 chuckv 460 void (*p3) doForceLoopList,
11     void (*p4) LJ_new_rcut_List,
12     void (*p5) set_sticky_params_List,
13 gezelter 462 void (*p6) set_gb_pair_params_List )
14 chuckv 460 );
15 mmeineke 377
16     void wrapsimmod_ ( void (*wrapFunction)( void (*p1) setFortranSimList,
17     void (*p2) setFortranBoxList) );
18    
19     #ifdef IS_MPI
20     void wrapsimparallelmod_( void (*wrapFunction)(void (*p1) setFortranMPIlist ) );
21     #endif // is_mpi
22    
23     }
24    
25    
26     void wrapFF( void (*p1) makeAtypeList, void (*p2) initFortranFFList,
27 chuckv 460 void (*p3) doForceLoopList, void (*p4) LJ_new_rcut_List,
28     void (*p5) set_sticky_params_List,
29     void (*p6) set_gb_pair_params_List );
30 mmeineke 377 void (*makeAtype) makeAtypeList;
31     void (*initFortranFF) initFortranFFList;
32 chuckv 460 void (*LJ_new_rcut) LJ_new_rcut_List;
33     void (*set_sticky_params) set_sticky_params_List;
34     void (*set_gb_pair_params) set_gb_pair_params_List;
35 mmeineke 377
36     void wrapSimInfo( void (*p1) setFortranSimList, void (*p2) setFortranBoxList );
37    
38     #ifdef IS_MPI
39     void wrapSimParallel(void (*p1) setFortranMPIlist );
40     #endif // is_mpi
41    
42    
43     // take care of the ForceField functions
44    
45     ForceFields* currentFF;
46     void wrapMeFF( ForceFields* thisFF ){
47    
48     currentFF = thisFF;
49     wrapforcefield_( wrapFF );
50     }
51    
52    
53     void wrapFF( void (*p1) makeAtypeList, void (*p2) initFortranFFList,
54 chuckv 460 void (*p3) doForceLoopList, void (*p4) LJ_new_rcut_List,
55     void (*p5) set_sticky_params_List,
56     void (*p6) set_gb_pair_params_List ){
57 mmeineke 377
58     makeAtype = p1;
59     initFortranFF = p2;
60     currentFF->setFortranForceLoop( p3 );
61 chuckv 460 LJ_new_rcut = p4;
62     set_sticky_params = p5;
63     set_gb_pair_params = p6;
64    
65 mmeineke 377 }
66    
67    
68     // wrap the SimInfo functions
69    
70     SimInfo* currentPlug;
71     void wrapMeSimInfo( SimInfo* thePlug ){
72    
73     currentPlug = thePlug;
74     wrapsimmod_( wrapSimInfo );
75     }
76    
77     void wrapSimInfo( void (*p1) setFortranSimList, void (*p2) setFortranBoxList ){
78    
79     currentPlug->setInternal( p1, p2 );
80     }
81    
82    
83     #ifdef IS_MPI
84    
85     // wrap the mpiSim functions
86    
87     mpiSimulation* currentMPIsim;
88     void wrapMeSimParallel( mpiSimulation* thisMPIsim ){
89    
90     currentMPIsim = thisMPIsim;
91     wrapsimparallelmod_( wrapSimParallel );
92     }
93    
94     void wrapSimParallel(void (*p1) setFortranMPIlist ){
95    
96     currentMPIsim->setInternal( p1 );
97     }
98    
99    
100     #endif // is_mpi