Module: Musa::Sequencer::BaseSequencer::TicklessBasedTiming
- Defined in:
- lib/musa-dsl/sequencer/base-sequencer-tickless-based.rb
Instance Attribute Summary collapse
-
#position ⇒ Object
Returns the value of attribute position.
Instance Method Summary collapse
-
#tick ⇒ Object
TODO implementar hold_public_ticks adaptado a modo tickless para permitir que una operación de asignación de TODO posición con .position = X, finalice antes de comenzar a procesar el resto de ticks en un contexto multithread.
- #tick_duration ⇒ Object
- #ticks_per_bar ⇒ Object
Instance Attribute Details
#position ⇒ Object
Returns the value of attribute position.
6 7 8 |
# File 'lib/musa-dsl/sequencer/base-sequencer-tickless-based.rb', line 6 def position @position end |
Instance Method Details
#tick ⇒ Object
TODO implementar hold_public_ticks adaptado a modo tickless para permitir que una operación de asignación de TODO posición con .position = X, finalice antes de comenzar a procesar el resto de ticks en un contexto multithread. TODO pero tiene sentido cuando el modo tickless se usa SOLO con .run? TODO tendría sentido sólo si también se usa con ticks temporizados, lo cual ocurriría si se reimplementa el modo tickbased TODO a partir del modo tickless.
22 23 24 |
# File 'lib/musa-dsl/sequencer/base-sequencer-tickless-based.rb', line 22 def tick _tick @position_mutex.synchronize { @position = @timeslots.first_after(@position) } end |
#tick_duration ⇒ Object
12 13 14 |
# File 'lib/musa-dsl/sequencer/base-sequencer-tickless-based.rb', line 12 def tick_duration 0r end |
#ticks_per_bar ⇒ Object
8 9 10 |
# File 'lib/musa-dsl/sequencer/base-sequencer-tickless-based.rb', line 8 def Float::INFINITY end |