Animato - Basic version patching support
[blender.git] / source / blender / blenkernel / BKE_ipo.h
index fae62b4a23e8f2e41b72cba9b5166ac520c1c073..a3f451438bd71bea5fa4ba46353e80c047ec608b 100644 (file)
@@ -24,7 +24,7 @@
  *
  * The Original Code is: all of this file.
  *
- * Contributor(s): 2008, Joshua Leung (Animation Cleanup)
+ * Contributor(s): 2008,2009  Joshua Leung (Animation Cleanup, Animation Systme Recode)
  *
  * ***** END GPL LICENSE BLOCK *****
  */
 extern "C" {
 #endif
 
-       
-/* -------- IPO-Curve (Bezier) Calculations ---------- */
-
-// xxx perhaps this should be in curve api not in anim api
-void correct_bezpart(float *v1, float *v2, float *v3, float *v4);
-       
-
-// XXX this file will soon be depreceated...
-#if 0 // XXX old animation system
-
-typedef struct CfraElem {
-       struct CfraElem *next, *prev;
-       float cfra;
-       int sel;
-} CfraElem;
-
+struct Main;
 struct Ipo;
-struct IpoCurve;
-struct MTex;
-struct Material;
-struct Scene;
-struct Object;
-struct Sequence;
-struct ListBase;
-struct BezTriple;
-struct ID;
-struct bPoseChannel;
-struct bActionChannel;
-struct rctf;
 
-/* ------------ Time Management ------------ */
+void do_versions_ipo_to_animato(struct Main *main);
 
-float frame_to_float(struct Scene *scene, int cfra);
+/* --------------------- xxx stuff ------------------------ */
 
-/* ------------ IPO Management ---------- */
-
-void free_ipo_curve(struct IpoCurve *icu);
 void free_ipo(struct Ipo *ipo);
 
-void ipo_default_v2d_cur(struct Scene *scene, int blocktype, struct rctf *cur);
-
-struct Ipo *add_ipo(struct Scene *scene, char *name, int idcode);
-struct Ipo *copy_ipo(struct Ipo *ipo);
-
-void ipo_idnew(struct Ipo *ipo);
-
-struct IpoCurve *find_ipocurve(struct Ipo *ipo, int adrcode);
-short has_ipo_code(struct Ipo *ipo, int code);
-
-/* -------------- Make Local -------------- */
-
-void make_local_obipo(struct Ipo *ipo);
-void make_local_matipo(struct Ipo *ipo);
-void make_local_keyipo(struct Ipo *ipo);
-void make_local_ipo(struct Ipo *ipo);
-
-/* ------------ IPO-Curve Sanity ---------------- */
-
-void calchandles_ipocurve(struct IpoCurve *icu);
-void testhandles_ipocurve(struct IpoCurve *icu);
-void sort_time_ipocurve(struct IpoCurve *icu);
-int test_time_ipocurve(struct IpoCurve *icu);
-
-void set_interpolation_ipocurve(struct IpoCurve *icu, short ipo);
-
-/* -------- IPO-Curve (Bezier) Calculations ---------- */
-
+// xxx perhaps this should be in curve api not in anim api
 void correct_bezpart(float *v1, float *v2, float *v3, float *v4);
-int findzero(float x, float q0, float q1, float q2, float q3, float *o);
-void berekeny(float f1, float f2, float f3, float f4, float *o, int b);
-void berekenx(float *f, float *o, int b);
-
-/* -------- IPO Curve Calculation and Evaluation --------- */
-
-float eval_icu(struct IpoCurve *icu, float ipotime);
-void calc_icu(struct IpoCurve *icu, float ctime);
-float calc_ipo_time(struct Ipo *ipo, float ctime);
-void calc_ipo(struct Ipo *ipo, float ctime);
-
-void calc_ipo_range(struct Ipo *ipo, float *start, float *end);
-
-/* ------------ Keyframe Column Tools -------------- */
-
-void add_to_cfra_elem(struct ListBase *lb, struct BezTriple *bezt);
-void make_cfra_list(struct Ipo *ipo, struct ListBase *elems);
-
-/* ---------------- IPO DataAPI ----------------- */
-
-void write_ipo_poin(void *poin, int type, float val);
-float read_ipo_poin(void *poin, int type);
-
-void *give_mtex_poin(struct MTex *mtex, int adrcode );
-void *get_pchan_ipo_poin(struct bPoseChannel *pchan, int adrcode);
-void *get_ipo_poin(struct ID *id, struct IpoCurve *icu, int *type);
-
-void set_icu_vars(struct IpoCurve *icu);
-
-/* ---------------- IPO Execution --------------- */
-
-void execute_ipo(struct ID *id, struct Ipo *ipo);
-void execute_action_ipo(struct bActionChannel *achan, struct bPoseChannel *pchan);
-
-void do_ipo_nocalc(struct Scene *scene, struct Ipo *ipo);
-void do_ipo(struct Scene *scene, struct Ipo *ipo);
-void do_mat_ipo(struct Scene *scene, struct Material *ma);
-void do_ob_ipo(struct Scene *scene, struct Object *ob);
-void do_seq_ipo(struct Scene *scene, struct Sequence *seq, int cfra);
-void do_ob_ipodrivers(struct Object *ob, struct Ipo *ipo, float ctime);
-
-void do_all_data_ipos(struct Scene *scene);
-short calc_ipo_spec(struct Ipo *ipo, int adrcode, float *ctime);
-void clear_delta_obipo(struct Ipo *ipo);
-
-/* ----------- IPO <-> GameEngine API ---------------- */
-
-/* the short is an IPO_Channel... */
-
-short IPO_GetChannels(struct Ipo *ipo, short *channels);
-float IPO_GetFloatValue(struct Ipo *ipo, short c, float ctime);
-
-#endif // XXX old animation system
+       
 
 #ifdef __cplusplus
 };