2023-01-15 17:01:27 +00:00
|
|
|
#include "FrameProducer.h"
|
|
|
|
|
2023-08-27 18:33:42 +00:00
|
|
|
FrameProducer::FrameProducer(FrameConsumer& fc, std::shared_ptr<FileParser> fs) : frameConsumer(fc), frameSource(fs), juce::Thread("producer", 0) {}
|
2023-01-15 17:01:27 +00:00
|
|
|
|
|
|
|
FrameProducer::~FrameProducer() {
|
2023-03-30 16:28:47 +00:00
|
|
|
frameSource->disable();
|
2023-01-15 17:01:27 +00:00
|
|
|
stopThread(-1);
|
|
|
|
}
|
|
|
|
|
|
|
|
void FrameProducer::run() {
|
2023-07-11 21:28:54 +00:00
|
|
|
while (!threadShouldExit()) {
|
2023-08-28 21:06:21 +00:00
|
|
|
auto frame = frameSource->nextFrame();
|
|
|
|
frameConsumer.addFrame(frame);
|
2023-01-15 17:01:27 +00:00
|
|
|
}
|
|
|
|
}
|