Merge branch 'blender-v4.4-release'
[blender.git] / intern / opensubdiv / internal / evaluator / evaluator_cache_impl.cc
blob6f6c2dfca1c4642702def0458ecc526bc2e9866a
1 /* SPDX-FileCopyrightText: 2021 Blender Foundation
3 * SPDX-License-Identifier: GPL-2.0-or-later */
5 #include "internal/evaluator/evaluator_cache_impl.h"
7 #include "internal/evaluator/eval_output_gpu.h"
9 OpenSubdiv_EvaluatorCacheImpl::OpenSubdiv_EvaluatorCacheImpl() = default;
11 OpenSubdiv_EvaluatorCacheImpl::~OpenSubdiv_EvaluatorCacheImpl()
13 delete static_cast<blender::opensubdiv::GpuEvalOutput::EvaluatorCache *>(eval_cache);
16 OpenSubdiv_EvaluatorCacheImpl *openSubdiv_createEvaluatorCacheInternal(
17 eOpenSubdivEvaluator evaluator_type)
19 if (evaluator_type != eOpenSubdivEvaluator::OPENSUBDIV_EVALUATOR_GPU) {
20 return nullptr;
22 OpenSubdiv_EvaluatorCacheImpl *evaluator_cache;
23 evaluator_cache = new OpenSubdiv_EvaluatorCacheImpl;
24 blender::opensubdiv::GpuEvalOutput::EvaluatorCache *eval_cache;
25 eval_cache = new blender::opensubdiv::GpuEvalOutput::EvaluatorCache();
26 evaluator_cache->eval_cache = eval_cache;
27 return evaluator_cache;
30 void openSubdiv_deleteEvaluatorCacheInternal(OpenSubdiv_EvaluatorCacheImpl *evaluator_cache)
32 delete evaluator_cache;