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

VMDApp Class Reference

The main VMD application instance, created by the main entry point. More...

#include <VMDApp.h>

List of all members.

Public Methods

 VMDApp (int argc, char **argv)
 set list of command line arguments. More...

int VMDinit (int, char **, const char *, int *dispLoc, int *dispSize)
 initialize the global variables and objects for the general library. Must be passed command-line arguments to program. Creates graphics context and all associated objects, and then starts the UI, then adds any commands that should be done at start. When done, flushes command queue and then returns, when the program is ready to start main event loop. Return TRUE on successful initialization, FALSE if anything failed. More...

 ~VMDApp ()
void VMDexit (const char *exitmsg, int exitcode, int pauseseconds)
 Print the given error message and pause for the given number of seconds before setting a flag that willl make VMDupdate return FALSE. More...

int background_processing ()
 Background processing flag indicating whether the main event loop should throttle the CPU consumption back when there aren't any other display updates, event handling, or other activities to perform This flag is used by Molecule to inform VMD when background trajectory loading is going on, for example. More...

void background_processing_clear ()
void background_processing_set ()
void deactivate_uitext_stdin ()
 Turn off event checking for the text interface; if inactive it will still process text from VMD, like hotkey callbacks, but Tk menus will not work. This is experimental code just for the purpose of making it possible to control VMD from a thread in another program. More...

int activate_menus ()
 Activate Fltk menus; this should be called only once and only after VMDinit. Return success. More...

int num_menus ()
 Number of menus we know about. More...

const char * menu_name (int)
 Name of nth menu; 0 <= n < num_menus(). More...

int add_menu (VMDMenu *)
int remove_menu (const char *)
 remove menu. Return success. More...

void menu_add_extension (const char *shortname, const char *menu_path)
 Announce that the menu of the given name is a menu extension. This lets widgets add the menu to their own pulldown menus if they wish. More...

void menu_remove_extension (const char *shortname)
int menu_status (const char *name)
 Return 1 or 0 if the menu is on or off. Return 0 if the menu does not exist. More...

int menu_location (const char *name, int &x, int &y)
 Get the location of the specified menu. More...

int menu_show (const char *name, int on)
 Turn the specified menu on or off. More...

int menu_move (const char *name, int x, int y)
 Move the specified menu to the given location on the screen. More...

int menu_select_mol (const char *name, int molno)
 Tells the specified menu to select the "molno"-th molecule internally. More...

int filerender_num ()
 Number of file render methods. More...

const char * filerender_name (int n)
 Name of nth file render method. More...

int filerender_valid (const char *method)
 Return true if renderer exists. More...

int filerender_has_antialiasing (const char *method)
 Return whether given renderer supports antialiasing. More...

int filerender_aalevel (const char *method, int aalevel)
 Set the antialiasing level to the given value. Return the new value. More...

int filerender_has_imagesize (const char *method)
 Return whether the given renderer supports arbitrary image size. More...

int filerender_imagesize (const char *method, int *imgwidth, int *imgheight)
 Set/get the image size. If *width or *height are zero, then the existing value will be used instead. If aspect ratio is set, then the aspect ratio will be used to determine the other member of the pair. Return success. More...

int filerender_aspectratio (const char *method, float *aspect)
 Set/get the aspect ratio for the image. An aspect ratio of zero means the image is free to take on any size. A positive value means the _height_ of the image will be scaled to maintain the given aspect ratio. Negative values fail. Return success, and place the new value of the aspect ratio in the passed-in pointer. More...

int filerender_numformats (const char *method)
 Return the number of file formats the file renderer can produce. Returns zero if the renderer method is invalid. More...

const char * filerender_get_format (const char *method, int i)
 Return the ith format. NULL if invalid. More...

const char * filerender_cur_format (const char *method)
 Return name of currently selected format. More...

int filerender_set_format (const char *method, const char *format)
 Set the output format for the renderer. Return success. More...

int filerender_render (const char *method, const char *filename, const char *extcmd)
 do the rendering; return success. More...

