#include "components/performance_manager/execution_context_priority/inherit_parent_priority_voter.h"
#include <optional>
#include <utility>
#include "base/task/task_traits.h"
#include "components/performance_manager/public/execution_context/execution_context_registry.h"
#include "components/performance_manager/public/graph/graph.h"
namespace performance_manager::execution_context_priority {
namespace {
const execution_context::ExecutionContext* GetExecutionContext(
const FrameNode* frame_node) { … }
std::optional<base::TaskPriority> GetVotePriority(const FrameNode* frame_node) { … }
std::optional<Vote> GetVote(const FrameNode* frame_node) { … }
}
const char InheritParentPriorityVoter::kPriorityInheritedReason[] = …;
InheritParentPriorityVoter::InheritParentPriorityVoter(
VotingChannel voting_channel)
: … { … }
InheritParentPriorityVoter::~InheritParentPriorityVoter() = default;
void InheritParentPriorityVoter::InitializeOnGraph(Graph* graph) { … }
void InheritParentPriorityVoter::TearDownOnGraph(Graph* graph) { … }
void InheritParentPriorityVoter::OnFrameNodeInitializing(
const FrameNode* frame_node) { … }
void InheritParentPriorityVoter::OnFrameNodeTearingDown(
const FrameNode* frame_node) { … }
void InheritParentPriorityVoter::OnIsAdFrameChanged(
const FrameNode* frame_node) { … }
void InheritParentPriorityVoter::OnPriorityAndReasonChanged(
const FrameNode* frame_node,
const PriorityAndReason& previous_value) { … }
}