diff options
Diffstat (limited to 'source/blender/blenkernel/BKE_simulation.h')
-rw-r--r-- | source/blender/blenkernel/BKE_simulation.h | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/source/blender/blenkernel/BKE_simulation.h b/source/blender/blenkernel/BKE_simulation.h index ff6aaa5e30e..6cbe77e8de3 100644 --- a/source/blender/blenkernel/BKE_simulation.h +++ b/source/blender/blenkernel/BKE_simulation.h @@ -17,22 +17,44 @@ #ifndef __BKE_SIMULATION_H__ #define __BKE_SIMULATION_H__ +#include "DNA_simulation_types.h" + #ifdef __cplusplus extern "C" { #endif struct Depsgraph; struct Main; -struct Simulation; +struct Scene; void *BKE_simulation_add(struct Main *bmain, const char *name); void BKE_simulation_data_update(struct Depsgraph *depsgraph, struct Scene *scene, struct Simulation *simulation); +void BKE_simulation_update_dependencies(struct Simulation *simulation, struct Main *bmain); + +SimulationState *BKE_simulation_state_add(Simulation *simulation, + const char *type, + const char *name); +void BKE_simulation_state_remove(Simulation *simulation, SimulationState *state); +void BKE_simulation_state_remove_all(Simulation *simulation); +void BKE_simulation_state_reset(Simulation *simulation, SimulationState *state); +void BKE_simulation_state_reset_all(Simulation *simulation); +SimulationState *BKE_simulation_state_try_find_by_name(Simulation *simulation, const char *name); +SimulationState *BKE_simulation_state_try_find_by_name_and_type(Simulation *simulation, + const char *name, + const char *type); +void BKE_simulation_state_copy_data(const SimulationState *src_state, SimulationState *dst_state); #ifdef __cplusplus } #endif +#ifdef __cplusplus + +template<typename StateType> const char *BKE_simulation_get_state_type_name(); + +#endif + #endif /* __BKE_SIMULATION_H__ */ |