|
MayaFlux 0.2.0
Digital-First Multimedia Processing Framework
|
#include <TopologyOperator.hpp>
Inheritance diagram for MayaFlux::Nodes::Network::TopologyOperator:
Collaboration diagram for MayaFlux::Nodes::Network::TopologyOperator:Public Member Functions | |
| TopologyOperator (Kinesis::ProximityMode mode=Kinesis::ProximityMode::K_NEAREST) | |
| void | initialize (const std::vector< LineVertex > &vertices) |
| Initialize a single topology with single set of vertices. | |
| void | initialize_topologies (const std::vector< std::vector< LineVertex > > &topologies, Kinesis::ProximityMode mode) |
| Initialize multiple topologies with given positions and properties. | |
| void | add_topology (const std::vector< LineVertex > &vertices, Kinesis::ProximityMode mode) |
| Add a single topology with full per-vertex control. | |
| void | process (float dt) override |
| Process for one batch cycle. | |
| std::span< const uint8_t > | get_vertex_data () const override |
| Get vertex data for GPU upload. | |
| std::span< const uint8_t > | get_vertex_data_for_collection (uint32_t idx) const override |
| Get vertex data for specific collection (if multiple) | |
| Kakshya::VertexLayout | get_vertex_layout () const override |
| Get vertex layout describing vertex structure. | |
| size_t | get_vertex_count () const override |
| Get number of vertices (may differ from point count for topology/path) | |
| bool | is_vertex_data_dirty () const override |
| Check if geometry changed this frame. | |
| void | mark_vertex_data_clean () override |
| Clear dirty flag after GPU upload. | |
| std::vector< LineVertex > | extract_vertices () const |
| Extract current vertex data as LineVertex array. | |
| void | set_parameter (std::string_view param, double value) override |
| Set operator parameter. | |
| std::optional< double > | query_state (std::string_view query) const override |
| Query operator internal state. | |
| std::string_view | get_type_name () const override |
| Type name for introspection. | |
| size_t | get_point_count () const override |
| Get source point count (before topology expansion) | |
| void | set_connection_radius (float radius) |
| Set the connection radius for topology generation. | |
| void | set_global_line_thickness (float thickness) |
| Set the number of neighbors (k) for K-Nearest topology mode. | |
| void | set_global_line_color (const glm::vec3 &color) |
| Set the line color for all topologies. | |
| size_t | get_topology_count () const |
| Get number of topologies currently stored. | |
| const char * | get_vertex_type_name () const override |
| Get human-readable vertex type name (for validation/debugging) | |
Public Member Functions inherited from MayaFlux::Nodes::Network::GraphicsOperator | |
| void | apply_one_to_one (std::string_view param, const std::shared_ptr< NodeNetwork > &source) override |
| Apply ONE_TO_ONE parameter mapping. | |
Public Member Functions inherited from MayaFlux::Nodes::Network::NetworkOperator | |
| virtual | ~NetworkOperator ()=default |
Protected Member Functions | |
| void * | get_data_at (size_t global_index) override |
| Get mutable access to point at global index. | |
Private Attributes | |
| std::vector< std::shared_ptr< GpuSync::TopologyGeneratorNode > > | m_topologies |
| std::vector< uint8_t > | m_vertex_data_aggregate |
| Kinesis::ProximityMode | m_default_mode |
| float | m_default_thickness { 2.0F } |
Definition at line 7 of file TopologyOperator.hpp.