MLT 6.22.1
mlt_slices.h
Go to the documentation of this file.
1
23#ifndef MLT_SLICES_H
24#define MLT_SLICES_H
25
26#include "mlt_types.h"
27
33struct mlt_slices_s;
34
35typedef int (*mlt_slices_proc)( int id, int idx, int jobs, void* cookie );
36
37extern mlt_slices mlt_slices_init( int threads, int policy, int priority );
38
39extern void mlt_slices_close( mlt_slices ctx );
40
41extern void mlt_slices_run( mlt_slices ctx, int jobs, mlt_slices_proc proc, void* cookie );
42
44
46
48
49extern void mlt_slices_run_normal( int jobs, mlt_slices_proc proc, void* cookie );
50
51extern void mlt_slices_run_rr( int jobs, mlt_slices_proc proc, void* cookie );
52
53extern void mlt_slices_run_fifo( int jobs, mlt_slices_proc proc, void* cookie );
54
55#endif
void mlt_slices_run_normal(int jobs, mlt_slices_proc proc, void *cookie)
Definition: mlt_slices.c:397
void mlt_slices_run_fifo(int jobs, mlt_slices_proc proc, void *cookie)
Definition: mlt_slices.c:409
int(* mlt_slices_proc)(int id, int idx, int jobs, void *cookie)
Definition: mlt_slices.h:35
void mlt_slices_run_rr(int jobs, mlt_slices_proc proc, void *cookie)
Definition: mlt_slices.c:403
Provides forward definitions of all public types.
Definition: mlt_slices.c:59
int mlt_slices_count_fifo()
Get the number of slices for the fifo scheduling policy.
Definition: mlt_slices.c:388
void mlt_slices_run(mlt_slices ctx, int jobs, mlt_slices_proc proc, void *cookie)
Run sliced execution.
Definition: mlt_slices.c:274
int mlt_slices_count_normal()
Get the number of slices for the normal scheduling policy.
Definition: mlt_slices.c:358
int mlt_slices_count_rr()
Get the number of slices for the round robin scheduling policy.
Definition: mlt_slices.c:373
void mlt_slices_close(mlt_slices ctx)
Destroy sliced threading context.
Definition: mlt_slices.c:227
mlt_slices mlt_slices_init(int threads, int policy, int priority)
Initialize a sliced threading context.
Definition: mlt_slices.c:146
pthread_t threads[MAX_SLICES]
Definition: mlt_slices.c:67