MayaFlux 0.5.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 73 of file ParticleNetwork.cpp.

74{
75 auto vertices = generate_initial_vertices();
76
77 if (m_operator) {
78 if (auto* physics = dynamic_cast<PhysicsOperator*>(m_operator.get())) {
79 physics->initialize(vertices);
80 } else if (auto* field = dynamic_cast<FieldOperator*>(m_operator.get())) {
81 field->initialize(vertices);
82 }
83 } else {
84 auto physics = std::make_unique<PhysicsOperator>();
85 physics->set_bounds(m_bounds.min, m_bounds.max);
86 physics->initialize(vertices);
87 m_operator = std::move(physics);
88 }
89
91 "Reset ParticleNetwork: {} points reinitialized", m_num_points);
92}
#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: