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: IMDMgr.h,v $ 00013 * $Author: johns $ $Locker: $ $State: Exp $ 00014 * $Revision: 1.21 $ $Date: 2008/03/27 19:36:40 $ 00015 * 00016 *************************************************************************** 00017 * DESCRIPTION: 00018 * High level interactive MD simulation management and update routines. 00019 ***************************************************************************/ 00020 #ifndef IMD_MGR_H__ 00021 #define IMD_MGR_H__ 00022 00023 #include "UIObject.h" 00024 #include "imd.h" 00025 00026 class Molecule; 00027 class MoleculeIMD; 00028 class IMDSim; 00029 00031 class IMDMgr : public UIObject { 00032 public: 00033 IMDMgr(VMDApp *); 00034 ~IMDMgr(); 00035 00036 void set_trans_rate(int); 00037 int get_trans_rate() const {return Trate; } 00038 00039 void set_keep_rate(int); 00040 int get_keep_rate() const { return keep_rate; } 00041 00043 const char *gethost() const {return host; } 00044 int getport() const {return port;} 00045 int connected() {return sim != 0; } 00046 00048 Molecule *get_imdmol() {return mol; } 00049 00051 int connect(Molecule *, const char *, int); 00052 00054 int send_forces(int, const int *, const float *); 00055 00056 void pause(); 00057 void unpause(); 00058 void togglepause(); 00059 void detach(); 00060 void kill(); 00061 00062 int check_event(); 00063 00064 int act_on_command(int, Command *); 00065 00066 private: 00067 Molecule *mol; 00068 IMDSim *sim; 00069 IMDEnergies *energies; 00070 char *host; 00071 int port; 00072 int Trate; 00073 int keep_rate; 00074 int frames_received; 00075 }; 00076 00077 #endif 00078
1.2.14 written by Dimitri van Heesch,
© 1997-2002