frei0r
frei0r.h
Go to the documentation of this file.
1 
209 #ifndef INCLUDED_FREI0R_H
210 #define INCLUDED_FREI0R_H
211 
212 #include <inttypes.h>
213 
217 #define FREI0R_MAJOR_VERSION 1
218 
222 #define FREI0R_MINOR_VERSION 2
223 
224 //---------------------------------------------------------------------------
225 
230 int f0r_init();
231 
236 void f0r_deinit();
237 
238 //---------------------------------------------------------------------------
239 
247 #define F0R_PLUGIN_TYPE_FILTER 0
248 
249 #define F0R_PLUGIN_TYPE_SOURCE 1
250 
251 #define F0R_PLUGIN_TYPE_MIXER2 2
252 
253 #define F0R_PLUGIN_TYPE_MIXER3 3
254 
257 //---------------------------------------------------------------------------
258 
299 #define F0R_COLOR_MODEL_BGRA8888 0
300 
308 #define F0R_COLOR_MODEL_RGBA8888 1
309 
322 #define F0R_COLOR_MODEL_PACKED32 2
323 
341 typedef struct f0r_plugin_info
342 {
343  const char* name;
344  const char* author;
354  const char* explanation;
356 
357 
364 
365 //---------------------------------------------------------------------------
366 
377 #define F0R_PARAM_BOOL 0
378 
383 #define F0R_PARAM_DOUBLE 1
384 
389 #define F0R_PARAM_COLOR 2
390 
394 #define F0R_PARAM_POSITION 3
395 
400 #define F0R_PARAM_STRING 4
401 
406 typedef double f0r_param_bool;
407 
411 typedef double f0r_param_double;
412 
416 typedef struct f0r_param_color
417 {
418  float r;
419  float g;
420  float b;
422 
426 typedef struct f0r_param_position
427 {
428  double x;
429  double y;
431 
432 
437 typedef char* f0r_param_string;
438 
448 typedef struct f0r_param_info
449 {
450  const char* name;
451  int type;
452  const char* explanation;
454 
463 void f0r_get_param_info(f0r_param_info_t* info, int param_index);
464 
465 //---------------------------------------------------------------------------
466 
470 typedef void* f0r_instance_t;
471 
486 f0r_instance_t f0r_construct(unsigned int width, unsigned int height);
487 
495 void f0r_destruct(f0r_instance_t instance);
496 
497 //---------------------------------------------------------------------------
498 
502 typedef void* f0r_param_t;
503 
528 void f0r_set_param_value(f0r_instance_t instance,
529  f0r_param_t param, int param_index);
530 
548 void f0r_get_param_value(f0r_instance_t instance,
549  f0r_param_t param, int param_index);
550 
551 //---------------------------------------------------------------------------
552 
578 void f0r_update(f0r_instance_t instance,
579  double time, const uint32_t* inframe, uint32_t* outframe);
580 
581 //---------------------------------------------------------------------------
582 
604 void f0r_update2(f0r_instance_t instance,
605  double time,
606  const uint32_t* inframe1,
607  const uint32_t* inframe2,
608  const uint32_t* inframe3,
609  uint32_t* outframe);
610 //---------------------------------------------------------------------------
611 
612 #endif
void f0r_set_param_value(f0r_instance_t instance, f0r_param_t param, int param_index)
double f0r_param_bool
Definition: frei0r.h:406
void f0r_destruct(f0r_instance_t instance)
int num_params
Definition: frei0r.h:353
void f0r_update2(f0r_instance_t instance, double time, const uint32_t *inframe1, const uint32_t *inframe2, const uint32_t *inframe3, uint32_t *outframe)
struct f0r_param_color f0r_param_color_t
int minor_version
Definition: frei0r.h:352
void * f0r_param_t
Definition: frei0r.h:502
int f0r_init()
struct f0r_param_info f0r_param_info_t
const char * author
Definition: frei0r.h:344
struct f0r_plugin_info f0r_plugin_info_t
void * f0r_instance_t
Definition: frei0r.h:470
char * f0r_param_string
Definition: frei0r.h:437
void f0r_get_param_value(f0r_instance_t instance, f0r_param_t param, int param_index)
int frei0r_version
Definition: frei0r.h:350
int plugin_type
Definition: frei0r.h:348
int major_version
Definition: frei0r.h:351
void f0r_update(f0r_instance_t instance, double time, const uint32_t *inframe, uint32_t *outframe)
void f0r_get_plugin_info(f0r_plugin_info_t *info)
void f0r_get_param_info(f0r_param_info_t *info, int param_index)
int color_model
Definition: frei0r.h:349
f0r_instance_t f0r_construct(unsigned int width, unsigned int height)
const char * explanation
Definition: frei0r.h:452
const char * explanation
Definition: frei0r.h:354
void f0r_deinit()
const char * name
Definition: frei0r.h:450
double f0r_param_double
Definition: frei0r.h:411
const char * name
Definition: frei0r.h:343
struct f0r_param_position f0r_param_position_t