Blender V5.0
intern/frame_accessor.h
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2014 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#ifndef LIBMV_C_API_FRAME_ACCESSOR_H_
6#define LIBMV_C_API_FRAME_ACCESSOR_H_
7
8#include <stdint.h>
9
10#include "intern/image.h"
11#include "intern/region.h"
12
13#ifdef __cplusplus
14extern "C" {
15#endif
16
20typedef void* libmv_CacheKey;
21
26
29 int clip,
30 int frame,
31 libmv_InputMode input_mode,
32 int downscale,
33 const libmv_Region* region,
35 float** destination,
36 int* width,
37 int* height,
38 int* channels);
39
40typedef void (*libmv_ReleaseImageCallback)(libmv_CacheKey cache_key);
41
44 int clip,
45 int frame,
46 int track,
47 const libmv_Region* region,
48 float** destination,
49 int* width,
50 int* height);
51typedef void (*libmv_ReleaseMaskCallback)(libmv_CacheKey cache_key);
52
55 libmv_GetImageCallback get_image_callback,
56 libmv_ReleaseImageCallback release_image_callback,
57 libmv_GetMaskForTrackCallback get_mask_for_track_callback,
58 libmv_ReleaseMaskCallback release_mask_callback);
60
63
65 const libmv_FloatImage* input_image,
66 libmv_FloatImage* output_image);
67#ifdef __cplusplus
68}
69#endif
70
71#endif // LIBMV_C_API_FRAME_ACCESSOR_H_
SIMD_FORCE_INLINE btVector3 transform(const btVector3 &point) const
long long int int64_t
void libmv_FrameAccessorDestroy(libmv_FrameAccessor *frame_accessor)
struct libmv_FrameTransform libmv_FrameTransform
libmv_CacheKey(* libmv_GetImageCallback)(libmv_FrameAccessorUserData *user_data, int clip, int frame, libmv_InputMode input_mode, int downscale, const libmv_Region *region, const libmv_FrameTransform *transform, float **destination, int *width, int *height, int *channels)
void * libmv_CacheKey
void libmv_frameAccessorgetTransformRun(const libmv_FrameTransform *transform, const libmv_FloatImage *input_image, libmv_FloatImage *output_image)
struct libmv_FrameAccessorUserData libmv_FrameAccessorUserData
libmv_CacheKey(* libmv_GetMaskForTrackCallback)(libmv_FrameAccessorUserData *user_data, int clip, int frame, int track, const libmv_Region *region, float **destination, int *width, int *height)
void(* libmv_ReleaseImageCallback)(libmv_CacheKey cache_key)
@ LIBMV_IMAGE_MODE_RGBA
@ LIBMV_IMAGE_MODE_MONO
int64_t libmv_frameAccessorgetTransformKey(const libmv_FrameTransform *transform)
void(* libmv_ReleaseMaskCallback)(libmv_CacheKey cache_key)
struct libmv_FrameAccessor libmv_FrameAccessor
libmv_FrameAccessor * libmv_FrameAccessorNew(libmv_FrameAccessorUserData *user_data, libmv_GetImageCallback get_image_callback, libmv_ReleaseImageCallback release_image_callback, libmv_GetMaskForTrackCallback get_mask_for_track_callback, libmv_ReleaseMaskCallback release_mask_callback)