at.ofai.music.beatroot
public class AgentList extends Object
Field Summary | |
---|---|
Agent | ag A beat tracking Agent |
static int | count The length of the list (number of beat tracking Agents) |
static boolean | debug Flag for printing debugging output. |
static double | DEFAULT_BI For the purpose of removing duplicate agents, the default JND of IBI |
static double | DEFAULT_BT For the purpose of removing duplicate agents, the default JND of phase |
AgentList | next The remainder of the linked list |
static double | thresholdBI For the purpose of removing duplicate agents, the JND of IBI.
|
static double | thresholdBT For the purpose of removing duplicate agents, the JND of phase.
|
static boolean | useAverageSalience Flag for choice between sum and average beat salience values for Agent scores.
|
Constructor Summary | |
---|---|
AgentList() Default constructor | |
AgentList(Agent a, AgentList al) Constructor for an AgentList: the Agent a is prepended to the list al. |
Method Summary | |
---|---|
void | add(Agent a) Inserts newAgent into the list in ascending order of beatInterval |
void | add(Agent newAgent, boolean sort) Appends newAgent to list (sort==false), or inserts newAgent into the list
in ascending order of beatInterval |
void | beatTrack(EventList el) Perform beat tracking on a list of events (onsets). |
void | beatTrack(EventList el, double stop) Perform beat tracking on a list of events (onsets). |
Agent | bestAgent() Finds the Agent with the highest score in the list. |
void | print() Deep print of AgentList for debugging |
void | remove(AgentList ptr) Removes the current item from the list.
|
protected void | removeDuplicates() Removes Agents from the list which are duplicates of other Agents.
|
void | sort() Sorts the AgentList by increasing beatInterval, using a bubble sort
since it is assumed that the list is almost sorted. |
Parameters: a The Agent at the head of the list al The tail of the list
Parameters: newAgent The agent to be added to the list sort Flag indicating whether the list is sorted or not
Parameters: el The list of onsets (or events or peaks) to beat track
Parameters: el The list of onsets (or events or peaks) to beat track. stop Do not find beats after stop
seconds.
Returns: The Agent with the highest score
Parameters: ptr Points to the Agent which is removed from the list