Files
test/source/blender/blenkernel/BKE_gpencil_modifier_legacy.h
Brecht Van Lommel 4786fbe774 Refactor: Remove extern "C" from most headers
The only remaining code in source/blender that must be compiled as C
is now datatoc generated code and the DNA defaults that use designated
initializers.

Pull Request: https://projects.blender.org/blender/blender/pulls/134469
2025-02-13 18:58:08 +01:00

52 lines
1.6 KiB
C

/* SPDX-FileCopyrightText: 2023 Blender Authors
*
* SPDX-License-Identifier: GPL-2.0-or-later */
#pragma once
/** \file
* \ingroup bke
*/
#include "DNA_gpencil_modifier_types.h" /* Needed for all enum type definitions. */
#include "BKE_lib_query.hh" /* For LibraryForeachIDCallbackFlag enum. */
struct BlendDataReader;
struct GpencilModifierData;
struct ID;
struct ListBase;
struct Object;
/* NOTE: bake_modifier() called from UI:
* needs to create new data-blocks, hence the need for this. */
typedef void (*GreasePencilIDWalkFunc)(void *user_data,
struct Object *ob,
struct ID **idpoin,
LibraryForeachIDCallbackFlag cb_flag);
/**
* Free grease pencil modifier data
* \param md: Modifier data.
* \param flag: Flags.
*/
void BKE_gpencil_modifier_free_ex(struct GpencilModifierData *md, int flag);
/**
* Free grease pencil modifier data
* \param md: Modifier data.
*/
void BKE_gpencil_modifier_free(struct GpencilModifierData *md);
/**
* Link grease pencil modifier related IDs.
* \param ob: Grease pencil object.
* \param walk: Walk option.
* \param user_data: User data.
*/
void BKE_gpencil_modifiers_foreach_ID_link(struct Object *ob,
GreasePencilIDWalkFunc walk,
void *user_data);
void BKE_gpencil_modifier_blend_read_data(struct BlendDataReader *reader,
struct ListBase *lb,
struct Object *ob);