#pragma once /// \file blueprint_tree_item.h /// \author Folling #include /// \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 /// @}