Refactor/unify modules files structure
This commit is contained in:
@@ -1,9 +1,10 @@
|
||||
package io.smnp.ext
|
||||
package io.smnp.ext.midi
|
||||
|
||||
import io.smnp.environment.Environment
|
||||
import io.smnp.ext.function.MidiFunction
|
||||
import io.smnp.ext.function.MidiHelpFunction
|
||||
import io.smnp.ext.midi.Midi
|
||||
import io.smnp.ext.provider.NativeModuleProvider
|
||||
import io.smnp.ext.midi.function.MidiFunction
|
||||
import io.smnp.ext.midi.function.MidiHelpFunction
|
||||
import io.smnp.ext.midi.lib.midi.Midi
|
||||
import org.pf4j.Extension
|
||||
|
||||
@Extension
|
||||
@@ -1,11 +1,11 @@
|
||||
package io.smnp.ext.function
|
||||
package io.smnp.ext.midi.function
|
||||
|
||||
import io.smnp.callable.function.Function
|
||||
import io.smnp.callable.function.FunctionDefinitionTool
|
||||
import io.smnp.callable.signature.Signature.Companion.simple
|
||||
import io.smnp.callable.signature.Signature.Companion.vararg
|
||||
import io.smnp.error.CustomException
|
||||
import io.smnp.ext.midi.Midi
|
||||
import io.smnp.ext.midi.lib.midi.Midi
|
||||
import io.smnp.type.enumeration.DataType.*
|
||||
import io.smnp.type.matcher.Matcher.Companion.anyType
|
||||
import io.smnp.type.matcher.Matcher.Companion.listOf
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.smnp.ext.function
|
||||
package io.smnp.ext.midi.function
|
||||
|
||||
import io.smnp.callable.function.Function
|
||||
import io.smnp.callable.function.FunctionDefinitionTool
|
||||
@@ -6,7 +6,7 @@ import io.smnp.callable.signature.Signature.Companion.simple
|
||||
import io.smnp.data.entity.Note
|
||||
import io.smnp.data.enumeration.Pitch
|
||||
import io.smnp.error.CustomException
|
||||
import io.smnp.ext.midi.Midi
|
||||
import io.smnp.ext.midi.lib.midi.Midi
|
||||
import io.smnp.math.Fraction
|
||||
import io.smnp.type.enumeration.DataType.*
|
||||
import io.smnp.type.matcher.Matcher.Companion.ofType
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.smnp.ext.midi
|
||||
package io.smnp.ext.midi.lib.compiler
|
||||
|
||||
import io.smnp.data.entity.Note
|
||||
import javax.sound.midi.Track
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.smnp.ext.midi
|
||||
package io.smnp.ext.midi.lib.compiler
|
||||
|
||||
import io.smnp.data.entity.Note
|
||||
import javax.sound.midi.Track
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.smnp.ext.midi
|
||||
package io.smnp.ext.midi.lib.compiler
|
||||
|
||||
import io.smnp.data.entity.Note
|
||||
import io.smnp.error.EvaluationException
|
||||
@@ -91,7 +91,10 @@ abstract class SequenceCompiler {
|
||||
}
|
||||
|
||||
private fun allNotesOff(channel: Int, tick: Long): MidiEvent {
|
||||
return event(Command.CONTROL_CHANGE, channel, Data1.ALL_NOTES_OFF, Data2.ZERO, tick)
|
||||
return event(
|
||||
Command.CONTROL_CHANGE, channel,
|
||||
Data1.ALL_NOTES_OFF,
|
||||
Data2.ZERO, tick)
|
||||
}
|
||||
|
||||
private fun event(command: Int, channel: Int, data1: Int, data2: Int, tick: Long): MidiEvent {
|
||||
@@ -1,5 +1,8 @@
|
||||
package io.smnp.ext.midi
|
||||
package io.smnp.ext.midi.lib.midi
|
||||
|
||||
import io.smnp.ext.midi.lib.compiler.DefaultSequenceCompiler
|
||||
import io.smnp.ext.midi.lib.compiler.PpqSequenceCompiler
|
||||
import io.smnp.ext.midi.lib.compiler.SequenceCompiler
|
||||
import io.smnp.util.config.ConfigMap
|
||||
import java.io.File
|
||||
import javax.sound.midi.MidiSystem
|
||||
@@ -29,12 +32,17 @@ object Midi {
|
||||
}
|
||||
|
||||
fun with(config: ConfigMap): SequenceExecutor {
|
||||
return SequenceExecutor(sequencer, config)
|
||||
return SequenceExecutor(
|
||||
sequencer,
|
||||
config
|
||||
)
|
||||
}
|
||||
|
||||
class SequenceExecutor(private val sequencer: Sequencer, private val config: ConfigMap) {
|
||||
fun play(lines: List<List<Any>>) {
|
||||
val sequence = Sequence(Sequence.PPQ, config.getUnwrappedOrDefault("ppq", DEFAULT_PPQ))
|
||||
val sequence = Sequence(Sequence.PPQ, config.getUnwrappedOrDefault("ppq",
|
||||
DEFAULT_PPQ
|
||||
))
|
||||
provideCompiler(config).compileLines(lines, sequence)
|
||||
play(sequence)
|
||||
writeToFile(sequence)
|
||||
@@ -59,7 +67,9 @@ object Midi {
|
||||
}
|
||||
|
||||
fun play(channels: Map<Int, List<List<Any>>>) {
|
||||
val sequence = Sequence(Sequence.PPQ, config.getUnwrappedOrDefault("ppq", DEFAULT_PPQ))
|
||||
val sequence = Sequence(Sequence.PPQ, config.getUnwrappedOrDefault("ppq",
|
||||
DEFAULT_PPQ
|
||||
))
|
||||
provideCompiler(config).compileChannels(channels, sequence)
|
||||
play(sequence)
|
||||
writeToFile(sequence)
|
||||
Reference in New Issue
Block a user