LIBJXL: jxl/thread_parallel_runner.h Source File

LIBJXL

Loading...
Searching...
No Matches
thread_parallel_runner.h
Go to the documentation of this file.
1/* Copyright (c) the JPEG XL Project Authors. All rights reserved.
2 *
3 * Use of this source code is governed by a BSD-style
4 * license that can be found in the LICENSE file.
5 */
6
30#ifndef JXL_THREAD_PARALLEL_RUNNER_H_
31#define JXL_THREAD_PARALLEL_RUNNER_H_
32
33#include <stddef.h>
34#include <stdint.h>
35#include <stdio.h>
36#include <stdlib.h>
37
38#include "jxl/jxl_threads_export.h"
39#include "jxl/memory_manager.h"
40#include "jxl/parallel_runner.h"
41
42#if defined(__cplusplus) || defined(c_plusplus)
43extern "C" {
44#endif
45
48JXL_THREADS_EXPORT JxlParallelRetCode JxlThreadParallelRunner(
49 void* runner_opaque, void* jpegxl_opaque, JxlParallelRunInit init,
50 JxlParallelRunFunction func, uint32_t start_range, uint32_t end_range);
51
55JXL_THREADS_EXPORT void* JxlThreadParallelRunnerCreate(
56 const JxlMemoryManager* memory_manager, size_t num_worker_threads);
57
60JXL_THREADS_EXPORT void JxlThreadParallelRunnerDestroy(void* runner_opaque);
61
65JXL_THREADS_EXPORT size_t JxlThreadParallelRunnerDefaultNumWorkerThreads();
66
67#if defined(__cplusplus) || defined(c_plusplus)
68}
69#endif
70
71#endif /* JXL_THREAD_PARALLEL_RUNNER_H_ */
72
JxlParallelRunInit
JxlParallelRetCode(* JxlParallelRunInit)(void *jpegxl_opaque, size_t num_threads)
Definition parallel_runner.h:77
JxlParallelRetCode
int JxlParallelRetCode
Definition parallel_runner.h:52
JxlParallelRunFunction
void(* JxlParallelRunFunction)(void *jpegxl_opaque, uint32_t value, size_t thread_id)
Definition parallel_runner.h:95
JxlThreadParallelRunnerDefaultNumWorkerThreads
JXL_THREADS_EXPORT size_t JxlThreadParallelRunnerDefaultNumWorkerThreads()
JxlThreadParallelRunner
JXL_THREADS_EXPORT JxlParallelRetCode JxlThreadParallelRunner(void *runner_opaque, void *jpegxl_opaque, JxlParallelRunInit init, JxlParallelRunFunction func, uint32_t start_range, uint32_t end_range)
JxlThreadParallelRunnerCreate
JXL_THREADS_EXPORT void * JxlThreadParallelRunnerCreate(const JxlMemoryManager *memory_manager, size_t num_worker_threads)
JxlThreadParallelRunnerDestroy
JXL_THREADS_EXPORT void JxlThreadParallelRunnerDestroy(void *runner_opaque)
memory_manager.h
Abstraction functions used by JPEG XL to allocate memory.
parallel_runner.h
JxlMemoryManagerStruct
Definition memory_manager.h:51