Cogs.Core
Extensions
Volumetric
Source
Systems
PointVisualizationSystem.h
1
#pragma once
2
3
#include <memory.h>
4
#include "Systems/ComponentSystem.h"
5
#include "../Components/PointVisualizationComponent.h"
6
7
namespace
Cogs::Core::Volumetric
8
{
9
struct
PointVisualizationData
10
{
11
MeshHandle
mesh;
12
uint8_t pointPositionGeneration = (uint8_t)-1;
13
uint8_t pointDataGeneration = (uint8_t)-1;
14
bool
needsUpdate =
true
;
15
};
16
17
struct
PointVisualizationSystem
18
:
public
ComponentSystemWithDataPool
<PointVisualizationComponent, PointVisualizationData>
19
{
20
public
:
21
PointVisualizationSystem
(
Memory::Allocator
* allocator,
SizeType
capacity) :
ComponentSystemWithDataPool
(allocator, capacity) {}
22
23
void
update
(
Context
*
context
)
override
;
24
};
25
}
Cogs::Core::ComponentSystemBase::context
Context * context
Pointer to the Context instance the system lives in.
Definition:
ComponentSystem.h:136
Cogs::Core::ComponentSystemBase::update
void update()
Updates the system state to that of the current frame.
Definition:
ComponentSystem.h:65
Cogs::Core::ComponentSystemWithDataPool
Component system with parallel data per component stored in a pool similar to how the components them...
Definition:
ComponentSystem.h:365
Cogs::Core::Context
A Context instance contains all the services, systems and runtime components needed to use Cogs.
Definition:
Context.h:83
Cogs::Memory::Allocator
Base allocator implementation.
Definition:
Allocator.h:30
Cogs::SizeType
ComponentIndex SizeType
Type used to track the size of pools.
Definition:
Component.h:19
Cogs::Core::ResourceHandle_t< Mesh >
Cogs::Core::Volumetric::PointVisualizationData
Definition:
PointVisualizationSystem.h:10
Cogs::Core::Volumetric::PointVisualizationSystem
Definition:
PointVisualizationSystem.h:19
Generated by
1.9.6