const char * filerender_option (const char *method, const char *option)
 set the command string to execute after producing the scene file Return the new value, or NULL if the method is invalid. Specify option as NULL to fetch the current value. More...

const char * filerender_default_option (const char *method)
 get the default render option for the given method. More...

const char * filerender_default_filename (const char *method)
 get the dafault filename for this render method. More...

int scene_rotate_by (float angle, char axis, float incr=0)
 rotate the scene by or to the given angle, measured in degrees, about the given axis, either 'x', 'y', or 'z'. For rotate_by, If incr is zero, the rotation will be done in one redraw; otherwise the rotation will be performed in steps of incr. More...

int scene_rotate_to (float angle, char axis)
int scene_rotate_by (const float *)
 Rotate the scene by the specified matrix. The translation part will be ignored. More...

int scene_rotate_to (const float *)
int scene_translate_by (float x, float y, float z)
 Translate everything that isn't fixed by/to the given amount. More...

int scene_translate_to (float x, float y, float z)
int scene_scale_by (float s)
 Scale by/to the given positive scale factor. More...

int scene_scale_to (float s)
void scene_resetview_newmoldata ()
 recenter the scene on the top molecule or on last settings if no-disrupt mode is enabled, unless there's only one molecule. More...

void scene_resetview ()
 recenter the scene on the top molecule. If there are no molecules, just restores rotation to default value. More...

int scene_rock (char axis, float step, int nsteps=0)
 Rock the scene by the given amount per redraw about the given axis. If nsteps is positive, rock for the specified number of steps, then reverse direction. More...

int scene_rockoff ()
 Stop rocking the scene. More...

int scene_stoprotation ()
 Stop rocking AND persistent rotations induced by input devices (like the Mouse). More...

int animation_num_dirs ()
 Methods for affecting the animation. Only _active_ molecules are affected. I consider this a mistake: it would be better to be able to specify the animation settings for a particular molecule by specify a molecule ID. However, this would make it impossible to log Tcl commands using our current syntax because the Tcl commands operate on all active molecules. If we ever create new Tcl commands and/or deprecate the old ones, we can (and should) change thse API's. Note that there are no get-methods here because you would need to query molecules individually. The Tcl commands just return the value for the top molecule; they can continue to do so, but the API should be per molecule. number of animation direction choices, and their names. More...

const char * animation_dir_name (int)
int animation_set_dir (int)
 set the animation direction for all active molecules. More...

int animation_num_styles ()
 number of animation styles, and their names. More...

const char * animation_style_name (int)
int animation_set_style (int)
 set the animation style for all active molecules. More...

int animation_set_frame (int frame)
 set the animation frame for all active molecules. If the specified frame is out of range for a particular molecule, then its frame will not change. If frame is -1, go to the first frame. If frame is -2, go to the last frame. More...

int animation_set_stride (int)
 set the stride for animation. Must be >= 1. More...

int animation_set_speed (float)
 set the animation speed. Must be a float between 0 and 1. 1 means animate as fast as possible; 0 means pause at least 0.5 seconds between frames. More...

vmdplugin_t * get_plugin (const char *type, const char *name)
 get a plugin of the specified type and name. If none was found, return NULL. The returned plugin should not be deleted. If multiple plugins are found, the one with the highest version number is returned. More...

int list_plugins (PluginList &, const char *type=NULL)
 Get alll plugins of the specfied type. If no type is specified or is NULL, all loaded plugins will be returned. Returns the number of plugins added to the list. More...

int plugin_dlopen (const char *filename)
 Try to dlopen the specified shared library and access its plugin API. Return the number of plugins found in the given library, or -1 on error. More...

void plugin_update ()
 Tell VMD to update its lists of plugins based on all the shared libraries it's loaded. Methods listed below will not be updated after a call to plugin_dlopen until this method is called. More...

void display_update_on (int)
 turn display updates on (1) or off (0). More...

int display_update_status ()
 return 1 or 0 if display updates are on or off, respectively. More...

void display_update ()
 force a screen redraw right now, without checking for UI events. More...

void display_update_ui ()
 force a screen redraw right now, and also check for UI events. More...

