Kohi Game Engine
plugin_system.h File Reference
#include "defines.h"
#include "parsers/kson_parser.h"
#include "plugins/plugin_types.h"

Go to the source code of this file.

Data Structures

struct  plugin_system_plugin_config
 
struct  plugin_system_config
 

Typedefs

typedef struct plugin_system_plugin_config plugin_system_plugin_config
 
typedef struct plugin_system_config plugin_system_config
 

Functions

b8 plugin_system_deserialize_config (const char *config_str, plugin_system_config *out_config)
 
b8 plugin_system_intialize (u64 *memory_requirement, struct plugin_system_state *state, struct plugin_system_config *config)
 
void plugin_system_shutdown (struct plugin_system_state *state)
 
b8 plugin_system_initialize_plugins (struct plugin_system_state *state)
 
b8 plugin_system_update_plugins (struct plugin_system_state *state, struct frame_data *p_frame_data)
 
b8 plugin_system_frame_prepare_plugins (struct plugin_system_state *state, struct frame_data *p_frame_data)
 
b8 plugin_system_render_plugins (struct plugin_system_state *state, struct frame_data *p_frame_data)
 
b8 plugin_system_on_window_resize_plugins (struct plugin_system_state *state, struct kwindow *window, u16 width, u16 height)
 
KAPI b8 plugin_system_load_plugin (struct plugin_system_state *state, const char *name, const char *config)
 
KAPI kruntime_pluginplugin_system_get (struct plugin_system_state *state, const char *name)
 

Typedef Documentation

◆ plugin_system_config

The overall configuration for the plugin system.

◆ plugin_system_plugin_config

Function Documentation

◆ plugin_system_deserialize_config()

b8 plugin_system_deserialize_config ( const char *  config_str,
plugin_system_config out_config 
)

◆ plugin_system_frame_prepare_plugins()

b8 plugin_system_frame_prepare_plugins ( struct plugin_system_state *  state,
struct frame_data p_frame_data 
)

◆ plugin_system_get()

KAPI kruntime_plugin* plugin_system_get ( struct plugin_system_state *  state,
const char *  name 
)

◆ plugin_system_initialize_plugins()

b8 plugin_system_initialize_plugins ( struct plugin_system_state *  state)

◆ plugin_system_intialize()

b8 plugin_system_intialize ( u64 memory_requirement,
struct plugin_system_state *  state,
struct plugin_system_config config 
)

◆ plugin_system_load_plugin()

KAPI b8 plugin_system_load_plugin ( struct plugin_system_state *  state,
const char *  name,
const char *  config 
)

◆ plugin_system_on_window_resize_plugins()

b8 plugin_system_on_window_resize_plugins ( struct plugin_system_state *  state,
struct kwindow window,
u16  width,
u16  height 
)

◆ plugin_system_render_plugins()

b8 plugin_system_render_plugins ( struct plugin_system_state *  state,
struct frame_data p_frame_data 
)

◆ plugin_system_shutdown()

void plugin_system_shutdown ( struct plugin_system_state *  state)

◆ plugin_system_update_plugins()

b8 plugin_system_update_plugins ( struct plugin_system_state *  state,
struct frame_data p_frame_data 
)