選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

27 行
444B

  1. package demod
  2. type Demodulator interface {
  3. Name() string
  4. Demod(iq []complex64, sampleRate int) []float32
  5. OutputSampleRate() int
  6. Channels() int
  7. }
  8. var registry = map[string]Demodulator{}
  9. func Register(d Demodulator) {
  10. registry[d.Name()] = d
  11. }
  12. func Get(name string) Demodulator {
  13. return registry[name]
  14. }
  15. func Names() []string {
  16. out := make([]string, 0, len(registry))
  17. for k := range registry {
  18. out = append(out, k)
  19. }
  20. return out
  21. }