Blender V5.0
COM_symmetric_separable_blur_weights.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
7#include <cstdint>
8#include <memory>
9
10#include "BLI_map.hh"
11
13#include "COM_result.hh"
14
15namespace blender::compositor {
16
17class Context;
18
19/* -------------------------------------------------------------------- */
22
24 public:
25 int type;
26 float radius;
27
29
30 uint64_t hash() const;
31};
32
35
37
38/* -------------------------------------------------------------------- */
46
48 public:
50
51 SymmetricSeparableBlurWeights(Context &context, int type, float radius);
52
54};
55
57
58/* -------------------------------------------------------------------- */
61
63 private:
65
66 public:
67 void reset() override;
68
69 /* Check if there is an available SymmetricSeparableBlurWeights cached resource with the given
70 * parameters in the container, if one exists, return it, otherwise, return a newly created one
71 * and add it to the container. In both cases, tag the cached resource as needed to keep it
72 * cached for the next evaluation. */
73 Result &get(Context &context, int type, float radius);
74};
75
77
78} // namespace blender::compositor
unsigned long long int uint64_t
SymmetricSeparableBlurWeights(Context &context, int type, float radius)
bool operator==(const BokehKernelKey &a, const BokehKernelKey &b)