91fb90315975474fef0e4dc5389e3b02c77058b8
[blender-staging.git] / source / blender / blenkernel / bad_level_call_stubs / stubs.c
1 /**
2  * $Id$
3  *
4  * ***** BEGIN GPL LICENSE BLOCK *****
5  *
6  * This program is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU General Public License
8  * as published by the Free Software Foundation; either version 2
9  * of the License, or (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software Foundation,
18  * Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
19  *
20  * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
21  * All rights reserved.
22  *
23  * The Original Code is: all of this file.
24  *
25  * Contributor(s): none yet.
26  *
27  * ***** END GPL LICENSE BLOCK *****
28  * BKE_bad_level_calls function stubs
29  */
30
31 #include <stdlib.h>
32
33 #include "BKE_bad_level_calls.h"
34 #include "BLI_blenlib.h"
35 #include "DNA_space_types.h"
36 #include "DNA_texture_types.h"
37 #include "DNA_material_types.h"
38 #include "DNA_node_types.h"
39 #include "DNA_scene_types.h"
40
41 #include "RE_render_ext.h"
42 #include "RE_shader_ext.h"
43 #include "RE_pipeline.h"
44
45 int winqueue_break= 0;
46
47 char bprogname[1];
48 char btempdir[1];
49
50 struct IpoCurve;
51 struct FluidsimSettings;
52 struct Render;
53 struct RenderResult;
54 struct Object;
55 struct bPythonConstraint;
56 struct bConstraintOb;
57 struct bConstraintTarget;
58 struct ListBase;
59 struct EditFace;
60
61 char *getIpoCurveName( struct IpoCurve * icu );
62 void insert_vert_icu(struct IpoCurve *icu, float x, float y, short fast);
63 struct IpoCurve *verify_ipocurve(struct ID *id, short a, char *b, char *d, int e, short f);
64 void elbeemDebugOut(char *msg);
65 void fluidsimSettingsFree(struct FluidsimSettings* sb);
66 void fluidsimSettingsCopy(struct FluidsimSettings* sb);
67
68
69 /* readfile.c */
70         /* struct SpaceButs; */
71 void set_rects_butspace(struct SpaceButs *buts){}
72         /* struct SpaceImaSel; */
73 void check_imasel_copy(struct SpaceImaSel *simasel){}
74         /* struct ScrArea; */
75 void unlink_screen(struct bScreen *sc){}
76 void freeAllRad(void){}
77 void free_editText(void){}
78 void free_editArmature(void){}
79 void free_vertexpaint(void){}
80
81 char *getIpoCurveName( struct IpoCurve * icu ) 
82 {
83         return 0;
84 }
85
86 void insert_vert_icu(struct IpoCurve *icu, float x, float y, short fast)
87 {
88 }
89
90
91 struct IpoCurve *verify_ipocurve(struct ID *id, short a, char *b, char *d, int e, short f)
92 {
93         return 0;
94 }
95
96
97 void setscreen(struct bScreen *sc){}
98 void force_draw_all(int header){}
99   /* otherwise the WHILE_SEQ doesn't work */
100         /* struct Sequence; */
101
102 /* MAART: added "seqar = 0; totseq = 0" because the loader will crash without it. */ 
103 void build_seqar(struct ListBase *seqbase, struct Sequence  ***seqar, int *totseq)
104 {
105         *seqar = 0;
106         *totseq = 0;
107 }
108
109 /* blender.c */
110 void mainqenter (unsigned short event, short val){}
111
112 void BPY_do_pyscript(ID *id, short int event){}
113 void BPY_clear_script(Script *script){}
114 void BPY_free_compiled_text(struct Text *text){}
115 void BPY_pydriver_update(void){}
116 float BPY_pydriver_eval(struct IpoDriver *driver)
117 {
118         return 0;
119 }
120
121 /*
122 int EXPP_dict_set_item_str(struct PyObject *dict, char *key, struct PyObject *value)
123 {
124         return 0;
125 }
126 */
127
128 void Node_SetStack(struct BPy_Node *self, struct bNodeStack **stack, int type){}
129 void InitNode(struct BPy_Node *self, struct bNode *node){}
130 void Node_SetShi(struct BPy_Node *self, struct ShadeInput *shi){}
131 struct BPy_NodeSockets *Node_CreateSocketLists(struct bNode *node)
132 {
133         return 0;
134 }
135 int pytype_is_pynode(struct PyObject *pyob)
136 {
137         return 0;
138 }
139 /* depsgraph.c: */
140 struct Object **BPY_pydriver_get_objects(struct IpoDriver *driver)
141 {
142         return 0;
143 }
144 int BPY_button_eval(char *expr, double *value)
145 {
146         return 0;
147 }
148
149 /* PyConstraints - BPY_interface.c */
150 void BPY_pyconstraint_eval(struct bPythonConstraint *con, struct bConstraintOb *cob, struct ListBase *targets)
151 {
152 }
153 void BPY_pyconstraint_target(struct bPythonConstraint *con, struct bConstraintTarget *ct)
154 {
155 }
156
157
158 /* writefile.c */
159         /* struct Oops; */
160 void free_oops(struct Oops *oops){}
161 void exit_posemode(int freedata){}
162 void error(char *str, ...){}
163
164 /* anim.c */
165 ListBase editNurb;
166
167 void waitcursor(int val){}
168 void allqueue(unsigned short event, short val){}
169 #define REDRAWVIEW3D    0x4010
170 Material defmaterial;
171
172 /* exotic.c */
173 void load_editMesh(void){}
174 void make_editMesh(void){}
175 void free_editMesh(struct EditMesh *em){}
176 void docenter_new(void){}
177 int saveover(char *str){ return 0;}
178
179 /* ipo.c */
180 void copy_view3d_lock(short val){}      // was a hack, to make scene layer ipo's possible
181
182 /* library.c */
183 void allspace(unsigned short event, short val){}
184 #define OOPS_TEST             2
185
186 /* mball.c */
187 ListBase editelems;
188
189 /* object.c */
190 void BPY_free_scriptlink(ScriptLink *slink){}
191 void BPY_copy_scriptlink(ScriptLink *scriptlink){}
192 float *give_cursor(void){ return 0;}  // become a callback or argument
193
194
195 /* packedFile.c */
196 short pupmenu(char *instr){ return 0;}  // will be general callback
197
198 /* sca.c */
199 #define LEFTMOUSE    0x001      // because of mouse sensor
200
201 /* scene.c */
202 #include "DNA_sequence_types.h"
203 void free_editing(struct Editing *ed){} // scenes and sequences problem...
204 void BPY_do_all_scripts (short int event, short int anim){}
205
206 /*editmesh_lib.c*/
207 void EM_select_face(struct EditFace *efa, int sel) {}
208 void EM_select_edge(struct EditEdge *eed, int sel) {}
209
210 /*editmesh.c*/
211 struct EditVert *addvertlist(float *vec, struct EditVert *example) { return 0;}
212 struct EditEdge *addedgelist(struct EditVert *v1, struct EditVert *v2, struct EditEdge *example) { return 0;}
213 struct EditFace *addfacelist(struct EditVert *v1, struct EditVert *v2, struct EditVert *v3, struct EditVert *v4, struct EditFace *example, struct EditFace *exampleEdges) { return 0;}
214 struct EditEdge *findedgelist(struct EditVert *v1, struct EditVert *v2)  { return 0;}
215 /*edit.c*/
216
217 void countall(void) {}
218
219 /* exotic.c */
220 int BPY_call_importloader(char *name)
221 {
222         return 0;
223 }
224
225
226 /* texture.c */
227 #define FLO 128
228 #define INT     96
229
230
231 char texstr[20][12];    /* buttons.c */
232
233 /* editsca.c */
234 void make_unique_prop_names(char *str) {}
235
236 /* DerivedMesh.c */
237 void bglBegin(int mode) {}
238 void bglVertex3fv(float *vec) {}
239 void bglVertex3f(float x, float y, float z) {}
240 void bglEnd(void) {}
241
242 /* booleanops.c */
243 struct DerivedMesh *NewBooleanDerivedMesh(struct Object *ob, struct Object *ob_select, int int_op_type) { return 0; }
244
245 // bobj read/write debug messages
246 void elbeemDebugOut(char *msg) {}
247 void fluidsimSettingsFree(struct FluidsimSettings* sb) {}
248 void fluidsimSettingsCopy(struct FluidsimSettings* sb) {}
249
250 /*new render funcs */
251 int     externtex(struct MTex *mtex, float *vec, float *tin, float *tr, float *tg, float *tb, float *ta) { return 0; }
252 void texture_rgb_blend(float *in, float *tex, float *out, float fact, float facg, int blendtype) {}
253 float texture_value_blend(float tex, float out, float fact, float facg, int blendtype, int flip) { return 0; }
254
255 void RE_FreeRenderResult(struct RenderResult *rr) {}
256 void RE_GetResultImage(struct Render *re, struct RenderResult *rr) {}
257 struct RenderResult *RE_MultilayerConvert(void *exrhandle, int rectx, int recty){return NULL;}
258 struct Render *RE_GetRender(const char *name) {return (struct Render *)NULL;}
259 struct RenderResult *RE_GetResult(Render *re) {return (struct RenderResult *)NULL;}
260 float *RE_RenderLayerGetPass(RenderLayer *rl, int passtype) {return NULL;}
261 float RE_filter_value(int type, float x) {return 0.0f;}
262 struct RenderLayer *RE_GetRenderLayer(RenderResult *rr, const char *name) {return (struct RenderLayer *)NULL;}
263 void RE_Database_Free (struct Render *re) {}
264 void RE_FreeRender(Render *re) {}
265 void RE_shade_external(Render *re, ShadeInput *shi, ShadeResult *shr) {}
266 void RE_DataBase_GetView(Render *re, float mat[][4]) {}
267 struct Render *RE_NewRender(const char *name) {return (struct Render *)NULL;}
268 void RE_Database_Baking(struct Render *re, struct Scene *scene, int type, struct Object *actob) {};
269
270
271 /* node_composite.c */
272 void RE_zbuf_accumulate_vecblur(struct NodeBlurData *nd, int xsize, int ysize, float *newrect, float *imgrect, float *vecbufrect, float *zbufrect) {}
273
274 int multitex_ext(Tex *tex, float *texvec, float *dxt, float *dyt, int osatex, TexResult *texres)
275 {
276         return 1969;
277 }
278
279 /* verse */
280
281 void post_vertex_create(struct VerseVert *vvert) {}
282 void post_vertex_set_xyz(struct VerseVert *vvert) {}
283 void post_vertex_delete(struct VerseVert *vvert) {}
284 void post_vertex_free_constraint(struct VerseVert *vvert) {}
285 void post_polygon_create(struct VerseFace *vface) {}
286 void post_polygon_set_corner(struct VerseFace *vface) {}
287 void post_polygon_delete(struct VerseFace *vface) {}
288 void post_polygon_free_constraint(struct VerseFace *vface) {}
289 void post_polygon_set_uint8(struct VerseFace *vface) {}
290 void post_node_create(struct VNode *vnode) {}
291 void post_node_destroy(struct VNode *vnode) {}
292 void post_node_name_set(struct VNode *vnode) {}
293 void post_tag_change(struct VTag *vtag) {}
294 void post_taggroup_create(struct VTagGroup *vtaggroup) {}
295 char *verse_client_name(void) { return NULL; }
296 void post_transform(struct VNode *vnode) {}
297 void post_transform_pos(struct VNode *vnode) {}
298 void post_transform_rot(struct VNode *vnode) {}
299 void post_transform_scale(struct VNode *vnode) {}
300 void post_object_free_constraint(struct VNode *vnode) {}
301 void post_link_set(struct VLink *vlink) {}
302 void post_link_destroy(struct VLink *vlink) {}
303 void post_connect_accept(struct VerseSession *session) {}
304 void post_connect_terminated(struct VerseSession *session) {}
305 void post_connect_update(struct VerseSession *session) {}
306 void add_screenhandler(struct bScreen *sc, short eventcode, short val) {}
307 void post_bitmap_dimension_set(struct VNode *vnode) {}
308 void post_bitmap_layer_create(struct VBitmapLayer *vblayer) {}
309 void post_bitmap_layer_destroy(struct VBitmapLayer *vblayer) {}
310 void post_bitmap_tile_set(struct VBitmapLayer *vblayer, unsigned int xs, unsigned int ys) {}
311 void create_meshdata_from_geom_node(struct Mesh *me, struct VNode *vnode) {}
312 void post_geometry_free_constraint(struct VNode *vnode) {}
313 void post_layer_create(struct VLayer *vlayer) {}
314 void post_layer_destroy(struct VLayer *vlayer) {}
315 void post_server_add(void) {}
316
317 /* zbuf.c stub */
318 void antialias_tagbuf(int xsize, int ysize, char *rectmove) {}
319
320 /* imagetexture.c stub */
321 void ibuf_sample(struct ImBuf *ibuf, float fx, float fy, float dx, float dy, float *result) {}
322
323 void update_for_newframe() {}
324
325 struct FileList;
326 void BIF_filelist_freelib(struct FileList* filelist) {};
327
328 /* edittime.c stub */
329 TimeMarker *get_frame_marker(int frame){return 0;};
330
331 /* editseq.c */
332 Sequence *get_forground_frame_seq(int frame){return 0;};
333 void clear_last_seq(Sequence *seq){};
334     
335
336 /* modifier.c stub */
337 void harmonic_coordinates_bind(struct MeshDeformModifierData *mmd,
338         float (*vertexcos)[3], int totvert, float cagemat[][4]) {}
339
340 /* particle.c */
341 void PE_free_particle_edit(struct ParticleSystem *psys) {}
342 void PE_get_colors(char sel[4], char nosel[4]) {}
343 void PE_recalc_world_cos(struct Object *ob, struct ParticleSystem *psys) {}
344
345 /* text.c */
346 void txt_copy_clipboard (struct Text *text){}
347
348 char stipple_quarttone[1];
349
350 /* texture.c */
351 int multitex_thread(Tex *tex, float *texvec, float *dxt, float *dyt, int osatex, TexResult *texres, short thread, short which_output) {return 0;}
352