Merge branch 'master' into blender2.8
[blender.git] / source / blender / editors / physics / physics_intern.h
1 /*
2  * ***** BEGIN GPL LICENSE BLOCK *****
3  *
4  * This program is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU General Public License
6  * as published by the Free Software Foundation; either version 2
7  * of the License, or (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software Foundation,
16  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17  *
18  * The Original Code is Copyright (C) 2007 by Janne Karhu.
19  * All rights reserved.
20  *
21  * The Original Code is: all of this file.
22  *
23  * Contributor(s): none yet.
24  *
25  * ***** END GPL LICENSE BLOCK *****
26  */
27
28 /** \file blender/editors/physics/physics_intern.h
29  *  \ingroup edphys
30  */
31
32
33 #ifndef __PHYSICS_INTERN_H__
34 #define __PHYSICS_INTERN_H__
35
36 struct Depsgraph;
37 struct Object;
38 struct PTCacheEdit;
39 struct ParticleSystem;
40 struct PointCache;
41 struct Scene;
42 struct ViewLayer;
43 struct wmOperatorType;
44
45 /* particle_edit.c */
46 void PARTICLE_OT_select_all(struct wmOperatorType *ot);
47 void PARTICLE_OT_select_roots(struct wmOperatorType *ot);
48 void PARTICLE_OT_select_tips(struct wmOperatorType *ot);
49 void PARTICLE_OT_select_random(struct wmOperatorType *ot);
50 void PARTICLE_OT_select_linked(struct wmOperatorType *ot);
51 void PARTICLE_OT_select_less(struct wmOperatorType *ot);
52 void PARTICLE_OT_select_more(struct wmOperatorType *ot);
53
54 void PARTICLE_OT_hide(struct wmOperatorType *ot);
55 void PARTICLE_OT_reveal(struct wmOperatorType *ot);
56
57 void PARTICLE_OT_rekey(struct wmOperatorType *ot);
58 void PARTICLE_OT_subdivide(struct wmOperatorType *ot);
59 void PARTICLE_OT_remove_doubles(struct wmOperatorType *ot);
60 void PARTICLE_OT_weight_set(struct wmOperatorType *ot);
61 void PARTICLE_OT_delete(struct wmOperatorType *ot);
62 void PARTICLE_OT_mirror(struct wmOperatorType *ot);
63
64 void PARTICLE_OT_brush_edit(struct wmOperatorType *ot);
65
66 void PARTICLE_OT_shape_cut(struct wmOperatorType *ot);
67
68 void PARTICLE_OT_particle_edit_toggle(struct wmOperatorType *ot);
69 void PARTICLE_OT_edited_clear(struct wmOperatorType *ot);
70
71 void PARTICLE_OT_unify_length(struct wmOperatorType *ot);
72
73 void PE_create_particle_edit(
74         struct Depsgraph *depsgraph, struct Scene *scene,
75         struct Object *ob, struct PointCache *cache, struct ParticleSystem *psys);
76 void recalc_lengths(struct PTCacheEdit *edit);
77 void recalc_emitter_field(struct Depsgraph *depsgraph, struct Object *ob, struct ParticleSystem *psys);
78 void update_world_cos(struct Depsgraph *depsgraph, struct Object *ob, struct PTCacheEdit *edit);
79
80 /* particle_object.c */
81 void OBJECT_OT_particle_system_add(struct wmOperatorType *ot);
82 void OBJECT_OT_particle_system_remove(struct wmOperatorType *ot);
83
84 void PARTICLE_OT_new(struct wmOperatorType *ot);
85 void PARTICLE_OT_new_target(struct wmOperatorType *ot);
86 void PARTICLE_OT_target_remove(struct wmOperatorType *ot);
87 void PARTICLE_OT_target_move_up(struct wmOperatorType *ot);
88 void PARTICLE_OT_target_move_down(struct wmOperatorType *ot);
89 void PARTICLE_OT_connect_hair(struct wmOperatorType *ot);
90 void PARTICLE_OT_disconnect_hair(struct wmOperatorType *ot);
91 void PARTICLE_OT_copy_particle_systems(struct wmOperatorType *ot);
92 void PARTICLE_OT_duplicate_particle_system(struct wmOperatorType *ot);
93
94 void PARTICLE_OT_dupliob_copy(struct wmOperatorType *ot);
95 void PARTICLE_OT_dupliob_remove(struct wmOperatorType *ot);
96 void PARTICLE_OT_dupliob_move_up(struct wmOperatorType *ot);
97 void PARTICLE_OT_dupliob_move_down(struct wmOperatorType *ot);
98 void PARTICLE_OT_dupliob_refresh(struct wmOperatorType *ot);
99
100 /* particle_boids.c */
101 void BOID_OT_rule_add(struct wmOperatorType *ot);
102 void BOID_OT_rule_del(struct wmOperatorType *ot);
103 void BOID_OT_rule_move_up(struct wmOperatorType *ot);
104 void BOID_OT_rule_move_down(struct wmOperatorType *ot);
105
106 void BOID_OT_state_add(struct wmOperatorType *ot);
107 void BOID_OT_state_del(struct wmOperatorType *ot);
108 void BOID_OT_state_move_up(struct wmOperatorType *ot);
109 void BOID_OT_state_move_down(struct wmOperatorType *ot);
110
111 /* physics_fluid.c */
112 void FLUID_OT_bake(struct wmOperatorType *ot);
113
114 /* dynamicpaint.c */
115 void DPAINT_OT_bake(struct wmOperatorType *ot);
116 void DPAINT_OT_surface_slot_add(struct wmOperatorType *ot);
117 void DPAINT_OT_surface_slot_remove(struct wmOperatorType *ot);
118 void DPAINT_OT_type_toggle(struct wmOperatorType *ot);
119 void DPAINT_OT_output_toggle(struct wmOperatorType *ot);
120
121 /* physics_pointcache.c */
122 void PTCACHE_OT_bake_all(struct wmOperatorType *ot);
123 void PTCACHE_OT_free_bake_all(struct wmOperatorType *ot);
124 void PTCACHE_OT_bake(struct wmOperatorType *ot);
125 void PTCACHE_OT_free_bake(struct wmOperatorType *ot);
126 void PTCACHE_OT_bake_from_cache(struct wmOperatorType *ot);
127 void PTCACHE_OT_add(struct wmOperatorType *ot);
128 void PTCACHE_OT_remove(struct wmOperatorType *ot);
129
130 /* rigidbody_object.c */
131 void RIGIDBODY_OT_object_add(struct wmOperatorType *ot);
132 void RIGIDBODY_OT_object_remove(struct wmOperatorType *ot);
133
134 void RIGIDBODY_OT_objects_add(struct wmOperatorType *ot);
135 void RIGIDBODY_OT_objects_remove(struct wmOperatorType *ot);
136
137 void RIGIDBODY_OT_shape_change(struct wmOperatorType *ot);
138 void RIGIDBODY_OT_mass_calculate(struct wmOperatorType *ot);
139
140 /* rigidbody_constraint.c */
141 void RIGIDBODY_OT_constraint_add(struct wmOperatorType *ot);
142 void RIGIDBODY_OT_constraint_remove(struct wmOperatorType *ot);
143
144 /*rigidbody_world.c */
145 void RIGIDBODY_OT_world_add(struct wmOperatorType *ot);
146 void RIGIDBODY_OT_world_remove(struct wmOperatorType *ot);
147 void RIGIDBODY_OT_world_export(struct wmOperatorType *ot);
148
149 #endif /* __PHYSICS_INTERN_H__ */