Refactor/unify modules files structure

This commit is contained in:
2020-03-20 20:29:25 +01:00
parent 730d3803f0
commit 7bccb28080
50 changed files with 138 additions and 96 deletions

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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 {

View File

@@ -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)