/**
 * @file mvgal_proton.h
 * @brief MVGAL Proton plugin header
 *
 * MVGAL - Multi-Vendor GPU Aggregation Layer for Linux
 *
 * SPDX-License-Identifier: MIT
 */

#ifndef MVGAL_PROTON_H
#define MVGAL_PROTON_H

#ifdef __cplusplus
extern "C" {
#endif

/**
 * @brief Initialize MVGAL Proton integration
 * @return 0 on success, -1 on failure
 */
int mvgal_proton_init(void);

/**
 * @brief Get Proton path
 * @return Proton installation path
 */
const char *mvgal_proton_get_path(void);

/**
 * @brief Enable MVGAL for a Proton game
 * @param game_id Steam game ID
 * @return 0 on success, -1 on failure
 */
int mvgal_proton_enable_game(const char *game_id);

/**
 * @brief Check if MVGAL is enabled for a game
 * @param game_id Steam game ID
 * @return Non-zero if enabled, 0 if not
 */
int mvgal_proton_is_enabled(const char *game_id);

/**
 * @brief Set Proton compatibility tool
 * @param game_id Steam game ID
 * @param tool_path Path to compatibility tool
 * @return 0 on success, -1 on failure
 */
int mvgal_proton_set_compat_tool(const char *game_id, const char *tool_path);

#ifdef __cplusplus
}
#endif

#endif /* MVGAL_PROTON_H */