void display_set_screen_height (float)
 get/set the height of the screen. Ignored unless positive. More...

float display_get_screen_height ()
void display_set_screen_distance (float)
 get/set the distance to the screen. More...

float display_get_screen_distance ()
void display_set_position (int x, int y)
 get/set the position of the graphics window. More...

void display_set_size (int w, int h)
 get/set the size of the graphics window. More...

void display_get_size (int *w, int *h)
int display_set_stereo (const char *mode)
 change the stereo mode. More...

int display_set_cachemode (const char *mode)
 change the caching mode. More...

int display_set_rendermode (const char *mode)
 change the rendering mode. More...

int display_set_eyesep (float sep)
 change eye separation. More...

int display_set_focallen (float flen)
 change focal length. More...

int display_set_projection (const char *proj)
 set the projection (Perspective or Orthographic, case-insensitive). More...

int display_projection_is_perspective (void)
 query whether the projection is a perspective projection type. More...

int display_set_aa (int onoff)
int display_set_depthcue (int onoff)
int display_set_culling (int onoff)
int display_set_fps (int onoff)
int display_set_background_mode (int mode)
int display_set_nearclip (float amt, int isdelta)
int display_set_farclip (float amt, int isdelta)
int stage_set_location (const char *)
int stage_set_numpanels (int)
int axes_set_location (const char *)
int light_on (int lightnum, int onoff)
int light_highlight (int lightnum, int onoff)
int light_rotate (int lightnum, float amt, char axis)
int light_move (int lightnum, const float *newpos)
int depthcue_set_mode (const char *)
int depthcue_set_start (float)
int depthcue_set_end (float)
int depthcue_set_density (float)
void display_titlescreen ()
 turn on the title screen; burns CPU but will be turned off when a molecule is loaded. More...

int num_color_categories ()
 Number of color categories. More...

const char * color_category (int)
 Name of the nth color category, or NULL if invalid index. More...

int color_add_item (const char *cat, const char *item, const char *defcolor)
 add a new color item, consisting of a name and a default color, to the given color category. If the color category does not already exist, it is created. Return success. More...

int num_color_category_items (const char *category)
 Number of color items in the given category. More...

const char * color_category_item (const char *category, int)
 Item for the given category and index. More...

int num_colors ()
 Number of available colors. More...

int num_regular_colors ()
 Number of _regular_ colors, i.e., the ones that have actual names. More...

const char * color_name (int n)
 Name of nth color, where 0 <= n < num_colors(). If the index is invalid, return NULL. More...

int color_index (const char *)
 Index of given color. If the color is invalid, return -1, other return a number in [0, num_colors()). The color must be one of the colors returned by color_name(). Hence, color_name(color_index(<string>)) returns its input if <string> is a valid color, or NULL if it isn't. More...

int color_value (const char *colorname, float *r, float *g, float *b)
 Get RGB value of given color. Return success. More...

int color_default_value (const char *colorname, float *r, float *g, float *b)
 Get default RGB value of given color. The colorname must be one of the regular colors, i.e. have an index in [0,num_regular_colors). Return success. More...

const char * color_mapping (const char *category, const char *item)
 Color mapped to given color category and item, or NULL if invalid. More...

const char * color_get_restype (const char *resname)
 get the restype for the given resname. if the resname, is unknown, returns "Unassigned". More...

int color_set_restype (const char *resname, const char *newtype)
 set the residue type for the given residue name. This will determine how the residue is colored when the coloring method is ResType. The type must be one of the color items in the Restype color category. return success. More...

int colorscale_info (float *midpoint, float *min, float *max)
 color scale info. More...

int num_colorscale_methods ()
 info about color scale methods. More...

int colorscale_method_current ()
const char * colorscale_method_name (int)
int colorscale_method_index (const char *)
 index for given method. Return -1 if invalid, otherwise nonnegative. More...

int get_colorscale_colors (int whichScale, float min[3], float mid[3], float max[3])
 Store the color scale colors in the given arrays. More...

