NAMD
GlobalMasterIMD.h
Go to the documentation of this file.
1 
7 #ifndef GLOBALMASTERIMD_H
8 #define GLOBALMASTERIMD_H
9 
10 #include "GlobalMaster.h"
11 #include "common.h"
12 #include "imd.h"
13 #include "ResizeArray.h"
14 
15 class FloatVector;
16 
17 class GlobalMasterIMD : public GlobalMaster {
18  public:
19  /* initializes this according to the simulation parameters */
22 
23  void send_energies(IMDEnergies *);
24  void send_fcoords(int, FloatVector *);
25  // IMDv3 functions start
26  void send_velocities(int, FloatVector *);
27  void send_forces(int, FloatVector *);
28  void send_box(IMDBox *);
29  void send_time(IMDTime *);
30  // IMDv3 functions end
31 
32  protected:
33 
34  friend class IMDOutput;
35 
36  virtual void calculate();
37 
38  // Simple function for getting MDComm-style forces from VMD
39  void get_vmd_forces();
40 
41  // IMD protocol version
43 
44  // flag for whether to proceed with simulation when there are no connections
45  int IMDwait;
46 
47  // flag for whether to ignore all user input
48  int IMDignore;
49 
50  // flag for whether to ignore only forces
52 
53  // IMD session info i.e. send settings
55 
56  // My server socket handle
57  void *sock;
58 
59  // Connected sockets
61 
62  // temporaries in case 3*sizeof(float) != sizeof(FloatVector)
63  float *coordtmp;
65 
66  float *veltmp;
68 
69  float *forcetmp;
71 
73 };
74 
75 #endif
76 
void send_time(IMDTime *)
void send_velocities(int, FloatVector *)
Definition: imd.h:55
void send_box(IMDBox *)
Definition: imd.h:49
ResizeArray< void * > clients
void send_energies(IMDEnergies *)
virtual void calculate()
void send_forces(int, FloatVector *)
IMDSessionInfo IMDsendsettings
void send_fcoords(int, FloatVector *)