Cogs.Core
Public Member Functions | Static Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
Cogs::Core::RadialLogComponent Struct Reference
Inheritance diagram for Cogs::Core::RadialLogComponent:
Cogs::Core::DynamicComponent Cogs::ComponentModel::Component

Public Member Functions

void initialize (Context *context)
 
void update ()
 
- Public Member Functions inherited from Cogs::ComponentModel::Component
class EntitygetContainer () const
 Get the container currently owning this component instance.
 
void setContainer (class Entity *container)
 Set the container owning this component instance.
 
template<typename ComponentType >
ComponentType * getComponent () const
 
COGSFOUNDATION_API ComponentgetComponent (const Reflection::Name &name) const
 
COGSFOUNDATION_API ComponentgetComponent (const Reflection::TypeId &id) const
 
template<typename ComponentType >
ComponentHandle getComponentHandle () const
 
COGSFOUNDATION_API ComponentHandle getComponentHandle (const Reflection::Name &name) const
 
COGSFOUNDATION_API ComponentHandle getComponentHandle (const Reflection::TypeId &id) const
 
void setActive ()
 Sets the component to the ComponentFlags::Active state.
 
bool isActive () const
 Gets if the component is currently set to the ComponentFlags::Active state.
 
void setChanged ()
 Sets the component to the ComponentFlags::Changed state with carry.
 
void setChangedTransient ()
 Sets the component to the ComponentFlags::Changed state without carry.
 
void setFieldChanged (const Reflection::FieldId fieldId)
 Sets the component to the ComponentFlags::Changed state without carry.
 
template<typename ClassType , typename FieldType >
void setFieldChanged (FieldType ClassType::*field)
 Sets a flag indicating that the given field has changed.
 
void setFieldChangedTransient (const Reflection::FieldId fieldId)
 Sets the component to the ComponentFlags::Changed state without carry.
 
bool hasChanged () const
 
bool hasAnyfieldChanged () const
 Gets if any fields have been changed.
 
bool hasFieldChanged (const Reflection::FieldId fieldId) const
 Gets if the field with the given id on this component instance has changed.
 
template<typename ClassType , typename FieldType >
bool hasFieldChanged (FieldType ClassType::*field) const
 Gets if the given field has changed.
 
void resetCarryChanged ()
 Reset the CarryChanged flag. Called at start of redraw. See ComponentFlags::CarryChanged.
 
void resetChanged ()
 Resets the changed state of the component, respecting any carry state set.
 
template<typename ClassType , typename FieldType >
Reflection::FieldId getFieldId (FieldType ClassType::*field) const
 Gets field ID of the given field.
 
void resetFieldsChanged ()
 Resets the state of all changed field flags.
 
void resetFieldChanged (const Reflection::FieldId fieldId)
 Resets the changed state of the given fieldId.
 
template<typename ClassType , typename FieldType >
void resetFieldChanged (FieldType ClassType::*field)
 Resets the changed state of the given field.
 
constexpr void setFlags (const uint32_t flags)
 Override all flags of the Component, setting the given flags.
 
constexpr void setFlag (const uint32_t flag)
 Set the given flags. Does not override the currently set flags.
 
constexpr void unsetFlag (const uint32_t flag)
 Unset the given flag. Does not remove the status of other than the given flags.
 
constexpr bool isSet (const uint32_t flag) const
 Checks if the given flag is set. Requires exact bit match if test of several bits.
 
constexpr void setTypeId (const Reflection::TypeId typeId)
 Set the Reflection::TypeId of the component.
 
constexpr Reflection::TypeId getTypeId () const
 Get the Reflection::TypeId of the component.
 
COGSFOUNDATION_API const Reflection::TypegetType () const
 Get the full Reflection::Type of the component.
 
constexpr void setIndex (const ComponentIndex index)
 Set the components pool index. For internal use only.
 
constexpr ComponentIndex getIndex () const
 Get the components pool index. For internal use only.
 
constexpr void setGeneration (uint16_t generation)
 Sets the component generation.
 
constexpr uint16_t getGeneration () const
 Gets the component generation.
 
size_t hash (size_t hashValue=Cogs::hash()) const
 Calculates a hash of this component's members.
 

Static Public Member Functions

static void registerType ()
 
- Static Public Member Functions inherited from Cogs::Core::DynamicComponent
static COGSCORE_DLL_API void registerType ()
 Register the type in the type system.
 
template<typename T >
static Reflection::TyperegisterDerivedType ()
 Convenience method for registering the type of a derived component.
 
- Static Public Member Functions inherited from Cogs::ComponentModel::Component
static COGSFOUNDATION_API void registerType ()
 Register the Component type in the global type database.
 
static COGSFOUNDATION_API Reflection::TypeId getComponentTypeId (const StringView &name)
 Get the type id of the component type with the given name.
 

Public Attributes

Contextcontext = nullptr
 
BufferView< glm::vec3 > positions
 Center position for each sample.
 
BufferView< float > indexes
 Measured depth per sample.
 
BufferView< float > azimuths
 Clockwise rotation from grid north in radians, per sample.
 
BufferView< float > inclinations
 Positive values interpreted as down, per sample.
 
BufferView< float > radiuses
 One radius per sector (sectors = radiuses/samples).
 
BufferView< glm::vec3 > gradient
 Color gradient.
 
