パッケージ com.lmt.lib.bms.bemusic
クラス BeMusicContent
- Object
-
- BmsContent
-
- BeMusicContent
-
public class BeMusicContent extends BmsContent
BeMusicライブラリにおいて、1個のBMS定義を表すメインクラスです。当クラスは、押下によりON/OFFの切り替えが可能な7個のスイッチと、スクラッチにより2方向の検出が可能な入力機器を1セットまたは2セット使用する ゲームルール(BeMusic)に基づいた楽曲のBMS定義を表します。BMSライブラリで定義したBMSコンテンツを拡張することでそれらの定義をサポートします。 具体的には、以下のような拡張が行われています。
- BeMusicで定義されるメタ情報へアクセスするsetter/getter
- ノート数の統計情報収集とその情報の照会
- ノートの定義状況からプレイスタイル等の詳細情報の照会
当クラスは、BMSの実際の利用シーンからデファクトスタンダードであると判断した定義の実装を行っています。しかし、編集系の機能は当クラスでは 拡張していません。編集を行う際は、BMSライブラリが提供する低レベルAPIを経由して行ってください。
当クラスにアプリケーション固有の情報を持たせたい場合は、BMS仕様に任意型メタ情報、およびユーザーチャンネルを定義し、それらに対して アプリケーションが希望する情報を挿入してください。BMS仕様の定義は
BeMusic.initialize(int, com.lmt.lib.bms.BmsMeta[], com.lmt.lib.bms.BmsChannel[])
で行います。
-
-
ネストされたクラスの概要
-
クラスから継承されたネストされたクラス/インタフェース BmsContent
BmsContent.Creator
-
-
メソッドの概要
すべてのメソッド インスタンス・メソッド concreteメソッド 修飾子とタイプ メソッド 説明 String
getArtist()
#ARTISTを取得する。String
getBackBmp()
#BACKBMPを取得する。String
getBanner()
#BANNERを取得する。String
getBmp(int index)
#BMPxxを取得する。Map<Integer,String>
getBmps()
#BMPxxのリストを取得する。double
getBpm(int index)
#BPMxxを取得する。Map<Integer,Double>
getBpms()
#BPMxxのリストを取得する。BeMusicDifficulty
getDifficulty()
#DIFFICULTYを取得する。String
getEmail()
%EMAILを取得する。String
getGenre()
#GENREを取得する。long
getLnObj(int index)
#LNOBJを取得する。List<Long>
getLnObjs()
#LNOBJのリストを取得する。BeMusicPlayer
getPlayer()
#PLAYERを取得する。double
getPlayLevel()
#PLAYLEVELを取得する。BeMusicRank
getRank()
#RANKを取得する。String
getStageFile()
#STAGEFILEを取得する。long
getStop(int index)
#STOPxxを取得する。Map<Integer,Long>
getStops()
#STOPxxのリストを取得する。String
getSubArtist(int index)
#SUBARTISTを取得する。List<String>
getSubArtists()
#SUBARTISTのリストを取得する。String
getSubTitle()
#SUBTITLEを取得する。String
getTitle()
#TITLEを取得する。long
getTotal()
#TOTALを取得する。String
getUrl()
%URLを取得する。long
getVisibleNoteCount(int which)
可視オブジェのノート数を取得する。String
getWav(int index)
#WAVxxを取得する。Map<Integer,String>
getWavs()
#WAVxxのリストを取得する。boolean
isBgaUsed()
BGAが使用されているかどうかを取得します。boolean
isDoublePlay()
ダブルプレイの譜面かどうかを取得します。boolean
isLegacyUsed()
旧式の定義を使用しているかどうかを取得します。boolean
isLongNoteUsed()
可視オブジェにロングノートが含まれるかどうかを取得します。boolean
isMinorUsed()
マイナーな定義を使用しているかどうかを取得します。boolean
isSinglePlay()
シングルプレイの譜面かどうかを取得します。boolean
isUnrecommendUsed()
非推奨の定義を使用しているかどうかを取得します。protected void
onEndEdit(boolean isRecalculateTime)
BmsContent.endEdit()
が呼ばれ、動作モードが参照モードに遷移した時に呼ばれます。void
setArtist(String artist)
#ARTISTを設定する。void
setBackBmp(String backBmp)
#BACKBMPを設定する。void
setBanner(String banner)
#BANNERを設定する。void
setBmp(int index, String bmp)
#BMPxxを設定する。void
setBpm(int index, Double bpm)
#BPMxxを設定する。void
setDifficulty(BeMusicDifficulty difficulty)
#DIFFICULTYを設定する。void
setEmail(String email)
%EMAILを設定する。void
setGenre(String genre)
#GENREを設定する。void
setLnObj(int index, Long lnObj)
#LNOBJを設定する。void
setPlayer(BeMusicPlayer player)
#PLAYERを設定する。void
setPlayLevel(Double playLevel)
#PLAYLEVELを設定する。void
setRank(BeMusicRank rank)
#RANKを設定する。void
setStageFile(String stageFile)
#STAGEFILEを設定する。void
setStop(int index, Long stop)
#STOPxxを設定する。void
setSubArtist(int index, String subArtist)
#SUBARTISTを設定する。void
setSubTitle(String subTitle)
#SUBTITLEを設定する。void
setTitle(String title)
#TITLEを設定する。void
setTotal(Long total)
#TOTALを設定する。void
setUrl(String url)
%URLを設定する。void
setWav(int index, String wav)
#WAVxxを設定する。-
クラスから継承されたメソッド BmsContent
addDeclaration, assertIsEditMode, assertIsReferenceMode, beginEdit, containsDeclaration, containsIndexedMeta, containsMeasureValue, containsMeasureValue, containsMeta, containsMeta, containsMeta, containsMeta, containsMultipleMeta, containsSingleMeta, countNotes, countNotes, countNotes, countNotes, countNotes, countNotes, countNotes, endEdit, enumNotes, enumNotes, enumNotes, enumNotes, enumNotes, enumNotes, enumNotes, generateHash, getChangeBpmCount, getChannelDataCount, getDeclaration, getDeclarations, getEncoding, getIndexedMeta, getIndexedMetaCount, getIndexedMetas, getInitialBpm, getMaxBpm, getMeasureCount, getMeasureTickCount, getMeasureValue, getMeasureValue, getMeta, getMeta, getMeta, getMetaCount, getMetaCount, getMinBpm, getMultipleMeta, getMultipleMetaCount, getMultipleMetas, getNextNote, getNextNote, getNextNote, getNextNote, getNote, getNote, getNote, getNote, getPreviousNote, getPreviousNote, getPreviousNote, getPreviousNote, getResolvedNoteValue, getResolvedNoteValue, getResolvedNoteValue, getResolvedNoteValue, getResolvedNoteValue, getSingleMeta, getSingleMetaCount, getSpec, getStopCount, insertMeasure, insertMeasure, isEditMode, isReferenceMode, listNotes, listNotes, listNotes, listNotes, listNotes, listNotes, listNotes, onBeginEdit, pointOf, pointOf, pointToTime, pointToTime, putMultipleMeta, putNote, putNote, putNote, putNote, putNote, putNote, putNote, putNote, removeDeclaration, removeMeasure, removeMeasure, removeNote, removeNote, removeNote, removeNote, removeNote, removeNote, removeNote, seekNextPoint, seekNextPoint, seekNextPoint, seekNextPoint, seekPoint, seekPoint, setIndexedMeta, setInitialBpm, setMeasureValue, setMeasureValue, setMeta, setMeta, setMeta, setMultipleMeta, setSingleMeta, swapChannel, swapChannel, timeToPoint
-
-
-
-
メソッドの詳細
-
setGenre
public final void setGenre(String genre)
#GENREを設定する。- パラメータ:
genre
- #GENREの値- 関連項目:
BeMusicMeta.GENRE
-
getGenre
public final String getGenre()
#GENREを取得する。- 戻り値:
- #GENREの値
- 関連項目:
BeMusicMeta.GENRE
-
setTitle
public final void setTitle(String title)
#TITLEを設定する。- パラメータ:
title
- #TITLEの値- 関連項目:
BeMusicMeta.TITLE
-
getTitle
public final String getTitle()
#TITLEを取得する。- 戻り値:
- #TITLEの値
- 関連項目:
BeMusicMeta.TITLE
-
setSubTitle
public final void setSubTitle(String subTitle)
#SUBTITLEを設定する。- パラメータ:
subTitle
- #SUBTITLEの値- 関連項目:
BeMusicMeta.SUBTITLE
-
getSubTitle
public final String getSubTitle()
#SUBTITLEを取得する。- 戻り値:
- #SUBTITLEの値
- 関連項目:
BeMusicMeta.SUBTITLE
-
setArtist
public final void setArtist(String artist)
#ARTISTを設定する。- パラメータ:
artist
- #ARTISTの値- 関連項目:
BeMusicMeta.ARTIST
-
getArtist
public final String getArtist()
#ARTISTを取得する。- 戻り値:
- #ARTISTの値
- 関連項目:
BeMusicMeta.ARTIST
-
setSubArtist
public final void setSubArtist(int index, String subArtist)
#SUBARTISTを設定する。- パラメータ:
index
- インデックスsubArtist
- #SUBARTISTの値- 関連項目:
BeMusicMeta.SUBARTIST
-
getSubArtists
public final List<String> getSubArtists()
#SUBARTISTのリストを取得する。- 戻り値:
- #SUBARTISTのリスト
- 関連項目:
BeMusicMeta.SUBARTIST
-
getSubArtist
public final String getSubArtist(int index)
#SUBARTISTを取得する。- パラメータ:
index
- インデックス- 戻り値:
- #SUBARTISTの値
- 関連項目:
BeMusicMeta.SUBARTIST
-
setPlayer
public final void setPlayer(BeMusicPlayer player)
#PLAYERを設定する。- パラメータ:
player
- #PLAYERの値- 関連項目:
BeMusicPlayer
,BeMusicMeta.PLAYER
-
getPlayer
public final BeMusicPlayer getPlayer()
#PLAYERを取得する。- 戻り値:
- #PLAYERの値
- 関連項目:
BeMusicPlayer
,BeMusicMeta.PLAYER
-
setRank
public final void setRank(BeMusicRank rank)
#RANKを設定する。- パラメータ:
rank
- #RANKの値- 関連項目:
BeMusicRank
,BeMusicMeta.RANK
-
getRank
public final BeMusicRank getRank()
#RANKを取得する。- 戻り値:
- #RANKの値
- 関連項目:
BeMusicRank
,BeMusicMeta.RANK
-
setTotal
public final void setTotal(Long total)
#TOTALを設定する。- パラメータ:
total
- #TOTALの値- 関連項目:
BeMusicMeta.TOTAL
-
getTotal
public final long getTotal()
#TOTALを取得する。- 戻り値:
- #TOTALの値
- 関連項目:
BeMusicMeta.TOTAL
-
setStageFile
public final void setStageFile(String stageFile)
#STAGEFILEを設定する。- パラメータ:
stageFile
- #STAGEFILEの値- 関連項目:
BeMusicMeta.STAGEFILE
-
getStageFile
public final String getStageFile()
#STAGEFILEを取得する。- 戻り値:
- #STAGEFILEの値
- 関連項目:
BeMusicMeta.STAGEFILE
-
setBanner
public final void setBanner(String banner)
#BANNERを設定する。- パラメータ:
banner
- #BANNERの値- 関連項目:
BeMusicMeta.BANNER
-
getBanner
public final String getBanner()
#BANNERを取得する。- 戻り値:
- #BANNERの値
- 関連項目:
BeMusicMeta.BANNER
-
setBackBmp
public final void setBackBmp(String backBmp)
#BACKBMPを設定する。- パラメータ:
backBmp
- #BACKBMPの値- 関連項目:
BeMusicMeta.BACKBMP
-
getBackBmp
public final String getBackBmp()
#BACKBMPを取得する。- 戻り値:
- #BACKBMPの値
- 関連項目:
BeMusicMeta.BACKBMP
-
setPlayLevel
public final void setPlayLevel(Double playLevel)
#PLAYLEVELを設定する。- パラメータ:
playLevel
- #PLAYLEVELの値- 関連項目:
BeMusicMeta.PLAYLEVEL
-
getPlayLevel
public final double getPlayLevel()
#PLAYLEVELを取得する。- 戻り値:
- #PLAYLEVELの値
- 関連項目:
BeMusicMeta.PLAYLEVEL
-
setDifficulty
public final void setDifficulty(BeMusicDifficulty difficulty)
#DIFFICULTYを設定する。- パラメータ:
difficulty
- #DIFFICULTYの値- 関連項目:
BeMusicDifficulty
,BeMusicMeta.DIFFICULTY
-
getDifficulty
public final BeMusicDifficulty getDifficulty()
#DIFFICULTYを取得する。- 戻り値:
- #DIFFICULTYの値
- 関連項目:
BeMusicMeta.DIFFICULTY
-
setLnObj
public final void setLnObj(int index, Long lnObj)
#LNOBJを設定する。- パラメータ:
index
- インデックスlnObj
- #LNOBJの値- 例外:
IndexOutOfBoundsException
- indexが0~BmsSpec.MULTIPLE_META_INDEX_MAXの範囲外- 関連項目:
BeMusicMeta.LNOBJ
-
getLnObjs
public final List<Long> getLnObjs()
#LNOBJのリストを取得する。- 戻り値:
- #LNOBJのリスト
- 関連項目:
BeMusicMeta.LNOBJ
-
getLnObj
public final long getLnObj(int index)
#LNOBJを取得する。- パラメータ:
index
- インデックス- 戻り値:
- #LNOBJの値
- 例外:
IndexOutOfBoundsException
- indexが0~BmsSpec.MULTIPLE_META_INDEX_MAXの範囲外- 関連項目:
BeMusicMeta.LNOBJ
-
setUrl
public final void setUrl(String url)
%URLを設定する。- パラメータ:
url
- %URLの値- 関連項目:
BeMusicMeta.URL
-
getUrl
public final String getUrl()
%URLを取得する。- 戻り値:
- %URLの値
- 関連項目:
BeMusicMeta.URL
-
setEmail
public final void setEmail(String email)
%EMAILを設定する。- パラメータ:
email
- %EMAILの値- 関連項目:
BeMusicMeta.EMAIL
-
getEmail
public final String getEmail()
%EMAILを取得する。- 戻り値:
- %EMAILの値
- 関連項目:
BeMusicMeta.EMAIL
-
setBpm
public final void setBpm(int index, Double bpm)
#BPMxxを設定する。- パラメータ:
index
- インデックスbpm
- #BPMxxの値- 例外:
IndexOutOfBoundsException
- indexが0~BmsSpec.INDEXED_META_INDEX_MAXの範囲外- 関連項目:
BeMusicMeta.BPM
-
getBpm
public final double getBpm(int index)
#BPMxxを取得する。- パラメータ:
index
- インデックス- 戻り値:
- #BPMxxの値
- 例外:
IndexOutOfBoundsException
- indexが0~BmsSpec.INDEXED_META_INDEX_MAXの範囲外- 関連項目:
BeMusicMeta.BPM
-
getBpms
public final Map<Integer,Double> getBpms()
#BPMxxのリストを取得する。- 戻り値:
- #BPMxxのリスト
- 関連項目:
BeMusicMeta.BPM
-
setStop
public final void setStop(int index, Long stop)
#STOPxxを設定する。- パラメータ:
index
- インデックスstop
- #STOPの値- 例外:
IndexOutOfBoundsException
- indexが0~BmsSpec.INDEXED_META_INDEX_MAXの範囲外- 関連項目:
BeMusicMeta.STOP
-
getStop
public final long getStop(int index)
#STOPxxを取得する。- パラメータ:
index
- インデックス- 戻り値:
- #STOPの値
- 例外:
IndexOutOfBoundsException
- indexが0~BmsSpec.INDEXED_META_INDEX_MAXの範囲外- 関連項目:
BeMusicMeta.STOP
-
getStops
public final Map<Integer,Long> getStops()
#STOPxxのリストを取得する。- 戻り値:
- #STOPxxのリスト
- 関連項目:
BeMusicMeta.STOP
-
setWav
public final void setWav(int index, String wav)
#WAVxxを設定する。- パラメータ:
index
- インデックスwav
- #WAVの値- 例外:
IndexOutOfBoundsException
- indexが0~BmsSpec.INDEXED_META_INDEX_MAXの範囲外- 関連項目:
BeMusicMeta.WAV
-
getWav
public final String getWav(int index)
#WAVxxを取得する。- パラメータ:
index
- インデックス- 戻り値:
- #WAVの値
- 例外:
IndexOutOfBoundsException
- indexが0~BmsSpec.INDEXED_META_INDEX_MAXの範囲外- 関連項目:
BeMusicMeta.WAV
-
getWavs
public final Map<Integer,String> getWavs()
#WAVxxのリストを取得する。- 戻り値:
- #WAVxxのリスト
- 関連項目:
BeMusicMeta.WAV
-
setBmp
public final void setBmp(int index, String bmp)
#BMPxxを設定する。- パラメータ:
index
- インデックスbmp
- #BMPxxの値- 例外:
IndexOutOfBoundsException
- indexが0~BmsSpec.INDEXED_META_INDEX_MAXの範囲外- 関連項目:
BeMusicMeta.BMP
-
getBmp
public final String getBmp(int index)
#BMPxxを取得する。- パラメータ:
index
- インデックス- 戻り値:
- #BMPxxの値
- 関連項目:
BeMusicMeta.BMP
-
getBmps
public final Map<Integer,String> getBmps()
#BMPxxのリストを取得する。- 戻り値:
- #BMPxxのリスト
- 関連項目:
BeMusicMeta.BMP
-
getVisibleNoteCount
public final long getVisibleNoteCount(int which)
可視オブジェのノート数を取得する。- パラメータ:
which
- 可視オブジェの種類- 戻り値:
- 可視オブジェのノート数
- 関連項目:
BeMusic.KEY1
,BeMusic.KEY2
,BeMusic.KEY3
,BeMusic.KEY4
,BeMusic.KEY5
,BeMusic.KEY6
,BeMusic.KEY7
,BeMusic.SCRATCH1
,BeMusic.KEY8
,BeMusic.KEY9
,BeMusic.KEY10
,BeMusic.KEY11
,BeMusic.KEY12
,BeMusic.KEY13
,BeMusic.KEY14
,BeMusic.SCRATCH2
,BeMusic.KEY1_LN
,BeMusic.KEY2_LN
,BeMusic.KEY3_LN
,BeMusic.KEY4_LN
,BeMusic.KEY5_LN
,BeMusic.KEY6_LN
,BeMusic.KEY7_LN
,BeMusic.SCRATCH1_LN
,BeMusic.KEY8_LN
,BeMusic.KEY9_LN
,BeMusic.KEY10_LN
,BeMusic.KEY11_LN
,BeMusic.KEY12_LN
,BeMusic.KEY13_LN
,BeMusic.KEY14_LN
,BeMusic.SCRATCH2_LN
,BeMusic.TOTAL_NOTES
-
isSinglePlay
public final boolean isSinglePlay()
シングルプレイの譜面かどうかを取得します。- 戻り値:
- シングルプレイの場合true
-
isDoublePlay
public final boolean isDoublePlay()
ダブルプレイの譜面かどうかを取得します。- 戻り値:
- ダブルプレイの場合true
-
isLongNoteUsed
public final boolean isLongNoteUsed()
可視オブジェにロングノートが含まれるかどうかを取得します。- 戻り値:
- 可視オブジェにロングノートが含まれる場合true
-
isBgaUsed
public final boolean isBgaUsed()
BGAが使用されているかどうかを取得します。- 戻り値:
- BGAが使用されている場合true
-
isMinorUsed
public final boolean isMinorUsed()
マイナーな定義を使用しているかどうかを取得します。- 戻り値:
- マイナーな定義を使用している場合true
-
isLegacyUsed
public final boolean isLegacyUsed()
旧式の定義を使用しているかどうかを取得します。- 戻り値:
- 旧式の定義を使用している場合true
-
isUnrecommendUsed
public final boolean isUnrecommendUsed()
非推奨の定義を使用しているかどうかを取得します。- 戻り値:
- 非推奨の定義を使用している場合true
-
onEndEdit
protected void onEndEdit(boolean isRecalculateTime)
BmsContent.endEdit()
が呼ばれ、動作モードが参照モードに遷移した時に呼ばれます。当メソッドは、参照モードに遷移した時、継承先のクラスにて特別な処理を行う場合のトリガとして使用することを想定しています。当メソッドが 呼ばれるのは、小節ごとの時間とBPMに関する情報の再計算が完了した後です。
当メソッドの実行中は動作モードを変更出来ません。
BmsContent.beginEdit()
,BmsContent.endEdit()
を呼び出しても何も起こりません。- オーバーライド:
onEndEdit
クラス内BmsContent
- パラメータ:
isRecalculateTime
- 時間の再計算が発生したかどうか。
-
-