imd.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef IMD_H__
00019 #define IMD_H__
00020
00021 #include <limits.h>
00022
00023 #if ( INT_MAX == 2147483647 )
00024 typedef int int32;
00025 #else
00026 typedef short int32;
00027 #endif
00028
00029
00030 typedef enum IMDType_t {
00031 IMD_DISCONNECT,
00032 IMD_ENERGIES,
00033 IMD_FCOORDS,
00034 IMD_GO,
00035 IMD_HANDSHAKE,
00036 IMD_KILL,
00037 IMD_MDCOMM,
00038 IMD_PAUSE,
00039 IMD_TRATE,
00040 IMD_IOERROR
00041 } IMDType;
00044 typedef struct {
00045 int32 tstep;
00046 float T;
00047 float Etot;
00048 float Epot;
00049 float Evdw;
00050 float Eelec;
00051 float Ebond;
00052 float Eangle;
00053 float Edihe;
00054 float Eimpr;
00055 } IMDEnergies;
00058 #ifdef WIN32
00059 #if defined(SimTK_MOLMODEL_BUILDING_SHARED_LIBRARY)
00060 #define SimTK_MOLMODEL_EXPORT __declspec(dllexport)
00061 #elif defined(SimTK_MOLMODEL_BUILDING_STATIC_LIBRARY) || defined(SimTK_USE_STATIC_LIBRARIES)
00062 #define SimTK_MOLMODEL_EXPORT
00063 #else
00064 #define SimTK_MOLMODEL_EXPORT __declspec(dllimport) // i.e., a client of a shared library
00065 #endif
00066 #else
00067 #define SimTK_MOLMODEL_EXPORT // Linux, Mac
00068 #endif
00069
00070
00071 extern int SimTK_MOLMODEL_EXPORT imd_disconnect(void *);
00072 extern int SimTK_MOLMODEL_EXPORT imd_pause(void *);
00073 extern int SimTK_MOLMODEL_EXPORT imd_kill(void *);
00074 extern int SimTK_MOLMODEL_EXPORT imd_handshake(void *);
00075 extern int SimTK_MOLMODEL_EXPORT imd_trate(void *, int32);
00077
00078
00080 extern int SimTK_MOLMODEL_EXPORT imd_send_mdcomm(void *, int32, const int32 *, const float *);
00081
00083 extern int SimTK_MOLMODEL_EXPORT imd_send_energies(void *, const IMDEnergies *);
00084
00086 extern int SimTK_MOLMODEL_EXPORT imd_send_fcoords(void *, int32, const float *);
00087
00093 extern int SimTK_MOLMODEL_EXPORT imd_recv_handshake(void *);
00094
00096 extern IMDType SimTK_MOLMODEL_EXPORT imd_recv_header(void *, int32 *);
00097
00099 extern int SimTK_MOLMODEL_EXPORT imd_recv_mdcomm(void *, int32, int32 *, float *);
00100
00102 extern int SimTK_MOLMODEL_EXPORT imd_recv_energies(void *, IMDEnergies *);
00103
00105 extern int SimTK_MOLMODEL_EXPORT imd_recv_fcoords(void *, int32, float *);
00106
00107 #endif
00108