Orxonox: orxonox::TclBind Class Reference

# orxonox::TclBind Class Reference

`#include <src/core/TclBind.h>`

List of all members.

## Public Member Functions

void | createNewTclInterpreter ()
void | createTclInterpreter ()
Tcl::interpreter * | getTclInterpreter () const
std::string | getTclLibPath () const
void | setDataPath (const std::string &datapath)
| TclBind (const std::string &datapath)
| ~TclBind ()

## Static Public Member Functions

static void | bgerror (std::string error)
static bool | eval (const std::string &tclcode)
static TclBind & | getInstance ()
static std::string | tcl (const std::string &tclcode)
static void | tcl_execute (Tcl::object const &args)
static std::string | tcl_query (Tcl::object const &args)

## Private Member Functions

| TclBind (const TclBind &other)

## Private Attributes

bool | bSetTclLibPath_
Tcl::interpreter * | interpreter_
std::string | tclLibPath_

## Static Private Attributes

static TclBind * | singletonRef_s = 0

## Constructor & Destructor Documentation

orxonox::TclBind::TclBind | ( | const std::string & | datapath | ) |

References bSetTclLibPath_, interpreter_, setDataPath(), and singletonRef_s.

orxonox::TclBind::~TclBind | ( |  | ) |

References interpreter_, and singletonRef_s.

orxonox::TclBind::TclBind | ( | const TclBind & | other | ) | `[private]`

## Member Function Documentation

void orxonox::TclBind::bgerror | ( | std::string | error | ) | `[static]`

References COUT, and orxonox::stripEnclosingBraces().

void orxonox::TclBind::createNewTclInterpreter | ( |  | ) |

References createTclInterpreter(), and interpreter_.

void orxonox::TclBind::createTclInterpreter | ( |  | ) |

References bSetTclLibPath_, COUT, Tcl::interpreter::def(), Tcl::interpreter::eval(), interpreter_, orxonox::TclThreadManager::tcl_crossquery(), tcl_execute(), tcl_query(), tclLibPath_, and Tcl::variadic().

Referenced by createNewTclInterpreter(), and setDataPath().

bool orxonox::TclBind::eval | ( | const std::string & | tclcode | ) | `[static]`

References COUT, Tcl::interpreter::eval(), getInstance(), and interpreter_.

Referenced by orxonox::CommandExecutor::execute().

static TclBind& orxonox::TclBind::getInstance | ( |  | ) | `[inline, static]`

Referenced by orxonox::TclThreadManager::createNewTclInterpreter(), eval(), and tcl().

Tcl::interpreter* orxonox::TclBind::getTclInterpreter | ( |  | ) | const`[inline]`

Referenced by orxonox::Core::Core().

std::string orxonox::TclBind::getTclLibPath | ( |  | ) | const`[inline]`

void orxonox::TclBind::setDataPath | ( | const std::string & | datapath | ) |

References bSetTclLibPath_, createTclInterpreter(), and tclLibPath_.

Referenced by TclBind().

std::string orxonox::TclBind::tcl | ( | const std::string & | tclcode | ) | `[static]`

References COUT, Tcl::interpreter::eval(), getInstance(), and interpreter_.

void orxonox::TclBind::tcl_execute | ( | Tcl::object const & | args | ) | `[static]`

References COUT, orxonox::CommandExecutor::execute(), Tcl::object::get(), and orxonox::stripEnclosingBraces().

Referenced by createTclInterpreter().

std::string orxonox::TclBind::tcl_query | ( | Tcl::object const & | args | ) | `[static]`

References COUT, orxonox::CommandExecutor::execute(), Tcl::object::get(), orxonox::CommandExecutor::getLastEvaluation(), orxonox::CommandEvaluation::getReturnvalue(), orxonox::MultiType::getString(), and orxonox::stripEnclosingBraces().

Referenced by createTclInterpreter().

## Member Data Documentation

bool orxonox::TclBind::bSetTclLibPath_`[private]`

Referenced by createTclInterpreter(), setDataPath(), and TclBind().

Tcl::interpreter* orxonox::TclBind::interpreter_`[private]`

Referenced by createNewTclInterpreter(), createTclInterpreter(), eval(), tcl(), TclBind(), and ~TclBind().

TclBind * orxonox::TclBind::singletonRef_s = 0`[static, private]`

Referenced by TclBind(), and ~TclBind().

std::string orxonox::TclBind::tclLibPath_`[private]`

Referenced by createTclInterpreter(), and setDataPath().

The documentation for this class was generated from the following files:

- src/core/TclBind.h
- src/core/TclBind.cc