int set_colorscale_colors (int whichScale, const float min[3], const float mid[3], const float max[3])
 Set the color scale colors from the given arrays. More...

int color_changename (const char *category, const char *colorname, const char *color)
 Change the color for a particular color category and name. color must be one of names returned by color_name(). More...

int color_get_from_name (const char *category, const char *colorname, const char **color)
 Returns the color string for a particular color category and name. More...

int color_changevalue (const char *color, float r, float g, float b)
 Change the RGB value for the specified color. More...

int colorscale_setvalues (float midpoint, float min, float max)
 Change the settings for the color scale. More...

int colorscale_setmethod (int method)
 Change the color scale method. More...

int logfile_read (const char *path)
 Process the commands in the given file. More...

int save_state ()
 save VMD state to a Tcl script. A filename will be requested from the user. More...

int textinterp_change (const char *interpname)
 change to a new text interpreter mode. Currently "tcl" and "python" are supported. More...

int num_molecules ()
 Number of molecules currently loaded. More...

int molecule_new (const char *name)
 Create a new "empty" molecule, basically a blank slate for import low-level graphics or other data. Return the molid of the new molecule. More...

const char * guess_filetype (const char *filename)
 Guess a molecule file type from the given filename. Return the filetype, or NULL if unsuccesful. More...

int molecule_load (int molid, const char *filename, const char *filetype, const FileSpec *spec)
 Load data from the given file of type filetype. If molid is -1, a new molecule will be created if the file is successfully read; otherwise molid must be a valid molecule id. As much information will be loaded from the file as possible, and within the limits prescribed by FileSpec. Returns the molid of the molecule into which the data was read. If the file type is unknown, use guess_filetype to obtain a filetype; don't pass NULL to filetype. More...

int molecule_add_volumetric (int molid, const char *dataname, const float origin[3], const float xaxis[3], const float yaxis[3], const float zaxis[3], int xsize, int ysize, int zsize, float *datablock)
 Add volumetric data to a given molecule. The data block will be deleted by VMD. Return success. More...

int molecule_savetrajectory (int molid, const char *filename, const char *filetype, const FileSpec *spec)
 Write trajectory frames to a file. Return number of frames written before returning, as in the addfile method. Filetype should be one of the file types returned by savecoorfile_plugin_name(). selection must be NULL, or point to an array of flags, one for each atom in the molecule, indicating which atoms' coordinates are to be written. More...

int molecule_deleteframes (int molid, int first, int last, int stride)
 Delete the specified range of timesteps from the given molecule, keeping every "stride" molecule (unless stride = 0). More...

int molecule_id (int)
 id of the ith molecule. This id is used to specify a molecule for all other methods. Return -1 if the ith molecule is not present; otherwise the id is a nonnegative integer unique to each molecule. More...

int molecule_valid_id (int molid)
 Return true or false if the given molid is valid. More...

int molecule_numatoms (int molid)
 number of atoms in molecule. Return -1 on invalid molid, otherwise 0 or more. More...

int molecule_numframes (int molid)
 number of frames in molecule. Return -1 on invalid molid, otherwise 0 or more. More...

int molecule_frame (int molid)
 Current frame in molecule. Return -1 on invalid molid, otherwise [0, numframes()). More...

int molecule_dupframe (int molid, int frame)
 Duplicate the given frame. The new fram will be appended at the end. Passing -1 for frame duplicates the current frame. Return success. More...

const char * molecule_name (int molid)
 name of molecule. More...

int molecule_rename (int molid, const char *newname)
int molecule_cancel_io (int molid)
 cancel any in-progress file I/O associated with a given molecule. More...

int molecule_delete (int molid)
 delete the molecule with the given id. More...

int molecule_delete_all (void)
 delete all molecules. More...

int molecule_activate (int molid, int onoff)
 make the given molecule 'active' or 'inactive'; active molecules respond to animate requests while inactive molecules do not. More...

int molecule_is_active (int molid)
int molecule_fix (int molid, int onoff)
 make the given molecule fixed or unfixed. Fixed molecules do not respond to scene transformation operations. More...

