クラス BmsNote
- Object
-
- BmsAddress
-
- BmsTimelineElement
-
- BmsNote
-
- すべての実装されたインタフェース:
BmsAt
,BmsChx
,Comparable<BmsAddress>
public class BmsNote extends BmsTimelineElement
タイムライン要素の一つであるノートの情報を表します。情報には、アドレス、およびノートが示す値の2つが存在します。当クラスの情報は変更不可であり、 BMSライブラリの外部から情報の変更が加えられることを想定していません。
- 関連項目:
BmsTimelineElement
-
-
コンストラクタの概要
コンストラクタ コンストラクタ 説明 BmsNote()
ノートオブジェクトを新しく構築します。
-
メソッドの概要
すべてのメソッド インスタンス・メソッド concreteメソッド 修飾子とタイプ メソッド 説明 int
getValue()
ノートに割り当てられた値を取得します。double
getValueAsDouble()
ノートに割り当てられた値をdouble型にキャストして取得します。long
getValueAsLong()
ノートに割り当てられた値をlong型にキャストして取得します。Object
getValueAsObject()
ノートに割り当てられた値をObject型にキャストして取得します。String
getValueAsString()
ノートに割り当てられた値の文字列表現を取得します。boolean
isNoteElement()
タイムライン要素がノートであるかどうかを判定します。BmsNote
newNote(int channel, int index, int measure, double tick, int value)
このオブジェクトと同じ型のノートオブジェクトを構築し、指定したCHX・楽曲位置・値を設定します。BmsNote
newNote(BmsAddress address, int value)
このオブジェクトと同じ型のノートオブジェクトを構築し、指定したアドレス・値を設定します。protected void
onCreate()
BMSコンテンツにノートが登録される時、またはノートの移動・コピーなどが発生した時に呼び出されます。protected BmsNote
onNewInstance()
このオブジェクトと同等の新しいノートオブジェクトのインスタンスを生成します。String
toString()
チャンネル番号、インデックス、小節番号、刻み位置、値が分かる形式の文字列を返します。-
クラスから継承されたメソッド BmsTimelineElement
getValueAsArray, isMeasureLineElement, isMeasureValueElement
-
クラスから継承されたメソッド BmsAddress
compare, compareTo, equals, equals, getChannel, getIndex, getMeasure, getTick, hashCode, hashCode, of, of, of
-
インタフェースから継承されたメソッド BmsAt
onMeasureLine
-
インタフェースから継承されたメソッド BmsChx
isMeasureLineChannel, isSpecChannel, isUserChannel
-
-
-
-
コンストラクタの詳細
-
BmsNote
public BmsNote()
ノートオブジェクトを新しく構築します。標準のノートオブジェクトでは、ノートの値・チャンネル番号・チャンネルインデックス・小節番号・小節内の刻み位置を 保有します。これらの情報は
BmsContent
からのみ設定されることを想定しており、BMSライブラリの外部から値を 更新するためのインターフェイスは用意されていません。ただし、クラスを拡張してノートオブジェクトに付加的な情報 を挿入することは可能です。ノートオブジェクトを構築しただけでは
onCreate()
は呼び出されません。
-
-
メソッドの詳細
-
toString
public String toString()
チャンネル番号、インデックス、小節番号、刻み位置、値が分かる形式の文字列を返します。- オーバーライド:
toString
クラス内BmsAddress
- 戻り値:
- チャンネル番号、インデックス、小節番号、刻み位置、値が分かる形式の文字列
-
getValue
public final int getValue()
ノートに割り当てられた値を取得します。ノートの値は
BmsSpec.VALUE_MIN
~BmsSpec.VALUE_MAX
の範囲の値を示しますが、0を示すことはありません。- 戻り値:
- ノートの値
-
getValueAsLong
public long getValueAsLong()
ノートに割り当てられた値をlong型にキャストして取得します。ノートに割り当てられた値を参照する際は可能であれば
getValue()
を使用することを推奨します。- オーバーライド:
getValueAsLong
クラス内BmsTimelineElement
- 戻り値:
- ノートに割り当てられた値
-
getValueAsDouble
public double getValueAsDouble()
ノートに割り当てられた値をdouble型にキャストして取得します。ノートに割り当てられた値を参照する際は可能であれば
getValue()
を使用することを推奨します。- オーバーライド:
getValueAsDouble
クラス内BmsTimelineElement
- 戻り値:
- ノートに割り当てられた値
-
getValueAsString
public String getValueAsString()
ノートに割り当てられた値の文字列表現を取得します。- オーバーライド:
getValueAsString
クラス内BmsTimelineElement
- 戻り値:
- ノートに割り当てられた値の文字列表現
-
getValueAsObject
public Object getValueAsObject()
ノートに割り当てられた値をObject型にキャストして取得します。返されるオブジェクトの実体はInteger型のノートに割り当てられた値です。ノートに割り当てられた値を参照する際は 可能であれば
getValue()
を使用することを推奨します。- オーバーライド:
getValueAsObject
クラス内BmsTimelineElement
- 戻り値:
- ノートに割り当てられた値
-
isNoteElement
public boolean isNoteElement()
タイムライン要素がノートであるかどうかを判定します。- オーバーライド:
isNoteElement
クラス内BmsTimelineElement
- 戻り値:
- タイムライン要素がノートの場合true
-
newNote
public final BmsNote newNote(BmsAddress address, int value)
このオブジェクトと同じ型のノートオブジェクトを構築し、指定したアドレス・値を設定します。厳密には
onNewInstance()
を呼び出して新しいノートオブジェクトを構築し、 そのオブジェクトに対して入力引数のデータを設定して返します。構築の際、入力引数の内容は検証されません。- パラメータ:
address
- アドレスvalue
- ノートの値- 戻り値:
- 入力引数の各情報を設定した新しいノートオブジェクト
- 例外:
NullPointerException
- addressがnull
-
newNote
public final BmsNote newNote(int channel, int index, int measure, double tick, int value)
このオブジェクトと同じ型のノートオブジェクトを構築し、指定したCHX・楽曲位置・値を設定します。厳密には
onNewInstance()
を呼び出して新しいノートオブジェクトを構築し、 そのオブジェクトに対して入力引数のデータを設定して返します。構築の際、入力引数の内容は検証されません。- パラメータ:
channel
- チャンネル番号index
- チャンネルインデックスmeasure
- 小節番号tick
- 小節の刻み位置value
- ノートの値- 戻り値:
- 入力引数の各情報を設定した新しいノートオブジェクト
-
onNewInstance
protected BmsNote onNewInstance()
このオブジェクトと同等の新しいノートオブジェクトのインスタンスを生成します。当メソッドはノートの移動・コピーが発生した時に内部処理が呼び出します。当クラスを継承したノートオブジェクトは 当メソッドをオーバーライドし、継承先クラスのインスタンスを生成するように実装するべきです。デフォルトの実装では
BmsNote
のインスタンスが返されるようになっています。継承先クラスが当メソッドを実装しない場合、 ノートの移動・コピー時に継承先クラスが持つ付加情報が失われることになります。- 戻り値:
- 新しいインスタンスのノートオブジェクト
-
onCreate
protected void onCreate()
BMSコンテンツにノートが登録される時、またはノートの移動・コピーなどが発生した時に呼び出されます。当メソッドは、
BmsNote
のデフォルト実装では何も行われません。当メソッドは、ノートオブジェクト登録時に拡張データを含んだカスタムノートオブジェクト(BmsNoteを継承したクラス) を生成する目的で使用することを想定しています。ノートオブジェクト生成時、拡張データ生成のために一度だけ呼び出したい 処理がある場合に当メソッドをオーバーライドし、処理を記述してください。
-
-