Blender V5.0
libocio_processor.cc
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2025 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
6
7#if defined(WITH_OPENCOLORIO)
8
9# include "error_handling.hh"
10
11namespace blender::ocio {
12
13OCIO_NAMESPACE::ConstProcessorRcPtr create_ocio_processor(
14 const OCIO_NAMESPACE::ConstConfigRcPtr &ocio_config,
15 const StringRefNull from_colorspace,
16 const StringRefNull to_colorspace)
17{
18 try {
19 OCIO_NAMESPACE::ConstProcessorRcPtr processor = ocio_config->getProcessor(
20 from_colorspace.c_str(), to_colorspace.c_str());
21 return processor;
22 }
23 catch (OCIO_NAMESPACE::Exception &exception) {
24 report_exception(exception);
25 }
26 return nullptr;
27}
28
29OCIO_NAMESPACE::ConstProcessorRcPtr create_ocio_processor_silent(
30 const OCIO_NAMESPACE::ConstConfigRcPtr &ocio_config,
31 const StringRefNull from_colorspace,
32 const StringRefNull to_colorspace)
33{
34 try {
35 OCIO_NAMESPACE::ConstProcessorRcPtr processor = ocio_config->getProcessor(
36 from_colorspace.c_str(), to_colorspace.c_str());
37 return processor;
38 }
39 catch (OCIO_NAMESPACE::Exception & /*exception*/) {
40 }
41 return nullptr;
42}
43
44} // namespace blender::ocio
45
46#endif
constexpr const char * c_str() const