OpenSubdiv
Loading...
Searching...
No Matches
ompKernel.h
Go to the documentation of this file.
1//
2// Copyright 2013 Pixar
3//
4// Licensed under the Apache License, Version 2.0 (the "Apache License")
5// with the following modification; you may not use this file except in
6// compliance with the Apache License and the following modification to it:
7// Section 6. Trademarks. is deleted and replaced with:
8//
9// 6. Trademarks. This License does not grant permission to use the trade
10// names, trademarks, service marks, or product names of the Licensor
11// and its affiliates, except as required to comply with Section 4(c) of
12// the License and to reproduce the content of the NOTICE file.
13//
14// You may obtain a copy of the Apache License at
15//
16// http://www.apache.org/licenses/LICENSE-2.0
17//
18// Unless required by applicable law or agreed to in writing, software
19// distributed under the Apache License with the above modification is
20// distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21// KIND, either express or implied. See the Apache License for the specific
22// language governing permissions and limitations under the Apache License.
23//
24
25#ifndef OPENSUBDIV3_OSD_OMP_KERNEL_H
26#define OPENSUBDIV3_OSD_OMP_KERNEL_H
27
28#include "../version.h"
29
30namespace OpenSubdiv {
31namespace OPENSUBDIV_VERSION {
32
33namespace Osd {
34
35struct BufferDescriptor;
36
37void
38OmpEvalStencils(float const * src, BufferDescriptor const &srcDesc,
39 float * dst, BufferDescriptor const &dstDesc,
40 int const * sizes,
41 int const * offsets,
42 int const * indices,
43 float const * weights,
44 int start, int end);
45
46void
47OmpEvalStencils(float const * src, BufferDescriptor const &srcDesc,
48 float * dst, BufferDescriptor const &dstDesc,
49 float * dstDu, BufferDescriptor const &dstDuDesc,
50 float * dstDv, BufferDescriptor const &dstDvDesc,
51 int const * sizes,
52 int const * offsets,
53 int const * indices,
54 float const * weights,
55 float const * duWeights,
56 float const * dvWeights,
57 int start, int end);
58
59void
60OmpEvalStencils(float const * src, BufferDescriptor const &srcDesc,
61 float * dst, BufferDescriptor const &dstDesc,
62 float * dstDu, BufferDescriptor const &dstDuDesc,
63 float * dstDv, BufferDescriptor const &dstDvDesc,
64 float * dstDuu, BufferDescriptor const &dstDuuDesc,
65 float * dstDuv, BufferDescriptor const &dstDuvDesc,
66 float * dstDvv, BufferDescriptor const &dstDvvDesc,
67 int const * sizes,
68 int const * offsets,
69 int const * indices,
70 float const * weights,
71 float const * duWeights,
72 float const * dvWeights,
73 float const * duuWeights,
74 float const * duvWeights,
75 float const * dvvWeights,
76 int start, int end);
77
78} // end namespace Osd
79
80} // end namespace OPENSUBDIV_VERSION
81using namespace OPENSUBDIV_VERSION;
82
83} // end namespace OpenSubdiv
84
85#endif // OPENSUBDIV3_OSD_OMP_KERNEL_H
void OmpEvalStencils(float const *src, BufferDescriptor const &srcDesc, float *dst, BufferDescriptor const &dstDesc, int const *sizes, int const *offsets, int const *indices, float const *weights, int start, int end)
BufferDescriptor is a struct which describes buffer elements in interleaved data buffers....