#include <ScriptTcl.h>
Public Member Functions | |
| ScriptTcl () | |
| ~ScriptTcl () | |
| void | eval (char *script) |
| void | load (char *scriptFile) |
| void | run () |
| void | measure (Vector *) |
Friends | |
| class | Controller |
| class | GlobalMasterTcl |
|
|
Definition at line 987 of file ScriptTcl.C. References DebugM, molfile_dcdplugin_init(), molfile_dcdplugin_register(), register_cb(), scriptBarrierTag, and tcl_vector_math_init(). 00987 : scriptBarrier(scriptBarrierTag) {
00988 DebugM(3,"Constructing ScriptTcl\n");
00989 #ifdef NAMD_TCL
00990 interp = 0;
00991 callbackname = 0;
00992 #endif
00993 state = new NamdState;
00994 barrierStep = 0;
00995
00996 molfile_dcdplugin_init();
00997 molfile_dcdplugin_register(NULL, register_cb);
00998
00999 initWasCalled = 0;
01000 runWasCalled = 0;
01001
01002 #ifdef NAMD_TCL
01003 config = new ConfigList;
01004
01005 // Create interpreter
01006 interp = Tcl_CreateInterp();
01007 tcl_vector_math_init(interp);
01008 Tcl_CreateCommand(interp, "exit", Tcl_exit,
01009 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01010 Tcl_CreateCommand(interp, "abort", Tcl_abort,
01011 (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
01012 Tcl_CreateCommand(interp, "numPes", Tcl_numPes,
01013 (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
01014 Tcl_CreateCommand(interp, "numNodes", Tcl_numNodes,
01015 (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
01016 Tcl_CreateCommand(interp, "numPhysicalNodes", Tcl_numPhysicalNodes,
01017 (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
01018 Tcl_CreateCommand(interp, "numReplicas", Tcl_numReplicas,
01019 (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
01020 Tcl_CreateCommand(interp, "myReplica", Tcl_myReplica,
01021 (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
01022 Tcl_CreateCommand(interp, "replicaSendrecv", Tcl_replicaSendrecv,
01023 (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
01024 Tcl_CreateCommand(interp, "replicaSend", Tcl_replicaSend,
01025 (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
01026 Tcl_CreateCommand(interp, "replicaRecv", Tcl_replicaRecv,
01027 (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
01028 Tcl_CreateCommand(interp, "replicaBarrier", Tcl_replicaBarrier,
01029 (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
01030 Tcl_CreateCommand(interp, "print", Tcl_print,
01031 (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
01032 Tcl_CreateCommand(interp, "unknown", Tcl_config,
01033 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01034 Tcl_CreateCommand(interp, "param", Tcl_config,
01035 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01036 Tcl_CreateCommand(interp, "run", Tcl_run,
01037 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01038 Tcl_CreateCommand(interp, "minimize", Tcl_minimize,
01039 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01040 Tcl_CreateCommand(interp, "move", Tcl_move,
01041 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01042 Tcl_CreateCommand(interp, "moveallby", Tcl_moveallby,
01043 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01044 Tcl_CreateCommand(interp, "output", Tcl_output,
01045 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01046 Tcl_CreateCommand(interp, "measure", Tcl_measure,
01047 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01048 Tcl_CreateCommand(interp, "checkpoint", Tcl_checkpoint,
01049 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01050 Tcl_CreateCommand(interp, "revert", Tcl_revert,
01051 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01052 Tcl_CreateCommand(interp, "reinitvels", Tcl_reinitvels,
01053 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01054 Tcl_CreateCommand(interp, "rescalevels", Tcl_rescalevels,
01055 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01056 Tcl_CreateCommand(interp, "reinitatoms", Tcl_reinitatoms,
01057 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01058 Tcl_CreateCommand(interp, "callback", Tcl_callback,
01059 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01060 Tcl_CreateCommand(interp, "coorfile", Tcl_coorfile,
01061 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01062 Tcl_CreateCommand(interp, "dumpbench", Tcl_dumpbench,
01063 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01064 Tcl_CreateObjCommand(interp, "consForceConfig", Tcl_consForceConfig,
01065 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01066 Tcl_CreateCommand(interp, "reloadCharges", Tcl_reloadCharges,
01067 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01068 // BEGIN gf
01069 Tcl_CreateCommand(interp, "reloadGridforceGrid", Tcl_reloadGridforceGrid,
01070 (ClientData) this, (Tcl_CmdDeleteProc *) NULL);
01071 // END gf
01072 #endif
01073
01074 }
|
|
|
Definition at line 1130 of file ScriptTcl.C. References DebugM, and molfile_dcdplugin_fini(). 01130 {
01131 DebugM(3,"Destructing ScriptTcl\n");
01132 #ifdef NAMD_TCL
01133 if ( interp ) Tcl_DeleteInterp(interp);
01134 delete [] callbackname;
01135 #endif
01136
01137 molfile_dcdplugin_fini();
01138 }
|
|
|
Definition at line 1076 of file ScriptTcl.C. References NAMD_bug(), and NAMD_die(). Referenced by after_backend_init(). 01076 {
01077
01078 #ifdef NAMD_TCL
01079 int code = Tcl_Eval(interp,script);
01080 const char *result = Tcl_GetStringResult(interp);
01081 if (*result != 0) CkPrintf("TCL: %s\n",result);
01082 if (code != TCL_OK) {
01083 const char *errorInfo = Tcl_GetVar(interp,"errorInfo",0);
01084 NAMD_die(errorInfo);
01085 }
01086 #else
01087 NAMD_bug("ScriptTcl::eval called without Tcl.");
01088 #endif
01089
01090 }
|
|
|
Definition at line 1092 of file ScriptTcl.C. References NAMD_bug(), and NAMD_die(). Referenced by after_backend_init(). 01092 {
01093
01094 #ifdef NAMD_TCL
01095 int code = Tcl_EvalFile(interp,scriptFile);
01096 const char *result = Tcl_GetStringResult(interp);
01097 if (*result != 0) CkPrintf("TCL: %s\n",result);
01098 if (code != TCL_OK) {
01099 const char *errorInfo = Tcl_GetVar(interp,"errorInfo",0);
01100 NAMD_die(errorInfo);
01101 }
01102 #else
01103 NAMD_bug("ScriptTcl::load called without Tcl.");
01104 #endif
01105
01106 }
|
|
|
Definition at line 632 of file ScriptTcl.C. References Node::coords, Measure::createCommands(), Measure::deleteCommands(), and Node::Object(). Referenced by Output::coordinate(). 00632 {
00633 Measure::createCommands(interp);
00634 Node::Object()->coords = c;
00635 measure_result = Tcl_Eval(interp,measure_command);
00636 Node::Object()->coords = 0;
00637 Measure::deleteCommands(interp);
00638 }
|
|
|
Definition at line 1109 of file ScriptTcl.C. References SimParameters::minimizeCGOn, NAMD_die(), Node::Object(), SCRIPT_END, SCRIPT_MINIMIZE, SCRIPT_RUN, Node::simParameters, and simParams. Referenced by after_backend_init(). 01109 {
01110 #else
01111 void ScriptTcl::run(char *scriptFile) {
01112
01113 if ( NULL == scriptFile || NULL == (config = new ConfigList(scriptFile)) ) {
01114 NAMD_die("Simulation config file is empty.");
01115 }
01116 #endif
01117
01118 if (runWasCalled == 0) {
01119 initcheck();
01120 SimParameters *simParams = Node::Object()->simParameters;
01121 if ( simParams->minimizeCGOn ) runController(SCRIPT_MINIMIZE);
01122 else runController(SCRIPT_RUN);
01123 runWasCalled = 1;
01124 }
01125
01126 runController(SCRIPT_END);
01127
01128 }
|
|
|
Definition at line 54 of file ScriptTcl.h. |
|
|
Definition at line 55 of file ScriptTcl.h. |
1.3.9.1