Custom Object
Customize timbre.js
Description
自作のオブジェクトの作り方について解説します。
標準の T オブジェクトもすべて同じように書かれているので、詳しくはソースコードを参照してください。
以下の例は入力値を 2乗して出力する (line:16) カスタムオブジェクトです。
Util functions
timbre.Object.call(this, channels, _args)(line:5)- インスタンスを T オブジェクト として初期化します
timbre.fn.extend(CustomObject)(line:7)- T オブジェクトクラス を継承します
CustomObject.prototype.process = function(tickID)(line:9)- 処理で呼ばれる関数です. 処理を行って
this.cellを返します
- 処理で呼ばれる関数です. 処理を行って
timbre.fn.register("custom-object", CustomObject)(line:26)- クラスを登録する
timbre.fn.inputSignalAR(this)(line:13)- 入力オブジェクトの値を取得します (
this.cellを初期化して入力オブジェクトの値を加算します )
- 入力オブジェクトの値を取得します (
timbre.fn.outputSignalAR(this)(line:21)- 出力値を調整します ( output * mul + add します )
tickID
通番をチェックすることで、ひとつのオブジェクトが複数のオブジェクトに入力されているときに起こる 二重処理を防止しています。
Private members
歴史的な理由で this._ 以下に設置しています。
StereoObject
ステレオ対応のオブジェクトを生成するには、timbre.Object.call の 2番目の引数を 2 にします。
Properties
set(), get() で扱えるプロパティを作成するときは defineProperties します。