NAP
nap
system_modules
naprender
src
trianglemesh.h
1
/* This Source Code Form is subject to the terms of the Mozilla Public
2
* License, v. 2.0. If a copy of the MPL was not distributed with this
3
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
4
5
#pragma once
6
7
// Local Includes
8
#include "mesh.h"
9
10
// External includes
11
#include <rect.h>
12
13
namespace
nap
14
{
15
class
Core;
16
22
class
NAPAPI
TriangleMesh
:
public
IMesh
23
{
24
RTTI_ENABLE(
IMesh
)
25
public
:
26
TriangleMesh
(
Core
& core);
27
33
virtual
bool
init(
utility::ErrorState
& errorState)
override
;
34
42
bool
setup(
utility::ErrorState
& error);
43
47
virtual
MeshInstance
&
getMeshInstance
()
override
{
return
*mMeshInstance; }
48
52
virtual
const
MeshInstance
&
getMeshInstance
()
const override
{
return
*mMeshInstance; }
53
54
private
:
55
RenderService
* mRenderService =
nullptr
;
56
std::unique_ptr<MeshInstance> mMeshInstance;
57
63
void
constructTriangle(
nap::MeshInstance
& mesh);
64
};
65
}
nap::TriangleMesh::getMeshInstance
virtual MeshInstance & getMeshInstance() override
Definition:
trianglemesh.h:47
nap::utility::ErrorState
Definition:
errorstate.h:19
nap::IMesh
Definition:
mesh.h:394
nap::TriangleMesh::getMeshInstance
virtual const MeshInstance & getMeshInstance() const override
Definition:
trianglemesh.h:52
nap::RenderService
Definition:
renderservice.h:275
nap::Core
Definition:
core.h:82
nap
Definition:
templateapp.h:17
nap::MeshInstance
Definition:
mesh.h:196
nap::TriangleMesh
Definition:
trianglemesh.h:22
Generated by doxygen