31 lines
974 B
C
31 lines
974 B
C
#pragma once
|
|
|
|
/// \file blueprint_tree_item.h
|
|
/// \author Folling <folling@ikarus.world>
|
|
|
|
#include <ikarus/macros.h>
|
|
|
|
/// \addtogroup blueprints Blueprints
|
|
/// @{
|
|
|
|
IKARUS_BEGIN_HEADER
|
|
|
|
struct IkarusBlueprintTreeItem;
|
|
|
|
/// \brief Visits a blueprint tree item, calling the appropriate visitor function.
|
|
/// \param item The item to visit.
|
|
/// \pre \li Must not be null.
|
|
/// \pre \li Must exist.
|
|
/// \param blueprint_visitor The visitor function called if the item is a blueprint. Skipped if null.
|
|
/// \param blueprint_folder_visitor The visitor function called if the item is a blueprint folder. Skipped if null.
|
|
/// \param data The data passed to the visitor functions.
|
|
IKA_API void ikarus_blueprint_tree_item_visit(
|
|
struct IkarusBlueprintTreeItem * item,
|
|
void (*blueprint_visitor)(struct IkarusBlueprint * blueprint, void * data),
|
|
void (*blueprint_folder_visitor)(struct IkarusBlueprintFolder * folder, void * data),
|
|
void * data
|
|
);
|
|
|
|
IKARUS_END_HEADER
|
|
|
|
/// @}
|