public class JointModel extends MidiModel
JointModel is used to model and infer one of each type of model simultaneously as
a set, one step at a time.| Modifier and Type | Field and Description |
|---|---|
private java.util.TreeSet<JointModelState> |
hypothesisStates
The hypothesis states at the current stage.
|
| Constructor and Description |
|---|
JointModel(VoiceSplittingModelState voice,
BeatTrackingModelState beat,
MetricalModelState hierarchy)
Create a new JointModel based on a state with the given constituent states.
|
| Modifier and Type | Method and Description |
|---|---|
void |
close()
This method is called to tell the given model that the input has finished and to flush out all
of its states.
|
java.util.List<? extends BeatTrackingModelState> |
getBeatHypotheses()
Get an ordered List of the
BeatTrackingModelStates which are currently the top hypotheses
for this joint model. |
java.util.List<? extends MetricalModelState> |
getHierarchyHypotheses()
Get an ordered List of the
MetricalModelStates which are currently the top hypotheses
for this joint model. |
java.util.TreeSet<JointModelState> |
getHypotheses()
This method returns a TreeSet of the current hypothesis states of this MidiModel.
|
java.util.List<? extends VoiceSplittingModelState> |
getVoiceHypotheses()
Get an ordered List of the
VoiceSplittingModelStates which are currently the top hypotheses
for this joint model. |
void |
handleIncoming(java.util.List<MidiNote> notes)
This method takes as input some List of MidiNotes, and then does some work on
the notes, updating its list of hypotheses in the process.
|
private java.util.TreeSet<JointModelState> hypothesisStates
public JointModel(VoiceSplittingModelState voice, BeatTrackingModelState beat, MetricalModelState hierarchy)
voice - The voice splitting state to use.beat - The beat tracking state to use.hierarchy - The hierarchy detection state to use.public void handleIncoming(java.util.List<MidiNote> notes)
MidiModelhandleIncoming in class MidiModelnotes - A List of the MidiNotes which we want to handle next.public void close()
MidiModelpublic java.util.TreeSet<JointModelState> getHypotheses()
MidiModelgetHypotheses in class MidiModelpublic java.util.List<? extends VoiceSplittingModelState> getVoiceHypotheses()
VoiceSplittingModelStates which are currently the top hypotheses
for this joint model. These may not be sorted in order by their own scores, but they are given in
order of the underlying JointModelState's scores.VoiceSplittingModelStates which are currently the top hypotheses
for this joint model.public java.util.List<? extends BeatTrackingModelState> getBeatHypotheses()
BeatTrackingModelStates which are currently the top hypotheses
for this joint model. These may not be sorted in order by their own scores, but they are given in
order of the underlying JointModelState's scores.BeatTrackingModelStates which are currently the top hypotheses
for this joint model.public java.util.List<? extends MetricalModelState> getHierarchyHypotheses()
MetricalModelStates which are currently the top hypotheses
for this joint model. These may not be sorted in order by their own scores, but they are given in
order of the underlying JointModelState's scores.MetricalModelStates which are currently the top hypotheses
for this joint model.