int molecule_is_fixed (int molid)
int molecule_display (int molid, int onoff)
 Turn the given molecule on or off. Turning a molecule off causes all its reps to not be rendered. More...

int molecule_is_displayed (int molid)
int molecule_make_top (int molid)
 Make the given molecule top. There is always exactly one top molecule, if any are loaded. More...

int molecule_top ()
 return the molid of the top molecule. More...

int num_molreps (int molid)
 number of representations for the given molecule. More...

const char * molrep_get_style (int molid, int repid)
 Get/set the current representation style. More...

int molrep_set_style (int molid, int repid, const char *style)
const char * molrep_get_color (int molid, int repid)
 Get/set the current representation color. More...

int molrep_set_color (int molid, int repid, const char *color)
const char * molrep_get_selection (int molid, int repid)
 Get/set the current representation selection. More...

int molrep_set_selection (int molid, int repid, const char *selection)
int molrep_numselected (int molid, int repid)
 Get the number of atoms in the rep's selection. If invalid molid or repid, return -1, otherwise 0 or more. More...

const char * molrep_get_material (int molid, int repid)
 Get/set the current representation material. More...

int molrep_set_material (int molid, int repid, const char *material)
int num_clipplanes ()
 Number of clipping planes supported per rep. clipid in the next few methods should be in the range [0,max). More...

int molrep_get_clipplane (int molid, int repid, int clipid, float *center, float *normal, float *color, int *mode)
 Get clipping plane info for reps. center and normal should point to space for three floats. More...

int molrep_set_clipcenter (int molid, int repid, int clipid, const float *center)
 set clip plane properties. More...

int molrep_set_clipnormal (int molid, int repid, int clipid, const float *normal)
int molrep_set_clipcolor (int molid, int repid, int clipid, const float *color)
int molrep_set_clipstatus (int molid, int repid, int clipid, int onoff)
int molrep_set_smoothing (int molid, int repid, int n)
 Set smoothing for reps. Coordinates used for calculating graphics will be smoothed with a boxcar average 2*n+1 in size centered on the current frame. More...

int molrep_get_smoothing (int molid, int repid)
 Get smoothing for given rep. Returns -1 for invalid rep, otherwise 0 or higher. More...

const char * molrep_get_name (int molid, int repid)
 Get the name of the given rep. Return NULL if the id is invalid. More...

int molrep_get_by_name (int molid, const char *)
 Get the repid of the rep with the given name. Return -1 if the name was not found. More...

int molrep_set_pbc (int molid, int repid, int pbc)
 Set periodic boundary condition display for this rep. More...

int molrep_get_pbc (int molid, int repid)
 Get current pbc for this rep; returns -1 if invalid. More...

int molrep_set_pbc_images (int molid, int repid, int n)
 Set the number of images to display; must be 1 or higher. Return success. More...

int molrep_get_pbc_images (int molid, int repid)
 Get number of images; returns -1 on error. More...

int molrep_show (int molid, int repid, int onff)
 Show/hide individual rep; this is done in the graphics menu by double- clicking on the rep. More...

int molrep_is_shown (int molid, int repid)
 Return 1 if shown, 0 if hidden or does not exist. More...

const char * molecule_get_style ()
int molecule_set_style (const char *style)
const char * molecule_get_color ()
int molecule_set_color (const char *color)
const char * molecule_get_selection ()
int molecule_set_selection (const char *selection)
const char * molecule_get_material ()
int molecule_set_material (const char *material)
int molecule_addrep (int molid)
 Add a rep to the given molecule, using parameters specified in the molecule_set methods. molid must be a valid molecule id. More...

int molecule_modrep (int molid, int repid)
 Change the specified rep, using the same settings as for addrep. More...

int molrep_delete (int molid, int repid)
 Delete the specified rep. More...

int molrep_set_drawframes (int molid, int repid, const char *framesel)
 Set drawing of selected frames for a given rep. Syntax is "now" or a whitespace-separated list of terms of the form n, beg:end, or beg:stride:end. More...

