Enforces rules to make sure module source files are compiled in the correct order and without consuming too many resources.
This class is not responsible for ensuring that dependencies are compiled before the source files that depend on them. That's handled by VuoCompiler.
Definition at line 27 of file VuoModuleCompilationQueue.hh.
Classes | |
class | Item |
A description of a source file to be compiled. More... | |
Public Member Functions | |
VuoModuleCompilationQueue () | |
Creates an empty queue. More... | |
void | enqueue (Item *item) |
Adds the item to the queue. More... | |
Item * | next () |
Returns an item that is ready to be compiled, blocking if none are available. More... | |
void | completed (Item *item) |
Indicates that an item previously returned by VuoModuleCompilationQueue::next is finished compiling. More... | |
VuoModuleCompilationQueue::VuoModuleCompilationQueue | ( | ) |
Creates an empty queue.
Definition at line 36 of file VuoModuleCompilationQueue.cc.
void VuoModuleCompilationQueue::completed | ( | VuoModuleCompilationQueue::Item * | item | ) |
Indicates that an item previously returned by VuoModuleCompilationQueue::next is finished compiling.
Definition at line 93 of file VuoModuleCompilationQueue.cc.
void VuoModuleCompilationQueue::enqueue | ( | VuoModuleCompilationQueue::Item * | item | ) |
Adds the item to the queue.
Definition at line 43 of file VuoModuleCompilationQueue.cc.
VuoModuleCompilationQueue::Item * VuoModuleCompilationQueue::next | ( | void | ) |
Returns an item that is ready to be compiled, blocking if none are available.
This call is assumed to follow a corresponding call to VuoModuleCompilationQueue::enqueue.
Definition at line 55 of file VuoModuleCompilationQueue.cc.