Shkyera Engine
Easy to use, game engine for Python
Interpreter.cpp File Reference
#include "python/Interpreter.hpp"
#include "game/Component.hpp"
#include "game/GameObject.hpp"
#include "game/components/ScriptComponent.hpp"
#include "game/components/shapes/ShapeComponent.hpp"
#include "python/Events.hpp"
#include <iostream>
#include <mutex>
#include <thread>
Include dependency graph for Interpreter.cpp:

Namespaces

 shkyera
 
 shkyera::Python
 

Typedefs

typedef void(* shkyera::Python::eventHandler) (py::list)
 

Functions

void shkyera::Python::setInterpreterRenderer (std::shared_ptr< Renderer > renderer)
 Set the renderer to use for the Python interpreter. More...
 
void shkyera::Python::runEvents ()
 
void shkyera::Python::setPublicVariables (py::object object, std::shared_ptr< ScriptComponent > script)
 
void shkyera::Python::initialize ()
 
void shkyera::Python::runGame ()
 
void shkyera::Python::startImplicit ()
 
void shkyera::Python::start ()
 Start the Python interpreter and initialize the Python environment. More...
 
void shkyera::Python::allowRunning ()
 Allow the Python environment to run. More...
 
void shkyera::Python::stop ()
 Stop the Python interpreter and finalize the Python environment. More...
 
bool shkyera::Python::isRunning ()
 Check if the Python environment is running. More...
 
void shkyera::Python::resetPressedButtons ()
 Resets the set of pressed buttons by the user. More...
 
void shkyera::Python::addPressedButton (std::string key)
 Add the pressed key to the set, so that the user can interact with it from Python script. More...
 

Variables

std::mutex shkyera::Python::runningMutex
 
std::mutex shkyera::Python::inputMutex
 
std::vector< std::string > shkyera::Python::_pressedButtons
 
bool shkyera::Python::_currentlyRunning = false
 
bool shkyera::Python::_canRun = false
 
py::object shkyera::Python::_game
 
py::object shkyera::Python::_eventSystem
 
py::object shkyera::Python::_inputSystem
 
std::shared_ptr< Renderer > shkyera::Python::_renderer
 
std::array< eventHandler, TOTAL_EVENTS > shkyera::Python::_eventHandlers