const char * molrep_get_drawframes (int molid, int repid)
int molecule_reanalyze (int molid)
 Re-analyze the molecule after atom names, bonds, and other other data have been changed. This can be used to fix unrecognized atom names in non-standard nucleic acid residues, and fix other issues on-the-fly without having to hand-edit the files. More...

int molecule_bondsrecalc (int molid)
 Force recalculation of bonds for the given molecule based on the current set of coordinates. More...

int molecule_ssrecalc (int molid)
 Force the recalculation of the secondary structure for the given molecule based on the current set of coordinates. Return true if the secondary structure was successfully recalculated, otherwise false. More...

int imd_connect (int molid, const char *host, int port)
 Establish an IMD connection to the given host over the given port, using the given molecule id. Return success. More...

int imd_connected (int molid)
 Return true if an IMD simulation is established with the given molid. More...

int imd_sendforces (int, const int *, const float *)
 Send forces, assuming an IMD connection is present. Return success. Format: num, indices, forces (xyzxyzxyz). More...

int imd_disconnect (int molid)
 Disconnect IMD. Return success. More...

int tool_create (const char *type, int argc, const char **argv)
int tool_delete (int toolnum)
int tool_change_type (int toolnum, const char *type)
int tool_set_position_scale (int toolnum, float newval)
int tool_set_force_scale (int toolnum, float newval)
int tool_set_spring_scale (int toolnum, float newval)
int label_add (const char *category, int num_ids, const int *molids, const int *atomids, const int *cells, float k, int toggle)
 add a label of the given category using the given molecule id's and atom id's. Return the index of the label object, or -1 on error. If toggle is true, the on/off status of the label will be toggled if the label already exists; if the label does not already exist, the newly created label will be on regardless of the value of toggle. More...

int label_show (const char *category, int n, int onoff)
 turn on/off the nth label of the given category. Return success. More...

int label_delete (const char *category, int n)
 delete the nth label of the given category. If n is -1, delete all labels from that category. Return success. More...

float label_get_textsize () const
 get/size size of text labels. This affects all labels. More...

int label_set_textsize (float)
int label_set_textoffset (const char *nm, int n, float x, float y)
int label_set_textformat (const char *nm, int n, const char *format)
int next_molid ()
 Get current molid and increment counter by 1. More...

const char * material_add (const char *name, const char *copyfrom)
 add material with given name, copying settings from given material. If name is NULL a default unique name will be chosen; if copyfrom is NULL the 0th material will be copied. The name of the new material is returned, or NULL on error. More...

int material_delete (const char *name)
 delete material with given name. Return success. More...

int material_change (const char *name, int property, float val)
 change the given material property. property is from MaterialProperty defined in MaterialList. Return success. More...

int material_rename (const char *oldname, const char *newname)
 rename the given material. The new name must contain only alphanumeric characters (no spaces). Return success. More...

int material_restore_default (int)
 restore the default value of the material with the given index. Return success. Fails if the material has no default. More...

int mouse_set_mode (int mode, int setting)
 Change the mouse mode. More...

int spaceball_set_mode (int mode)
 Change the spaceball mode. More...

int spaceball_set_sensitivity (float s)
 Change the spaceball sensitivity. More...

int spaceball_set_null_region (int nr)
 Change the spaceball null region. More...

void spaceball_get_tracker_status (float &tx, float &ty, float &tz, float &rx, float &ry, float &rz, int &buttons)
 return the current spaceball event data, used by the UIVR SpaceballTracker interface. More...

void show_stride_message ()
 show Stride message, if necessary. More...

char * vmd_choose_file (const char *title, const char *extension, const char *extension_label, int do_save)
 Show a file dialog. Use the first available of: Tk, Fltk, stdin Returns a new'd filename, or NULL. More...

int VMDupdate (int)
 redraw the screen and update all things that need updatin'. Return TRUE until exit has been requested by the user. More...

void set_mouse_callbacks (int on)
void set_mouse_rocking (int on)
void set_eofexit (int onoff)
int get_eofexit ()
int molrep_get_selupdate (int molid, int repid)
 Turn on/off selection auto-update for the specified rep. When on, the representation will recalculate its selection each time there is change in the coordinate frame of the molecule. More...

