MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ reset()

void MayaFlux::Nodes::Network::ParticleNetwork::reset ( )
overridevirtual

Reset network to initial state.

Override to implement network-specific reset logic:

  • Clear particle velocities
  • Reset modal phases
  • Rebuild topology

Reimplemented from MayaFlux::Nodes::Network::NodeNetwork.

Definition at line 72 of file ParticleNetwork.cpp.

73{
74 auto vertices = generate_initial_vertices();
75
76 if (m_operator) {
77 if (auto* physics = dynamic_cast<PhysicsOperator*>(m_operator.get())) {
78 physics->initialize(vertices);
79 } else if (auto* field = dynamic_cast<FieldOperator*>(m_operator.get())) {
80 field->initialize(vertices);
81 }
82 } else {
83 auto physics = std::make_unique<PhysicsOperator>();
84 physics->set_bounds(m_bounds.min, m_bounds.max);
85 physics->initialize(vertices);
86 m_operator = std::move(physics);
87 }
88
90 "Reset ParticleNetwork: {} points reinitialized", m_num_points);
91}
#define MF_DEBUG(comp, ctx,...)
std::vector< PointVertex > generate_initial_vertices()
std::unique_ptr< NetworkOperator > m_operator
@ NodeProcessing
Node graph processing (Nodes::NodeGraphManager)
@ Nodes
DSP Generator and Filter Nodes, graph pipeline, node management.

References generate_initial_vertices(), m_bounds, m_num_points, m_operator, MayaFlux::Kinesis::SamplerBounds::max, MF_DEBUG, MayaFlux::Kinesis::SamplerBounds::min, MayaFlux::Journal::NodeProcessing, and MayaFlux::Journal::Nodes.

Referenced by reinitialize().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: