[Bf-committers] [Bf-blender-cvs] [1c707a2] master: BGE: Fix T43918: adding submodule bge.app including attribute version.
Jacob Merrill
blueprintrandom1 at gmail.com
Mon Jun 15 23:51:04 CEST 2015
Hey, just wanted to thank you guys, and all the game engine devs.
On Jun 15, 2015 2:29 PM, "tristan panzer" <republicthunderbolt9 at gmail.com>
wrote:
> I know it's a mistake, but i can't change the commit because it pushed.
>
> 2015-06-15 23:15 GMT+02:00 Jorge Bernal <jbernalmartinez at gmail.com>:
>
> > Hi,
> > Only to remark that the author of this patch is Quentin Wenger (Matpi).
> >
> > I know that after phabricator update is more difficult to find the
> > author's mail which it is necessary to give correct acknowledgement using
> > git.
> > Perhaps, the easiest way is to modify the commit log including an author
> > field.
> >
> > Regards,
> > Jorge
> > El 15/06/2015 21:47, "Porteries Tristan" <noreply at git.blender.org>
> > escribió:
> >
> >> Commit: 1c707a239258996e4f5a5873517ff34564eaf8da
> >> Author: Porteries Tristan
> >> Date: Mon Jun 15 21:20:47 2015 +0200
> >> Branches: master
> >>
> https://developer.blender.org/rB1c707a239258996e4f5a5873517ff34564eaf8da
> >>
> >> BGE: Fix T43918: adding submodule bge.app including attribute version.
> >>
> >> This patch adds the submodule app to bge. apps contains constants
> similar
> >> to bpy.app, particularly version (tuple of three ints like 2.75.1).
> >>
> >> It was requested in T43918 and set as TODO.
> >>
> >> The patch also adds rst doc for the module.
> >>
> >> Reviewers: moguri, kupoman, lordloki, panzergame, campbellbarton
> >>
> >> Reviewed By: lordloki, panzergame, campbellbarton
> >>
> >> Subscribers: marcino15
> >>
> >> Projects: #game_logic, #game_python, #game_engine
> >>
> >> Differential Revision: https://developer.blender.org/D1348
> >>
> >> ===================================================================
> >>
> >> A doc/python_api/rst/bge.app.rst
> >> M doc/python_api/sphinx_doc_gen.py
> >> M source/gameengine/Ketsji/KX_PythonInit.cpp
> >> M source/gameengine/Ketsji/KX_PythonInit.h
> >>
> >> ===================================================================
> >>
> >> diff --git a/doc/python_api/rst/bge.app.rst
> >> b/doc/python_api/rst/bge.app.rst
> >> new file mode 100644
> >> index 0000000..a0c2cf3
> >> --- /dev/null
> >> +++ b/doc/python_api/rst/bge.app.rst
> >> @@ -0,0 +1,47 @@
> >> +
> >> +Application Data (bge.app)
> >> +==========================
> >> +
> >> +Module to access application values that remain unchanged during
> runtime.
> >> +
> >> +.. module:: bge.app
> >> +
> >> +.. data:: version
> >> +
> >> + The Blender/BGE version as a tuple of 3 ints, eg. (2, 75, 1).
> >> +
> >> + .. note:: Version tuples can be compared simply with (in)equality
> >> symbols;
> >> + for example, ``(2, 74, 5) <= (2, 75, 0)`` returns True
> >> (lexical order).
> >> +
> >> + :type: tuple of three ints
> >> +
> >> +.. data:: version_string
> >> +
> >> + The Blender/BGE version formatted as a string, eg. "2.75 (sub 1)".
> >> +
> >> + :type: str
> >> +
> >> +.. data:: version_char
> >> +
> >> + The Blender/BGE version character (for minor releases).
> >> +
> >> + :type: str
> >> +
> >> +.. data:: has_texture_ffmpeg
> >> +
> >> + True if the BGE has been built with FFmpeg support, enabling use of
> >> :class:`~bge.texture.ImageFFmpeg` and :class:`~bge.texture.VideoFFmpeg`.
> >> +
> >> + :type: bool
> >> +
> >> +.. data:: has_joystick
> >> +
> >> + True if the BGE has been built with joystick support.
> >> +
> >> + :type: bool
> >> +
> >> +.. data:: has_physics
> >> +
> >> + True if the BGE has been built with physics support.
> >> +
> >> + :type: bool
> >> +
> >> diff --git a/doc/python_api/sphinx_doc_gen.py
> >> b/doc/python_api/sphinx_doc_gen.py
> >> index e5ce4c7..32776ef 100644
> >> --- a/doc/python_api/sphinx_doc_gen.py
> >> +++ b/doc/python_api/sphinx_doc_gen.py
> >> @@ -234,6 +234,7 @@ else:
> >> EXCLUDE_MODULES = [
> >> "aud",
> >> "bge",
> >> + "bge.app"
> >> "bge.constraints",
> >> "bge.events",
> >> "bge.logic",
> >> @@ -1669,6 +1670,7 @@ def write_rst_contents(basepath):
> >> fw(" bge.texture.rst\n\n")
> >> fw(" bge.events.rst\n\n")
> >> fw(" bge.constraints.rst\n\n")
> >> + fw(" bge.app.rst\n\n")
> >>
> >> # rna generated change log
> >> fw(title_string("API Info", "=", double=True))
> >> @@ -1825,6 +1827,7 @@ def copy_handwritten_rsts(basepath):
> >> "bge.texture",
> >> "bge.events",
> >> "bge.constraints",
> >> + "bge.app",
> >> "bgl", # "Blender OpenGl wrapper"
> >> "gpu", # "GPU Shader Module"
> >>
> >> diff --git a/source/gameengine/Ketsji/KX_PythonInit.cpp
> >> b/source/gameengine/Ketsji/KX_PythonInit.cpp
> >> index 80e56a4..a5fb2de 100644
> >> --- a/source/gameengine/Ketsji/KX_PythonInit.cpp
> >> +++ b/source/gameengine/Ketsji/KX_PythonInit.cpp
> >> @@ -138,6 +138,7 @@ extern "C" {
> >> #include "BKE_global.h"
> >> #include "BKE_library.h"
> >> #include "BKE_appdir.h"
> >> +#include "BKE_blender.h"
> >> #include "BLI_blenlib.h"
> >> #include "GPU_material.h"
> >> #include "MEM_guardedalloc.h"
> >> @@ -2027,6 +2028,11 @@ PyMODINIT_FUNC initBGE(void)
> >> /* skip "bge." */
> >> #define SUBMOD (mod_full + 4)
> >>
> >> + mod_full = "bge.app";
> >> + PyModule_AddObject(mod, SUBMOD, (submodule =
> >> initApplicationPythonBinding()));
> >> + PyDict_SetItemString(sys_modules, mod_full, submodule);
> >> + Py_INCREF(submodule);
> >> +
> >> mod_full = "bge.constraints";
> >> PyModule_AddObject(mod, SUBMOD, (submodule =
> >> initConstraintPythonBinding()));
> >> PyDict_SetItemString(sys_modules, mod_full, submodule);
> >> @@ -2550,6 +2556,77 @@ PyMODINIT_FUNC initGameKeysPythonBinding()
> >> return m;
> >> }
> >>
> >> +
> >> +
> >> +/*
> >>
> ------------------------------------------------------------------------- */
> >> +/* Application: application values that remain unchanged during runtime
> >> */
> >> +/*
> >>
> ------------------------------------------------------------------------- */
> >> +
> >> +PyDoc_STRVAR(Application_module_documentation,
> >> + "This module contains application values that remain unchanged
> >> during runtime."
> >> + );
> >> +
> >> +static struct PyModuleDef Application_module_def = {
> >> + PyModuleDef_HEAD_INIT,
> >> + "bge.app", /* m_name */
> >> + Application_module_documentation, /* m_doc */
> >> + 0, /* m_size */
> >> + NULL, /* m_methods */
> >> + 0, /* m_reload */
> >> + 0, /* m_traverse */
> >> + 0, /* m_clear */
> >> + 0, /* m_free */
> >> +};
> >> +
> >> +PyMODINIT_FUNC initApplicationPythonBinding()
> >> +{
> >> + PyObject *m;
> >> + PyObject *d;
> >> +
> >> + m = PyModule_Create(&Application_module_def);
> >> +
> >> + // Add some symbolic constants to the module
> >> + d = PyModule_GetDict(m);
> >> +
> >> + PyDict_SetItemString(d, "version", Py_BuildValue("(iii)",
> >> + BLENDER_VERSION / 100, BLENDER_VERSION % 100,
> >> BLENDER_SUBVERSION));
> >> + PyDict_SetItemString(d, "version_string",
> >> PyUnicode_FromFormat("%d.%02d (sub %d)",
> >> + BLENDER_VERSION / 100, BLENDER_VERSION % 100,
> >> BLENDER_SUBVERSION));
> >> + PyDict_SetItemString(d, "version_char", PyUnicode_FromString(
> >> + STRINGIFY(BLENDER_VERSION_CHAR)));
> >> +
> >> + PyDict_SetItemString(d, "has_texture_ffmpeg",
> >> +#ifdef WITH_FFMPEG
> >> + Py_True
> >> +#else
> >> + Py_False
> >> +#endif
> >> + );
> >> + PyDict_SetItemString(d, "has_joystick",
> >> +#ifdef WITH_SDL
> >> + Py_True
> >> +#else
> >> + Py_False
> >> +#endif
> >> + );
> >> + PyDict_SetItemString(d, "has_physics",
> >> +#ifdef WITH_BULLET
> >> + Py_True
> >> +#else
> >> + Py_False
> >> +#endif
> >> + );
> >> +
> >> + // Check for errors
> >> + if (PyErr_Occurred()) {
> >> + PyErr_Print();
> >> + PyErr_Clear();
> >> + }
> >> +
> >> + return m;
> >> +}
> >> +
> >> +
> >> // utility function for loading and saving the globalDict
> >> int saveGamePythonConfig( char **marshal_buffer)
> >> {
> >> diff --git a/source/gameengine/Ketsji/KX_PythonInit.h
> >> b/source/gameengine/Ketsji/KX_PythonInit.h
> >> index f74a4b3..06aeb5a 100644
> >> --- a/source/gameengine/Ketsji/KX_PythonInit.h
> >> +++ b/source/gameengine/Ketsji/KX_PythonInit.h
> >> @@ -48,6 +48,7 @@ extern bool gUseVisibilityTemp;
> >>
> >> #ifdef WITH_PYTHON
> >> PyMODINIT_FUNC initBGE(void);
> >> +PyMODINIT_FUNC initApplicationPythonBinding(void);
> >> PyMODINIT_FUNC initGameLogicPythonBinding(void);
> >> PyMODINIT_FUNC initGameKeysPythonBinding(void);
> >> PyMODINIT_FUNC initRasterizerPythonBinding(void);
> >>
> >> _______________________________________________
> >> Bf-blender-cvs mailing list
> >> Bf-blender-cvs at blender.org
> >> http://lists.blender.org/mailman/listinfo/bf-blender-cvs
> >>
> >
> > _______________________________________________
> > Bf-blender-cvs mailing list
> > Bf-blender-cvs at blender.org
> > http://lists.blender.org/mailman/listinfo/bf-blender-cvs
> >
> >
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
>
More information about the Bf-committers
mailing list