int molrep_set_selupdate (int molid, int repid, int onoff)
 Turn on/off selection auto-update for the specified rep. When on, the representation will recalculate its selection each time there is change in the coordinate frame of the molecule. More...

int molrep_get_colorupdate (int molid, int repid)
 Turn on/off automatic color update for the specified rep. More...

int molrep_set_colorupdate (int molid, int repid, int onoff)
 Turn on/off automatic color update for the specified rep. More...

int molrep_get_scaleminmax (int molid, int repid, float *min, float *max)
 Get/set data range of color scale. More...

int molrep_set_scaleminmax (int molid, int repid, float min, float max)
 Get/set data range of color scale. More...

int molrep_reset_scaleminmax (int molid, int repid)
 Get/set data range of color scale. More...


Static Public Methods

unsigned long get_repserialnum (void)
 Get a unique integer serial number used for identifying display lists. More...

unsigned long get_texserialnum (void)
void set_text (const char *str)
 text message access methods. More...

void append_text (const char *str)
void clear_text ()
const char * get_text ()

Public Attributes

int argc_m
 used if we want to process unknown args elsewhere. More...

const char ** argv_m
 needed by Tcl/Python initialization code. More...

UITextuiText
 the text interface JRG: made public for save_state. More...

UIVRuivr
 VR tool interface. More...

IMDMgrimdMgr
 IMD manager class. More...

Animationanim
 generates delay-based frame change events. More...

DisplayDevicedisplay
 display in which the images are rendered. More...

Scenescene
 list of all Displayable objects to draw. More...

CUDAAccelcuda
 CUDA acceleration system handle. More...

PickListpickList
 handles all picking events. More...

PickModeListpickModeList
 list of available picking modes. More...

MaterialListmaterialList
 list of materials. More...

Stagestage
 stage object used in the scene. More...

Axesaxes
 axes object used in the scene. More...

FPSfps
 FPS counter used in the scene. More...

CommandQueuecommandQueue
 the command processor. More...

MoleculeListmoleculeList
 list of all loaded molecules. More...

GeometryListgeometryList
 list of all labels etc. More...

SymbolTableatomSelParser
 symbol table and atom selection parser. More...

VMDCollabvmdcollab
 handles collaborative VMD interaction. More...

NameList< char * > userKeys
 lookup table for Tcl scripts. More...

NameList< char * > userKeyDesc
 describe what the hotkey does. More...

int UpdateDisplay
 flag for whether to update the scene. More...

int exitFlag
 flag for whether to quit the display loop. More...

int ResetViewPending
 pending resetview needs attention. More...

int highlighted_molid
 Highlighted molecule id and rep. Set by GraphicsFltkMenu, used by PickModeMoveHighlightedRep. More...

int highlighted_rep
 Highlighted molecule id and rep. Set by GraphicsFltkMenu, used by PickModeMoveHighlightedRep. More...


Detailed Description

The main VMD application instance, created by the main entry point.

Definition at line 119 of file VMDApp.h.


Constructor & Destructor Documentation

VMDApp::VMDApp int    argc,
char **    argv
 

set list of command line arguments.

Definition at line 142 of file VMDApp.C.

References anim, argc_m, argv_m, atomSelParser, axes, background_processing_clear, commandQueue, display, exitFlag, fps, geometryList, highlighted_molid, highlighted_rep, imdMgr, materialList, moleculeList, NULL, pickList, pickModeList, ResetViewPending, scene, stage, uiText, uivr, and UpdateDisplay.

VMDApp::~VMDApp  
 

Definition at line 579 of file VMDApp.C.

References anim, atomSelParser, axes, commandQueue, cuda, NameList< char * >::data, NameList< VMDMenu * >::data, display, fps, geometryList, imdMgr, materialList, moleculeList, NULL, NameList< char * >::num, NameList< VMDMenu * >::num, pickList, pickModeList, scene, stage, DisplayDevice::supports_gui, uiText, uivr, userKeyDesc, userKeys, and vmdcollab.


