neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
i_vertex_provider.hpp
Go to the documentation of this file.
1
// i_vertex_provider.hpp
2
/*
3
neogfx C++ App/Game Engine
4
Copyright (c) 2020 Leigh Johnston. All Rights Reserved.
5
6
This program is free software: you can redistribute it and / or modify
7
it under the terms of the GNU General Public License as published by
8
the Free Software Foundation, either version 3 of the License, or
9
(at your option) any later version.
10
11
This program is distributed in the hope that it will be useful,
12
but WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
GNU General Public License for more details.
15
16
You should have received a copy of the GNU General Public License
17
along with this program. If not, see <http://www.gnu.org/licenses/>.
18
*/
19
20
#pragma once
21
22
#include <
neogfx/neogfx.hpp
>
23
#include <
neogfx/game/mesh_render_cache.hpp
>
24
25
namespace
neogfx
26
{
27
class
i_vertex_provider
28
{
29
public
:
30
struct
not_cacheable
: std::logic_error {
not_cacheable
() : std::logic_error{
"neogfx::i_vertex_provider::not_cacheable"
} {} };
31
public
:
32
virtual
~i_vertex_provider
() =
default
;
33
public
:
34
virtual
bool
cacheable
()
const
= 0;
35
virtual
const
game::component<game::mesh_render_cache>
&
cache
()
const
= 0;
36
virtual
game::component<game::mesh_render_cache>
&
cache
() = 0;
37
};
38
}
neogfx::i_vertex_provider
Definition
i_vertex_provider.hpp:28
neogfx::i_vertex_provider::cacheable
virtual bool cacheable() const =0
neogfx::i_vertex_provider::cache
virtual game::component< game::mesh_render_cache > & cache()=0
neogfx::i_vertex_provider::~i_vertex_provider
virtual ~i_vertex_provider()=default
neogfx::i_vertex_provider::cache
virtual const game::component< game::mesh_render_cache > & cache() const =0
neolib::ecs::component
Definition
component.hpp:210
mesh_render_cache.hpp
neogfx
Definition
action.hpp:28
neogfx.hpp
neogfx::i_vertex_provider::not_cacheable
Definition
i_vertex_provider.hpp:30
neogfx::i_vertex_provider::not_cacheable::not_cacheable
not_cacheable()
Definition
i_vertex_provider.hpp:30
include
neogfx
gfx
i_vertex_provider.hpp
Generated by
1.9.8