From 9a6a26b1ed2540414698721d00b08788fbd150a1 Mon Sep 17 00:00:00 2001 From: "SND\\kernelnet_cp" <SND\kernelnet_cp@9b283d60-5439-405e-af05-b73fd8c4d996> Date: Mon, 17 Feb 2014 11:16:17 +0000 Subject: [PATCH] [0.3.x] added : routines for symbol path managment git-svn-id: https://pykd.svn.codeplex.com/svn@87295 9b283d60-5439-405e-af05-b73fd8c4d996 --- pykd/pymod.cpp | 13 +++++++------ pykd/pysymengine.h | 20 ++++++++++++++++++++ 2 files changed, 27 insertions(+), 6 deletions(-) diff --git a/pykd/pymod.cpp b/pykd/pymod.cpp index 16caae7..a09ef96 100644 --- a/pykd/pymod.cpp +++ b/pykd/pymod.cpp @@ -390,12 +390,13 @@ BOOST_PYTHON_MODULE( pykd ) python::def("getLastException", pykd::getLastException, "Get last exception information"); - - - // // symbol path - // python::def( "getSymbolPath", &getSymbolPath, "Returns current symbol path"); - // python::def( "setSymbolPath", &setSymbolPath, "Set current symbol path"); - // python::def( "appendSymbolPath", &appendSymbolPath, "Append current symbol path"); + // symbol path + python::def("getSymbolPath", pykd::getSymbolPath, + "Returns current symbol path"); + python::def("setSymbolPath", pykd::setSymbolPath, + "Set current symbol path"); + python::def("appendSymbolPath", pykd::appendSymbolPath, + "Append current symbol path"); python::class_<kdlib::NumBehavior, boost::noncopyable>( "numVariant", "numVariant", python::no_init ) .def("__init__", python::make_constructor(&NumVariantAdaptor::getVariant) ) diff --git a/pykd/pysymengine.h b/pykd/pysymengine.h index 647e309..064f2de 100644 --- a/pykd/pysymengine.h +++ b/pykd/pysymengine.h @@ -13,5 +13,25 @@ void setSymSrvDir(const std::wstring &symSrvDirectory) kdlib::setSymSrvDir(symSrvDirectory); } +inline +std::wstring getSymbolPath() +{ + AutoRestorePyState pystate; + return kdlib::getSymbolPath(); +} + +inline +void setSymbolPath(const std::wstring &symPath) +{ + AutoRestorePyState pystate; + kdlib::setSymbolPath(symPath); +} + +inline +void appendSymbolPath(const std::wstring &symPath) +{ + AutoRestorePyState pystate; + kdlib::appendSymbolPath(symPath); +} } // namespace pykd