Cogs.Core
HighlightRegionBounds.h
1#pragma once
2
3#include "Foundation/ComponentModel/Entity.h"
4
5#include "Scene/GetBounds.h"
6
7namespace Cogs::Core {
8
9 struct HighlightRegionSystem;
10
11 struct HighlightRegionBounds final : public IGetBounds {
12 public:
13 explicit HighlightRegionBounds(HighlightRegionSystem* hrSystem) : hrSystem(hrSystem) {}
14
15 void getBounds(Context* context, Cogs::Geometry::BoundingBox& bounds) override;
16
17 bool getBounds(Context* context, const ComponentModel::Entity* entity, Cogs::Geometry::BoundingBox& bounds, bool ignoreVisibility) const override;
18
19 private:
20 HighlightRegionSystem* hrSystem = nullptr;
21 };
22
23}
Container for components, providing composition of dynamic entities.
Definition: Entity.h:18
A Context instance contains all the services, systems and runtime components needed to use Cogs.
Definition: Context.h:83
Contains the Engine, Renderer, resource managers and other systems needed to run Cogs....
void getBounds(Context *context, Cogs::Geometry::BoundingBox &bounds) override
Expand bounds including bounds of all entities in this system in world coordinates.