3#include "Components/Core/DynamicComponent.h"
5#include "Resources/Resources.h"
13 struct DataSetComponent;
16 enum struct Topology : uint32_t
28 static void registerType();
30 void initialize(
Context * context);
40 Topology topology = Topology::SingleBeam;
42 uint32_t majorCount = 0;
43 uint32_t minorCount = 0;
44 std::vector<uint32_t> beams;
62 uint32_t dataConfGen = 0;
63 uint32_t majorCount_ = 0;
64 uint32_t minorCount_ = 0;
65 std::vector<uint32_t> beams_;
66 std::function<void(
Context*)> callback;
73template<>
inline Cogs::StringView getName<Cogs::Core::EchoSounder::Topology>() {
return "EchoTopology"; }
75template<>
inline Cogs::StringView getName<Cogs::Core::EchoSounder::BeamGroupComponent>() {
return "EchoBeamGroupComponent"; }
A Context instance contains all the services, systems and runtime components needed to use Cogs.
Base class for components implementing dynamic behavior.
Provides a weakly referenced view over the contents of a string.
@ Cone
Generic cone shape.
Contains all Cogs related functionality.
bool minorClosed
Maintained by BeamGroupComponent::update.
std::vector< float > directionY
Subset of directions, maintained by BeamGroupComponent::update.
float minDistance
Along ray, maintained by BeamGroupComponent::update.
float maxBeamWidthY
Maintained by BeamGroupComponent::update.
void requestCallback(std::function< void(Context *)> func)
Used by OctProviderSystem to get a hook.
float maxBeamWidthX
Maintained by BeamGroupComponent::update.
float minDirectionY
Maintained by BeamGroupComponent::update.
float minDirectionX
Maintained by BeamGroupComponent::update.
std::vector< float > directionX
Subset of directions, maintained by BeamGroupComponent::update.
float maxDirectionX
Maintained by BeamGroupComponent::update.
float maxDistance
Along ray, maintained by BeamGroupComponent::update.
float maxDirectionY
Maintained by BeamGroupComponent::update.