Blender  V2.93
ikplugin_api.h
Go to the documentation of this file.
1 /*
2  * This program is free software; you can redistribute it and/or
3  * modify it under the terms of the GNU General Public License
4  * as published by the Free Software Foundation; either version 2
5  * of the License, or (at your option) any later version.
6  *
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10  * GNU General Public License for more details.
11  *
12  * You should have received a copy of the GNU General Public License
13  * along with this program; if not, write to the Free Software Foundation,
14  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
15  *
16  * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
17  * All rights reserved.
18  * Original author: Benoit Bolsee
19  */
20 
25 #pragma once
26 
27 #ifdef __cplusplus
28 extern "C" {
29 #endif
30 
31 struct Depsgraph;
32 struct Object;
33 struct Scene;
34 struct bPoseChannel;
35 
36 struct IKPlugin {
38  struct Scene *scene,
39  struct Object *ob,
40  float ctime);
42  struct Scene *scene,
43  struct Object *ob,
44  struct bPoseChannel *pchan,
45  float ctime);
46  void (*release_tree_func)(struct Scene *scene, struct Object *ob, float ctime);
47  void (*remove_armature_func)(struct bPose *pose);
48  void (*clear_cache)(struct bPose *pose);
49  void (*update_param)(struct bPose *pose);
50  void (*test_constraint)(struct Object *ob, struct bConstraint *cons);
51 };
52 
53 typedef struct IKPlugin IKPlugin;
54 
55 #ifdef __cplusplus
56 }
57 #endif
struct Depsgraph Depsgraph
Definition: DEG_depsgraph.h:51
Scene scene
const Depsgraph * depsgraph
void(* clear_cache)(struct bPose *pose)
Definition: ikplugin_api.h:48
void(* remove_armature_func)(struct bPose *pose)
Definition: ikplugin_api.h:47
void(* initialize_tree_func)(struct Depsgraph *depsgraph, struct Scene *scene, struct Object *ob, float ctime)
Definition: ikplugin_api.h:37
void(* release_tree_func)(struct Scene *scene, struct Object *ob, float ctime)
Definition: ikplugin_api.h:46
void(* update_param)(struct bPose *pose)
Definition: ikplugin_api.h:49
void(* execute_tree_func)(struct Depsgraph *depsgraph, struct Scene *scene, struct Object *ob, struct bPoseChannel *pchan, float ctime)
Definition: ikplugin_api.h:41
void(* test_constraint)(struct Object *ob, struct bConstraint *cons)
Definition: ikplugin_api.h:50