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

IMDMgr.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  *cr
00003  *cr            (C) Copyright 1995-2019 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.26 $       $Date: 2019/01/17 21:20:59 $
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 
00042   void set_copyunitcell(int);
00043   int  get_copyunitcell() const { return copy_unit_cell; }
00044 
00046   const char *gethost() const {return host; }
00047   int getport() const {return port;}
00048   int connected() {return sim != 0; }
00049 
00051   Molecule *get_imdmol() {return mol; }
00052 
00054   int connect(Molecule *, const char *, int);
00055 
00057   int send_forces(int, const int *, const float *);
00058 
00059   void pause();
00060   void unpause();
00061   void togglepause();
00062   void detach();
00063   void kill();
00064 
00065   int check_event();
00066 
00067   int act_on_command(int, Command *);
00068 
00069 private:
00070   Molecule *mol;
00071   IMDSim *sim;
00072   IMDEnergies *energies;
00073   char *host;
00074   int port;
00075   int Trate;
00076   int keep_rate;
00077   int copy_unit_cell;
00078   int frames_received;
00079 };
00080 
00081 #endif
00082 

Generated on Fri Mar 29 02:45:20 2024 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002