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

vmdconsole.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: vmdconsole.h,v $
00013  *      $Author: johns $        $Locker:  $             $State: Exp $
00014  *      $Revision: 1.10 $       $Date: 2019/01/17 21:21:03 $
00015  *
00016  ***************************************************************************
00017  * DESCRIPTION:
00018  *
00019  * vmd console redirector 
00020  * (c) 2006-2009 Axel Kohlmeyer <akohlmey@cmm.chem.upenn.edu>
00021  * 
00022  ***************************************************************************/
00023 
00024 /* common definitions for the vmdconsole plugin */
00025 #ifndef _VMDCONSOLE_H
00026 #define _VMDCONSOLE_H
00027 
00028 #ifdef __cplusplus
00029 extern "C" {
00030 #endif
00031 
00032 /* list of vmd status types */
00033 #define VMDCON_UNDEF    -1
00034 #define VMDCON_NONE      0
00035 #define VMDCON_WIDGET    1
00036 #define VMDCON_TEXT      2
00037 
00038 /* list of vmd console 'urgencies' */
00039 #define VMDCON_ALL       0      
00040 #define VMDCON_INFO      1      
00041 #define VMDCON_WARN      2      
00042 #define VMDCON_ERROR     3      
00043 #define VMDCON_ALWAYS    4      
00044 #define VMDCON_LOG       5      
00046 /* initialize vmd console */
00047 extern void vmdcon_init(void);
00048 
00049 /* report current vmdcon status */
00050 extern int vmdcon_get_status(void);
00051 
00052 /* set current vmdcon status */
00053 extern void vmdcon_set_status(int, void *interp);
00054 
00055 /* set current vmdcon log level */
00056 void vmdcon_set_loglvl(int lvl);
00057 
00058 /* set current vmdcon log level */
00059 int vmdcon_get_loglvl(void);
00060 
00061 /* turn on text mode processing */
00062 extern void vmdcon_use_text(void *interp);
00063 
00064 /* turn on tk text widget mode processing */
00065 extern void vmdcon_use_widget(void *interp);
00066 
00067 /* (de-)register a widget to be the console window */
00068 extern int vmdcon_register(const char *w_path, const char *mark, void *interp);
00069 
00070 /* append a string of up to 'length' characters to console message queue
00071  * at log level 'level'.
00072  * 'length' can be -1 to autodetect length with \0 terminated strings.
00073  * a 'length' of 0 means, do not add to message queue.  */
00074 extern int vmdcon_append(int level, const char *text, int length);
00075 
00076 /* purge message queue into registered text widget. */
00077 extern int vmdcon_purge(void);
00078 
00079 /* insert log message buffer into console destination. */
00080 extern int vmdcon_showlog(void);
00081 
00082 /* print to the current vmd console, printf style.*/
00083 extern int vmdcon_printf(const int lvl, const char *format, ...);
00084 
00085 /* print to the current vmd console, fputs style.*/
00086 extern int vmdcon_fputs(const int lvl, const char *text);
00087 
00088 /* insert text into an existing text widget.
00089  * returns NULL on success, or an error message on failure. */
00090 extern const char *tcl_vmdcon_insert(void *interp, const char *w_path, 
00091                                      const char *mark, const char *text);
00092 
00093 /* synchronize tcl variable for vmdcon status */
00094 extern void tcl_vmdcon_set_status_var(void *interp, int status);
00095 
00096 #ifdef __cplusplus
00097 }
00098 #endif
00099 
00100 #endif

Generated on Thu Mar 28 02:44:22 2024 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002