Revision 23:633ec097fa56 BeatTracker.cpp

View differences:

BeatTracker.cpp
15 15

  
16 16
#include "BeatTracker.h"
17 17

  
18
EventList BeatTracker::beatTrack(EventList events, EventList beats)
18
EventList BeatTracker::beatTrack(AgentParameters params,
19
                                 EventList events, EventList beats)
19 20
{
20 21
    AgentList agents;
21 22
    int count = 0;
......
28 29
    }
29 30
    if (count > 0) { // tempo given by mean of initial beats
30 31
	double ioi = (beatTime - beats.begin()->time) / count;
31
	agents.push_back(new Agent(ioi));
32
	agents.push_back(new Agent(params, ioi));
32 33
    } else // tempo not given; use tempo induction
33
	agents = Induction::beatInduction(events);
34
	agents = Induction::beatInduction(params, events);
34 35
    if (!beats.empty())
35 36
	for (AgentList::iterator itr = agents.begin(); itr != agents.end();
36 37
	     ++itr) {
......
38 39
	    (*itr)->beatCount = count;
39 40
	    (*itr)->events = beats;
40 41
	}
41
    agents.beatTrack(events, -1);
42
    agents.beatTrack(events, params, -1);
42 43
    Agent *best = agents.bestAgent();
43 44
    EventList results;
44 45
    if (best) {

Also available in: Unified diff