Files
Megapixels/pipeline.h
Benjamin Schaaf f1947f134e Rework pipeline to allow for DMA support
The process pipeline is now tasked with releasing the camera buffer,
rather than being given a copy. This enables being able to avoid the
copy in the future if it has a performance advantage.
2021-04-08 19:56:51 +10:00

21 lines
601 B
C

#pragma once
#include "camera.h"
#include "device.h"
#include <glib.h>
typedef struct _MPPipeline MPPipeline;
typedef void (*MPPipelineCallback)(MPPipeline *, const void *);
MPPipeline *mp_pipeline_new();
void mp_pipeline_invoke(MPPipeline *pipeline, MPPipelineCallback callback,
const void *data, size_t size);
// Wait until all pending tasks have completed
void mp_pipeline_sync(MPPipeline *pipeline);
void mp_pipeline_free(MPPipeline *pipeline);
GSource *mp_pipeline_add_capture_source(MPPipeline *pipeline, MPCamera *camera,
void (*callback)(MPBuffer, void *),
void *user_data);