Change root package
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
package com.bartlomiejpluta.smnp.ext.dsp
|
||||
|
||||
import com.bartlomiejpluta.smnp.ext.dsp.function.FftFunction
|
||||
import com.bartlomiejpluta.smnp.ext.dsp.function.PlotFunction
|
||||
import com.bartlomiejpluta.smnp.ext.provider.NativeModuleProvider
|
||||
import org.pf4j.Extension
|
||||
|
||||
@Extension
|
||||
class DspModule : NativeModuleProvider("smnp.dsp") {
|
||||
override fun functions() = listOf(PlotFunction(), FftFunction())
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.bartlomiejpluta.smnp.ext.dsp.function
|
||||
|
||||
import com.bartlomiejpluta.smnp.callable.function.Function
|
||||
import com.bartlomiejpluta.smnp.callable.function.FunctionDefinitionTool
|
||||
import com.bartlomiejpluta.smnp.callable.signature.Signature.Companion.simple
|
||||
import com.bartlomiejpluta.smnp.ext.dsp.lib.fft.FourierTransform.fft
|
||||
import com.bartlomiejpluta.smnp.type.enumeration.DataType.FLOAT
|
||||
import com.bartlomiejpluta.smnp.type.enumeration.DataType.INT
|
||||
import com.bartlomiejpluta.smnp.type.matcher.Matcher.Companion.listOf
|
||||
import com.bartlomiejpluta.smnp.type.model.Value
|
||||
|
||||
class FftFunction : Function("fft") {
|
||||
override fun define(new: FunctionDefinitionTool) {
|
||||
new function simple(listOf(INT, FLOAT)) body { _, (signal) ->
|
||||
val x = (signal.unwrap() as List<Number>).map { it.toDouble() }
|
||||
Value.list(fft(x).map { Value.float(it.mod.toFloat()) })
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,16 +1,16 @@
|
||||
package io.smnp.ext.dsp.function
|
||||
package com.bartlomiejpluta.smnp.ext.dsp.function
|
||||
|
||||
import io.smnp.callable.function.Function
|
||||
import io.smnp.callable.function.FunctionDefinitionTool
|
||||
import io.smnp.callable.signature.Signature.Companion.vararg
|
||||
import io.smnp.error.CustomException
|
||||
import io.smnp.type.enumeration.DataType.*
|
||||
import io.smnp.type.matcher.Matcher.Companion.anyType
|
||||
import io.smnp.type.matcher.Matcher.Companion.listOf
|
||||
import io.smnp.type.matcher.Matcher.Companion.mapOfMatchers
|
||||
import io.smnp.type.matcher.Matcher.Companion.ofType
|
||||
import io.smnp.type.model.Value
|
||||
import io.smnp.util.config.ConfigMapSchema
|
||||
import com.bartlomiejpluta.smnp.callable.function.Function
|
||||
import com.bartlomiejpluta.smnp.callable.function.FunctionDefinitionTool
|
||||
import com.bartlomiejpluta.smnp.callable.signature.Signature.Companion.vararg
|
||||
import com.bartlomiejpluta.smnp.error.CustomException
|
||||
import com.bartlomiejpluta.smnp.type.enumeration.DataType.*
|
||||
import com.bartlomiejpluta.smnp.type.matcher.Matcher.Companion.anyType
|
||||
import com.bartlomiejpluta.smnp.type.matcher.Matcher.Companion.listOf
|
||||
import com.bartlomiejpluta.smnp.type.matcher.Matcher.Companion.mapOfMatchers
|
||||
import com.bartlomiejpluta.smnp.type.matcher.Matcher.Companion.ofType
|
||||
import com.bartlomiejpluta.smnp.type.model.Value
|
||||
import com.bartlomiejpluta.smnp.util.config.ConfigMapSchema
|
||||
import org.knowm.xchart.BitmapEncoder
|
||||
import org.knowm.xchart.BitmapEncoder.BitmapFormat
|
||||
import org.knowm.xchart.SwingWrapper
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.smnp.ext.dsp.lib.complex
|
||||
package com.bartlomiejpluta.smnp.ext.dsp.lib.complex
|
||||
|
||||
import kotlin.math.atan2
|
||||
import kotlin.math.pow
|
||||
@@ -1,6 +1,6 @@
|
||||
package io.smnp.ext.dsp.lib.fft
|
||||
package com.bartlomiejpluta.smnp.ext.dsp.lib.fft
|
||||
|
||||
import io.smnp.ext.dsp.lib.complex.Complex
|
||||
import com.bartlomiejpluta.smnp.ext.dsp.lib.complex.Complex
|
||||
import kotlin.math.abs
|
||||
import kotlin.math.ceil
|
||||
import kotlin.math.log
|
||||
@@ -1,11 +0,0 @@
|
||||
package io.smnp.ext.dsp
|
||||
|
||||
import io.smnp.ext.dsp.function.FftFunction
|
||||
import io.smnp.ext.dsp.function.PlotFunction
|
||||
import io.smnp.ext.provider.NativeModuleProvider
|
||||
import org.pf4j.Extension
|
||||
|
||||
@Extension
|
||||
class DspModule : NativeModuleProvider("smnp.dsp") {
|
||||
override fun functions() = listOf(PlotFunction(), FftFunction())
|
||||
}
|
||||
@@ -1,19 +0,0 @@
|
||||
package io.smnp.ext.dsp.function
|
||||
|
||||
import io.smnp.callable.function.Function
|
||||
import io.smnp.callable.function.FunctionDefinitionTool
|
||||
import io.smnp.callable.signature.Signature.Companion.simple
|
||||
import io.smnp.ext.dsp.lib.fft.FourierTransform.fft
|
||||
import io.smnp.type.enumeration.DataType.FLOAT
|
||||
import io.smnp.type.enumeration.DataType.INT
|
||||
import io.smnp.type.matcher.Matcher.Companion.listOf
|
||||
import io.smnp.type.model.Value
|
||||
|
||||
class FftFunction : Function("fft") {
|
||||
override fun define(new: FunctionDefinitionTool) {
|
||||
new function simple(listOf(INT, FLOAT)) body { _, (signal) ->
|
||||
val x = (signal.unwrap() as List<Number>).map { it.toDouble() }
|
||||
Value.list(fft(x).map { Value.float(it.mod.toFloat()) })
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user