summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorjoye <joye>2014-07-10 20:07:42 (GMT)
committerjoye <joye>2014-07-10 20:07:42 (GMT)
commitce912f0f76a4853dae59210aacac90b38c878d21 (patch)
treecb4f783edea97925220ab2cef96ebc9a23cada1e /src
parent16df568db9b4637706bbdcad266275800a0fbf72 (diff)
downloadblt-ce912f0f76a4853dae59210aacac90b38c878d21.zip
blt-ce912f0f76a4853dae59210aacac90b38c878d21.tar.gz
blt-ce912f0f76a4853dae59210aacac90b38c878d21.tar.bz2
*** empty log message ***
Diffstat (limited to 'src')
-rw-r--r--src/bltVecOp.C56
-rw-r--r--src/bltVector.C27
2 files changed, 59 insertions, 24 deletions
diff --git a/src/bltVecOp.C b/src/bltVecOp.C
new file mode 100644
index 0000000..a382cee
--- /dev/null
+++ b/src/bltVecOp.C
@@ -0,0 +1,56 @@
+/*
+ * Smithsonian Astrophysical Observatory, Cambridge, MA, USA
+ * This code has been modified under the terms listed below and is made
+ * available under the same terms.
+ */
+
+/*
+ * Copyright 1991-2004 George A Howlett.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining
+ * a copy of this software and associated documentation files (the
+ * "Software"), to deal in the Software without restriction, including
+ * without limitation the rights to use, copy, modify, merge, publish,
+ * distribute, sublicense, and/or sell copies of the Software, and to
+ * permit persons to whom the Software is furnished to do so, subject to
+ * the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be
+ * included in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+ * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+ * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+#include <tcl.h>
+
+#include "bltVecInt.h"
+
+using namespace Blt;
+
+extern Tcl_ObjCmdProc VectorObjCmd;
+
+int Blt_VectorCmdInitProc(Tcl_Interp* interp)
+{
+
+ Tcl_Namespace* nsPtr = Tcl_FindNamespace(interp, "::blt", NULL,
+ TCL_LEAVE_ERR_MSG);
+ if (nsPtr == NULL)
+ return TCL_ERROR;
+
+ const char* cmdPath = "::blt::vector";
+ Tcl_Command cmdToken = Tcl_FindCommand(interp, cmdPath, NULL, 0);
+ if (cmdToken)
+ return TCL_OK;
+ cmdToken = Tcl_CreateObjCommand(interp, cmdPath, VectorObjCmd,
+ Vec_GetInterpData(interp), NULL);
+ if (Tcl_Export(interp, nsPtr, "vector", 0) != TCL_OK)
+ return TCL_ERROR;
+
+ return TCL_OK;
+}
diff --git a/src/bltVector.C b/src/bltVector.C
index 955b854..83e9c0f 100644
--- a/src/bltVector.C
+++ b/src/bltVector.C
@@ -90,7 +90,7 @@ typedef struct {
} VectorClient;
static Tcl_CmdDeleteProc VectorInstDeleteProc;
-static Tcl_ObjCmdProc VectorCmd;
+extern Tcl_ObjCmdProc VectorCmd;
static Tcl_InterpDeleteProc VectorInterpDeleteProc;
typedef struct {
@@ -1166,8 +1166,8 @@ static Blt_OpSpec vectorCmdOps[] =
static int nCmdOps = sizeof(vectorCmdOps) / sizeof(Blt_OpSpec);
-static int VectorCmd(ClientData clientData, Tcl_Interp* interp,
- int objc, Tcl_Obj* const objv[])
+int VectorObjCmd(ClientData clientData, Tcl_Interp* interp,
+ int objc, Tcl_Obj* const objv[])
{
VectorCmdProc *proc;
@@ -1245,27 +1245,6 @@ VectorInterpData* Blt::Vec_GetInterpData(Tcl_Interp* interp)
return dataPtr;
}
-int Blt_VectorCmdInitProc(Tcl_Interp* interp)
-{
- Tcl_Namespace* nsPtr;
- Tcl_Command cmdToken;
- const char* cmdPath = "::blt::vector";
-
- nsPtr = Tcl_FindNamespace(interp, "::blt", NULL, TCL_LEAVE_ERR_MSG);
- if (nsPtr == NULL)
- return TCL_ERROR;
-
- cmdToken = Tcl_FindCommand(interp, cmdPath, NULL, 0);
- if (cmdToken)
- return TCL_OK;
- cmdToken = Tcl_CreateObjCommand(interp, cmdPath, VectorCmd,
- Vec_GetInterpData(interp), NULL);
- if (Tcl_Export(interp, nsPtr, "vector", 0) != TCL_OK)
- return TCL_ERROR;
-
- return TCL_OK;
-}
-
/* C Application interface to vectors */
int Blt_CreateVector2(Tcl_Interp* interp, const char *vecName,