#include "mediapipe/framework/scheduler_queue.h"
#include <memory>
#include <queue>
#include <utility>
#include "absl/log/absl_check.h"
#include "absl/synchronization/mutex.h"
#include "mediapipe/framework/calculator_node.h"
#include "mediapipe/framework/executor.h"
#include "mediapipe/framework/port/canonical_errors.h"
#include "mediapipe/framework/port/logging.h"
#include "mediapipe/framework/port/status.h"
#ifdef __APPLE__
#define AUTORELEASEPOOL …
#else
#define AUTORELEASEPOOL
#endif
namespace mediapipe {
namespace internal {
SchedulerQueue::Item::Item(CalculatorNode* node, CalculatorContext* cc)
: … { … }
SchedulerQueue::Item::Item(CalculatorNode* node)
: … { … }
bool SchedulerQueue::Item::operator<(const SchedulerQueue::Item& that) const { … }
void SchedulerQueue::Reset() { … }
void SchedulerQueue::SetExecutor(Executor* executor) { … }
bool SchedulerQueue::IsIdle() { … }
void SchedulerQueue::SetRunning(bool running) { … }
void SchedulerQueue::AddNode(CalculatorNode* node, CalculatorContext* cc) { … }
void SchedulerQueue::AddNodeForOpen(CalculatorNode* node) { … }
void SchedulerQueue::AddItemToQueue(Item&& item) { … }
int SchedulerQueue::GetTasksToSubmitToExecutor() { … }
void SchedulerQueue::SubmitWaitingTasksToExecutor() { … }
void SchedulerQueue::RunNextTask() { … }
void SchedulerQueue::RunCalculatorNode(CalculatorNode* node,
CalculatorContext* cc) { … }
void SchedulerQueue::OpenCalculatorNode(CalculatorNode* node) { … }
void SchedulerQueue::CleanupAfterRun() { … }
}
}