Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

imd.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  *cr
00003  *cr            (C) Copyright 1995-2008 The Board of Trustees of the
00004  *cr                        University of Illinois
00005  *cr                         All Rights Reserved
00006  *cr
00007  ***************************************************************************/
00008 
00009 /***************************************************************************
00010  * RCS INFORMATION:
00011  *
00012  *      $RCSfile: imd.h,v $
00013  *      $Author: johns $       $Locker:  $             $State: Exp $
00014  *      $Revision: 1.18 $       $Date: 2008/03/27 19:36:51 $
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 /* Send control messages - these consist of a header with no subsequent data */
00059 extern int imd_disconnect(void *);   
00060 extern int imd_pause(void *);        
00061 extern int imd_kill(void *);         
00062 extern int imd_handshake(void *);    
00063 extern int imd_trate(void *, int32); 
00065 /* Send data update messages */
00066 
00068 extern int imd_send_mdcomm(void *, int32, const int32 *, const float *);
00069 
00071 extern int imd_send_energies(void *, const IMDEnergies *);
00072 
00074 extern int imd_send_fcoords(void *, int32, const float *);
00075 
00081 extern int imd_recv_handshake(void *);
00082 
00084 extern IMDType imd_recv_header(void *, int32 *);
00085 
00087 extern int imd_recv_mdcomm(void *, int32, int32 *, float *);
00088 
00090 extern int imd_recv_energies(void *, IMDEnergies *);
00091 
00093 extern int imd_recv_fcoords(void *, int32, float *);
00094 
00095 #endif
00096 

Generated on Tue Oct 7 01:26:13 2008 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002