Difference between revisions of "User:Chalst/hier"

From Minetest Developer Wiki
Jump to navigation Jump to search
(→‎Project file hierarchy: improve discussion of cpp_api & add list of subsystems)
Line 11: Line 11:
 
# sqlite
 
# sqlite
  
 +
Other subfolders
  
 
# script - both C++ to intialise Lua structures, and code to register C++ code as Lua functions.  (E.g., script/scripting_mainmenu.cpp seems to be C++ code to invoke Lua fns defined in script/lua_api/l_mainmenu.cpp)
 
# script - both C++ to intialise Lua structures, and code to register C++ code as Lua functions.  (E.g., script/scripting_mainmenu.cpp seems to be C++ code to invoke Lua fns defined in script/lua_api/l_mainmenu.cpp)

Revision as of 10:34, 27 August 2014

Project file hierarchy

minetest/src folders

Contains implementations of widely used libraries:

  1. cguitfont - Freetype font stuff
  2. json - The C++ Json Project implementation
  3. jthread
  4. lua - Lua 5.1, I assume for compatibility with Luajit
  5. sqlite

Other subfolders

  1. script - both C++ to intialise Lua structures, and code to register C++ code as Lua functions. (E.g., script/scripting_mainmenu.cpp seems to be C++ code to invoke Lua fns defined in script/lua_api/l_mainmenu.cpp)
    1. lua_api - (i) wrappers for C++ code to use in Lua scripts and via the Lua-C api (e.g., lua_api/l_server.cpp), and (ii) making simple game abstractions (e.g., lua_api/l_inventory.cpp)
    2. cpp_api - seems to be C++ similar to (ii) for lua_api, except they don't register Lua functions and they seem to a named global L Lua state object
  2. util - seems to be repurposed code of celeron's.

Subsystems

Chat

Item

  • itemdef.cpp
  • script/cpp_api/s_item.cpp
  • script/lua_api/l_item.cpp

Inventory

  • inventory.cpp
  • inventorymanager.cpp
  • script/cpp_api/s_inventory.cpp
  • script/lua_api/l_inventory.cpp


Menus

Mapgen

Rendering

Server