jp.crestmuse.cmx.filewrappers
クラス MusicApexDataSet

java.lang.Object
  上位を拡張 jp.crestmuse.cmx.filewrappers.MusicApexDataSet

public class MusicApexDataSet
extends java.lang.Object

MusicXMLから音楽構造グルーピングを生成するためのクラスです。
インスタンスの生成にはMusicXMLWrapperを渡す必要があり、 トップレベルのグループには全てのNoteが生成されます -使い方
MusicXMLWrapper musicxml = (MusicXMLWrapper)CMXFileWrapper.readfile("./sample.xml");
MusicXMLのインスタンス化
MusicApexDataSet ads = new MusicApexDataSet(musicxml);
MusicApexDataSetにMusicXMLを渡しインスタンス化
ads.createTopLevelGroup(true);
inheritedを指定し、トップレベルグループを作成
ads.setAspect("sample-aspect");
何に着目したかを設定(任意)

ads.topgroup.makeSubgroup(notes);
トップレベルからグループを作成
〜〜

ads.toWrapper();
MusicXMLWrapper化

作成者:
R.Tokuami

コンストラクタの概要
MusicApexDataSet(MusicXMLWrapper musicxml)
          MuscXMLを元に、MusicApexDataSetオブジェクトを作成します。
 
メソッドの概要
 NoteGroup createGroup()
          どこのグループにも属さない空のApexDataGroupオブジェクトを作成します。
 NoteGroup createGroup(java.util.List<MusicXMLWrapper.Note> notes)
          どこのグループにも属さないApexDataGroupオブジェクトを作成します。
 NoteGroup createGroup(java.util.List<MusicXMLWrapper.Note> notes, MusicXMLWrapper.Note apex)
          どこのグループにも属さないApexDataGroupオブジェクトを作成します。
 NoteGroup createGroup(java.util.List<MusicXMLWrapper.Note> notes, MusicXMLWrapper.Note apex, double saliency)
          どこのグループにも属さないApexDataGroupオブジェクトを作成します。
 NoteGroup createTopLevelGroup(java.lang.Boolean inherited)
          MusicXMLに含まれるすべてのノートを含むトップレベルグループを作成します。
 NoteGroup createTopLevelGroup(java.lang.Boolean inherited, java.lang.String aspect)
          MusicXMLに含まれるすべてのノートを含むトップレベルグループを作成します。
static void main(java.lang.String[] args)
           
static void printNote(MusicXMLWrapper.Note n)
          推奨されていません。 
 void setAspect(java.lang.String aspect)
          作成するMusicApexDataSetクラスが何に着目した楽曲構造かをセットします。
 jp.crestmuse.cmx.filewrappers.MusicApexDataSet.ApexDataGroup topgroup()
          トップレベルグループのインスタンスを返します。
 MusicApexWrapper toWrapper()
          作成したDataSetからXMLを作成し、MusicApexWrapperを生成して返します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

MusicApexDataSet

public MusicApexDataSet(MusicXMLWrapper musicxml)
MuscXMLを元に、MusicApexDataSetオブジェクトを作成します。

パラメータ:
musicxml -
メソッドの詳細

createTopLevelGroup

public NoteGroup createTopLevelGroup(java.lang.Boolean inherited)
MusicXMLに含まれるすべてのノートを含むトップレベルグループを作成します。 トップレベルグループ作成の時点でinheritedなグループかどうかを指定する必要があります。 グループの頂点の音符がサブグループに含まれていたときに、 頂点であることを継承するならtrue それぞれのグループで頂点を指定するならfalse を指定してください。

パラメータ:
inherited - 親グループの頂点を子グループで継承するかどうか
戻り値:
トップレベルグループのApexDataGroupオブジェクト

createTopLevelGroup

public NoteGroup createTopLevelGroup(java.lang.Boolean inherited,
                                     java.lang.String aspect)
MusicXMLに含まれるすべてのノートを含むトップレベルグループを作成します。 inheritedとaspectを指定する必要があります。

パラメータ:
inherited -
aspect - 何に着目した構造記述か
戻り値:
トップレベルグループを示すApexDataGroupオブジェクト

createGroup

public NoteGroup createGroup()
どこのグループにも属さない空のApexDataGroupオブジェクトを作成します。

戻り値:

createGroup

public NoteGroup createGroup(java.util.List<MusicXMLWrapper.Note> notes)
どこのグループにも属さないApexDataGroupオブジェクトを作成します。

パラメータ:
notes - このグループに含まれるNoteオブジェクトのリスト
戻り値:

createGroup

public NoteGroup createGroup(java.util.List<MusicXMLWrapper.Note> notes,
                             MusicXMLWrapper.Note apex)
どこのグループにも属さないApexDataGroupオブジェクトを作成します。

パラメータ:
notes - このグループに含まれるNoteオブジェクトのリスト
apex - このグループの頂点のNote
戻り値:

createGroup

public NoteGroup createGroup(java.util.List<MusicXMLWrapper.Note> notes,
                             MusicXMLWrapper.Note apex,
                             double saliency)
どこのグループにも属さないApexDataGroupオブジェクトを作成します。

パラメータ:
notes - このグループに含まれるNoteオブジェクトのリスト
apex - このグループの頂点のNote
saliency - 頂点のNoteがどのぐらい目立っているか
戻り値:

setAspect

public void setAspect(java.lang.String aspect)
作成するMusicApexDataSetクラスが何に着目した楽曲構造かをセットします。 1つのMusiApexDataSetクラスは一つのaspectを持ちます。

パラメータ:
aspect - 着目した対象

topgroup

public jp.crestmuse.cmx.filewrappers.MusicApexDataSet.ApexDataGroup topgroup()
トップレベルグループのインスタンスを返します。

戻り値:
トップレベルのApexDataGroupオブジェクト

toWrapper

public MusicApexWrapper toWrapper()
作成したDataSetからXMLを作成し、MusicApexWrapperを生成して返します。 XMLテキスト上に出力されるグループの順番は、親グループに先に追加されたものが先に記述されます。

戻り値:
このMusicApexDataSetを元にしたMusicApexWrapperオブジェクト
例外:
java.lang.RuntimeException - トップレベルグループが作られていない、MusicXMLが指定されていない場合

main

public static void main(java.lang.String[] args)

printNote

@Deprecated
public static void printNote(MusicXMLWrapper.Note n)
推奨されていません。