Class: Musa::Sequencer::Sequencer

Inherits:
Object
  • Object
show all
Extended by:
Forwardable
Defined in:
lib/musa-dsl/sequencer/sequencer-dsl.rb

Defined Under Namespace

Classes: DSLContext

Instance Method Summary collapse

Constructor Details

#initialize(beats_per_bar = nil, ticks_per_beat = nil, sequencer: nil, logger: nil, do_log: nil, do_error_log: nil, log_position_format: nil, dsl_context_class: nil, keep_block_context: nil, &block) ⇒ Sequencer

Returns a new instance of Sequencer.



26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/musa-dsl/sequencer/sequencer-dsl.rb', line 26

def initialize(beats_per_bar = nil,
               ticks_per_beat = nil,
               sequencer: nil,
               logger: nil,
               do_log: nil, do_error_log: nil, log_position_format: nil,
               dsl_context_class: nil,
               keep_block_context: nil,
               &block)

  @sequencer = sequencer
  @sequencer ||= BaseSequencer.new beats_per_bar, ticks_per_beat,
                                   logger: logger,
                                   do_log: do_log,
                                   do_error_log: do_error_log,
                                   log_position_format: log_position_format

  dsl_context_class ||= DSLContext

  @dsl = dsl_context_class.new @sequencer, keep_block_context: keep_block_context

  @dsl.with &block if block_given?
end

Instance Method Details

#with(*value_parameters, **key_parameters, &block) ⇒ Object



49
50
51
# File 'lib/musa-dsl/sequencer/sequencer-dsl.rb', line 49

def with(*value_parameters, **key_parameters, &block)
  @dsl.with(*value_parameters, **key_parameters, &block)
end