VGM playback library for Common Lisp
修订版 | 7411c8cb96fe2eb8892253cd43d4b7cd712e4d84 (tree) |
---|---|
时间 | 2023-06-15 04:49:37 |
作者 | ![]() |
Commiter | Remilia Scarlet |
Export some VGM-PLAYER-SETTINGS methods. Add VGM-PLAYER-SETTINGS-DUP.
@@ -188,7 +188,14 @@ | ||
188 | 188 | #:vgm-player-volume-modifier |
189 | 189 | #:vgm-player-playing-p |
190 | 190 | #:calc-resampling-values |
191 | - #:calc-resampling-values*)) | |
191 | + #:calc-resampling-values* | |
192 | + | |
193 | + ;; vgm-player-settings.lisp | |
194 | + #:settings-sample-rate | |
195 | + #:settings-dmg-boost-wave-chan-p | |
196 | + #:settings-ym2151-core | |
197 | + #:settings-huc6280-core | |
198 | + #:vgm-player-settings-dup)) | |
192 | 199 | |
193 | 200 | (defpackage :satou-chips |
194 | 201 | (:use :common-lisp :cl-sdm :satou) |
@@ -21,6 +21,8 @@ | ||
21 | 21 | (deftype t/ym2151-core () |
22 | 22 | '(member :mame)) |
23 | 23 | |
24 | +(defgeneric vgm-player-settings-dup (settings)) | |
25 | + | |
24 | 26 | (defclass vgm-player-settings () |
25 | 27 | ((sample-rate |
26 | 28 | :initarg :sample-rate |
@@ -74,3 +76,9 @@ | ||
74 | 76 | |
75 | 77 | (defmethod (setf settings-huc6280-core) :before (value (object vgm-player-settings)) |
76 | 78 | (check-type value satou-chips:t/huc6280-core)) |
79 | + | |
80 | +(defmethod vgm-player-settings-dup ((settings vgm-player-settings)) | |
81 | + (make-instance 'vgm-player-settings :sample-rate (settings-sample-rate settings) | |
82 | + :dmg-boost-wave-chan (settings-dmg-boost-wave-chan-p settings) | |
83 | + :ym2151-core (settings-ym2151-core settings) | |
84 | + :huc6280-core (settings-huc6280-core settings))) |