1 | // Copyright 2009-2021 Intel Corporation |
2 | // SPDX-License-Identifier: Apache-2.0 |
3 | |
4 | #pragma once |
5 | |
6 | #include "../geometry/primitive.h" |
7 | #include "../subdiv/subdivpatch1base.h" |
8 | |
9 | namespace embree |
10 | { |
11 | |
12 | struct __aligned(64) SubdivPatch1 : public SubdivPatch1Base |
13 | { |
14 | struct Type : public PrimitiveType |
15 | { |
16 | const char* name() const; |
17 | size_t sizeActive(const char* This) const; |
18 | size_t sizeTotal(const char* This) const; |
19 | size_t getBytes(const char* This) const; |
20 | }; |
21 | |
22 | static Type type; |
23 | |
24 | public: |
25 | |
26 | /*! constructor for cached subdiv patch */ |
27 | SubdivPatch1 (const unsigned int gID, |
28 | const unsigned int pID, |
29 | const unsigned int subPatch, |
30 | const SubdivMesh *const mesh, |
31 | const size_t time, |
32 | const Vec2f uv[4], |
33 | const float edge_level[4], |
34 | const int subdiv[4], |
35 | const int simd_width) |
36 | : SubdivPatch1Base(gID,pID,subPatch,mesh,time,uv,edge_level,subdiv,simd_width) {} |
37 | }; |
38 | } |
39 | |