Member Function Documentation

int VMDApp::activate_menus  
 

Activate Fltk menus; this should be called only once and only after VMDinit. Return success.

Definition at line 2594 of file VMDApp.C.

References NameList< VMDMenu * >::add_name, display, VMDMenu::get_name, UIObject::On, DisplayDevice::supports_gui, and uivr.

Referenced by VMDinit.

int VMDApp::add_menu VMDMenu  
 

Definition at line 391 of file VMDApp.C.

References NameList< VMDMenu * >::add_name, VMDMenu::get_name, and NameList< VMDMenu * >::typecode.

Referenced by addmenu, registermenu, and text_cmd_menu.

const char * VMDApp::animation_dir_name int   
 

Definition at line 902 of file VMDApp.C.

References Animation::ANIM_TOTAL_DIRS, and NULL.

int VMDApp::animation_num_dirs  
 

Methods for affecting the animation. Only _active_ molecules are affected. I consider this a mistake: it would be better to be able to specify the animation settings for a particular molecule by specify a molecule ID. However, this would make it impossible to log Tcl commands using our current syntax because the Tcl commands operate on all active molecules. If we ever create new Tcl commands and/or deprecate the old ones, we can (and should) change thse API's. Note that there are no get-methods here because you would need to query molecules individually. The Tcl commands just return the value for the top molecule; they can continue to do so, but the API should be per molecule. number of animation direction choices, and their names.

Definition at line 898 of file VMDApp.C.

References Animation::ANIM_TOTAL_DIRS.

int VMDApp::animation_num_styles  
 

number of animation styles, and their names.

Definition at line 914 of file VMDApp.C.

References Animation::ANIM_TOTAL_STYLES.

int VMDApp::animation_set_dir int   
 

set the animation direction for all active molecules.

Definition at line 907 of file VMDApp.C.

References anim, Animation::anim_dir, Animation::AnimDir, commandQueue, and CommandQueue::runcommand.

Referenced by Spaceball::check_event, forward, forward_cb, next, next_cb, pause, prev, prev_cb, reverse, reverse_cb, and text_cmd_animate.

int VMDApp::animation_set_frame int    frame
 

set the animation frame for all active molecules. If the specified frame is out of range for a particular molecule, then its frame will not change. If frame is -1, go to the first frame. If frame is -2, go to the last frame.

Definition at line 930 of file VMDApp.C.

References anim, Animation::anim_dir, Animation::ANIM_PAUSE, commandQueue, Animation::goto_frame, and CommandQueue::runcommand.

Referenced by anim_goto, curframe_cb, start_cb, stop_cb, and text_cmd_animate.

int VMDApp::animation_set_speed float   
 

set the animation speed. Must be a float between 0 and 1. 1 means animate as fast as possible; 0 means pause at least 0.5 seconds between frames.

Definition at line 943 of file VMDApp.C.

References anim, commandQueue, CommandQueue::runcommand, and Animation::speed.

Referenced by Spaceball::check_event, speed, speed_cb, and text_cmd_animate.

int VMDApp::animation_set_stride int   
 

set the stride for animation. Must be >= 1.

Definition at line 937 of file VMDApp.C.

References anim, commandQueue, CommandQueue::runcommand, and Animation::skip.

Referenced by Spaceball::check_event, skip, step_cb, and text_cmd_animate.

int VMDApp::animation_set_style int   
 

set the animation style for all active molecules.

Definition at line 923 of file VMDApp.C.

References anim, Animation::anim_style, Animation::AnimStyle, commandQueue, and CommandQueue::runcommand.

Referenced by MainFltkMenu::act_on_command, loop, once, rock, style_cb, and text_cmd_animate.

const char * VMDApp::animation_style_name int   
 

Definition at line 918 of file VMDApp.C.

References Animation::ANIM_TOTAL_STYLES, and NULL.

void VMDApp::append_text const char *    str [inline, static]
 

Definition at line 1010 of file VMDApp.h.

int VMDApp::axes_set_location const char *   
 

Definition at line 2526 of file