BufferView< glm::vec4 > colors
 One color per radius value, only used if set.
 
bool normalize_range = true
 Automatically use min/max radius (from buffer) with gradient.
 
float r_min = 0.0f
 Manual min radius for gradient.
 
float r_max = 1.0f
 Manual max radius for gradient.
 
float high_side_size = 0.05f
 Height of high side indicator.
 
uint32_t high_side_index = 0
 Index of sector to use for finding radius.
 
glm::vec4 high_side_color = glm::vec4(1, 1, 34.0f / 255.0f, 1)
 Color for drawing high side indicator.
 
- Public Attributes inherited from Cogs::Core::DynamicComponent
void * messageCallback = nullptr
 
void * userData = nullptr
 
size_t dynamicTypeInfoIndex = static_cast<size_t>(-1)
 

Private Member Functions

void generateHighSide ()
 

Private Attributes

float lr_min = -1.0f
 
float lr_max = -1.0f
 
MaterialInstanceHandle instance
 
EntityPtr highSide
 

Detailed Description

Definition at line 9 of file RadialLogComponent.h.

Constructor & Destructor Documentation

◆ RadialLogComponent()

Cogs::Core::RadialLogComponent::RadialLogComponent ( )

Definition at line 53 of file RadialLogComponent.cpp.

Member Function Documentation

◆ generateHighSide()

void Cogs::Core::RadialLogComponent::generateHighSide ( )
private

Definition at line 170 of file RadialLogComponent.cpp.

◆ initialize()

void Cogs::Core::RadialLogComponent::initialize ( Context context)

Definition at line 57 of file RadialLogComponent.cpp.

◆ registerType()

void Cogs::Core::RadialLogComponent::registerType ( )
static

Definition at line 27 of file RadialLogComponent.cpp.

◆ update()

void Cogs::Core::RadialLogComponent::update ( )

Definition at line 70 of file RadialLogComponent.cpp.

Member Data Documentation

◆ azimuths

BufferView<float> Cogs::Core::RadialLogComponent::azimuths

Clockwise rotation from grid north in radians, per sample.

Definition at line 20 of file RadialLogComponent.h.

◆ colors

BufferView<glm::vec4> Cogs::Core::RadialLogComponent::colors

One color per radius value, only used if set.

Definition at line 25 of file RadialLogComponent.h.

◆ context

Context* Cogs::Core::RadialLogComponent::context = nullptr

Definition at line 16 of file RadialLogComponent.h.

◆ gradient

BufferView<glm::vec3> Cogs::Core::RadialLogComponent::gradient

Color gradient.

Always required for now.

Definition at line 24 of file RadialLogComponent.h.

◆ high_side_color

glm::vec4 Cogs::Core::RadialLogComponent::high_side_color = glm::vec4(1, 1, 34.0f / 255.0f, 1)

Color for drawing high side indicator.

Definition at line 33 of file RadialLogComponent.h.

◆ high_side_index

uint32_t Cogs::Core::RadialLogComponent::high_side_index = 0

Index of sector to use for finding radius.

Definition at line 32 of file RadialLogComponent.h.

◆ high_side_size

float Cogs::Core::RadialLogComponent::high_side_size = 0.05f

Height of high side indicator.

Definition at line 31 of file RadialLogComponent.h.

◆ highSide

EntityPtr Cogs::Core::RadialLogComponent::highSide
private

Definition at line 42 of file RadialLogComponent.h.

◆ inclinations

BufferView<float> Cogs::Core::RadialLogComponent::inclinations

Positive values interpreted as down, per sample.

Definition at line 21 of file RadialLogComponent.h.

◆ indexes

BufferView<float> Cogs::Core::RadialLogComponent::indexes

Measured depth per sample.

Definition at line 19 of file RadialLogComponent.h.

◆ instance

MaterialInstanceHandle Cogs::Core::RadialLogComponent::instance
private

Definition at line 41 of file RadialLogComponent.h.

◆ lr_max

float Cogs::Core::RadialLogComponent::lr_max = -1.0f
private

Definition at line 39 of file RadialLogComponent.h.

◆ lr_min

float Cogs::Core::RadialLogComponent::lr_min = -1.0f
private

Definition at line 38 of file RadialLogComponent.h.

◆ normalize_range

bool Cogs::Core::RadialLogComponent::normalize_range = true

Automatically use min/max radius (from buffer) with gradient.

Definition at line 27 of file RadialLogComponent.h.

◆ positions

BufferView<glm::vec3> Cogs::Core::RadialLogComponent::positions

Center position for each sample.

Definition at line 18 of file RadialLogComponent.h.

◆ r_max

float Cogs::Core::RadialLogComponent::r_max = 1.0f

Manual max radius for gradient.

Radius get clamped if higher.

Definition at line 29 of file RadialLogComponent.h.

◆ r_min

float Cogs::Core::RadialLogComponent::r_min = 0.0f

Manual min radius for gradient.

Radius get clamped if lower.

Definition at line 28 of file RadialLogComponent.h.

◆ radiuses

BufferView<float> Cogs::Core::RadialLogComponent::radiuses

One radius per sector (sectors = radiuses/samples).

Clockwise order from top/high side when looking down the trajectory.

Definition at line 22 of file RadialLogComponent.h.


The documentation for this struct was generated from the following files: