精简
This commit is contained in:
@@ -6,7 +6,6 @@ if (Aethera_BUILD_TESTS)
|
||||
list(APPEND Aethera_Kernel_dependencies
|
||||
global::GTest
|
||||
global::benchmark
|
||||
global::libwebsockets
|
||||
)
|
||||
endif ()
|
||||
rcl_add_dependency_action_targets(Aethera_Kernel_env ${Aethera_Kernel_dependencies})
|
||||
|
||||
@@ -34,13 +34,13 @@ void reset_counters(Frame_Policy::State& state,
|
||||
std::uint64_t occurred_ns) noexcept {
|
||||
const auto generation = state.generation + 1;
|
||||
const auto render_enabled = state.render_enabled;
|
||||
const auto video_enabled = state.video_enabled;
|
||||
const auto pixel_delivery_enabled = state.pixel_delivery_enabled;
|
||||
const auto mode = state.mode;
|
||||
const auto fixed_rate_fps = state.fixed_rate_fps;
|
||||
state = {};
|
||||
state.generation = generation;
|
||||
state.render_enabled = render_enabled;
|
||||
state.video_enabled = video_enabled;
|
||||
state.pixel_delivery_enabled = pixel_delivery_enabled;
|
||||
state.mode = mode;
|
||||
state.fixed_rate_fps = fixed_rate_fps;
|
||||
state.observation_started_ns = occurred_ns;
|
||||
@@ -59,8 +59,8 @@ void Frame_Policy::set_render_enabled(bool enabled) {
|
||||
.enabled = enabled});
|
||||
}
|
||||
|
||||
void Frame_Policy::set_video_enabled(bool enabled) {
|
||||
submit({.type = detail::Frame_Policy_Event_Type::video_enabled,
|
||||
void Frame_Policy::set_pixel_delivery_enabled(bool enabled) {
|
||||
submit({.type = detail::Frame_Policy_Event_Type::pixel_delivery_enabled,
|
||||
.enabled = enabled});
|
||||
}
|
||||
|
||||
@@ -141,8 +141,8 @@ bool Frame_Policy::consume_events() {
|
||||
state.render_enabled = event.enabled;
|
||||
++state.generation;
|
||||
break;
|
||||
case detail::Frame_Policy_Event_Type::video_enabled:
|
||||
state.video_enabled = event.enabled;
|
||||
case detail::Frame_Policy_Event_Type::pixel_delivery_enabled:
|
||||
state.pixel_delivery_enabled = event.enabled;
|
||||
++state.generation;
|
||||
break;
|
||||
case detail::Frame_Policy_Event_Type::mode:
|
||||
|
||||
@@ -22,7 +22,7 @@ namespace detail {
|
||||
struct Frame_Policy_Event_Stream;
|
||||
enum struct Frame_Policy_Event_Type : std::uint8_t {
|
||||
render_enabled,
|
||||
video_enabled,
|
||||
pixel_delivery_enabled,
|
||||
mode,
|
||||
fixed_rate,
|
||||
request_received,
|
||||
@@ -60,7 +60,7 @@ struct Frame_Policy final : double_buffer::Def<
|
||||
struct State : Prev_State {
|
||||
std::uint64_t generation{};
|
||||
bool render_enabled{true};
|
||||
bool video_enabled{true};
|
||||
bool pixel_delivery_enabled{true};
|
||||
Frame_Pacing_Mode mode{Frame_Pacing_Mode::fixed_rate};
|
||||
double fixed_rate_fps{30.0};
|
||||
|
||||
@@ -98,7 +98,7 @@ struct Frame_Policy final : double_buffer::Def<
|
||||
struct Private : Prev_Private {};
|
||||
|
||||
void set_render_enabled(bool enabled);
|
||||
void set_video_enabled(bool enabled);
|
||||
void set_pixel_delivery_enabled(bool enabled);
|
||||
void set_mode(Frame_Pacing_Mode mode);
|
||||
void set_fixed_rate(double fps);
|
||||
void reset_statistics();
|
||||
|
||||
@@ -35,13 +35,13 @@ void reset_common_counters(Frame_Policy::State& state,
|
||||
std::uint64_t occurred_ns) noexcept {
|
||||
const auto generation = state.generation + 1;
|
||||
const auto render_enabled = state.render_enabled;
|
||||
const auto video_enabled = state.video_enabled;
|
||||
const auto pixel_delivery_enabled = state.pixel_delivery_enabled;
|
||||
const auto mode = state.mode;
|
||||
const auto fixed_rate_fps = state.fixed_rate_fps;
|
||||
state = {};
|
||||
state.generation = generation;
|
||||
state.render_enabled = render_enabled;
|
||||
state.video_enabled = video_enabled;
|
||||
state.pixel_delivery_enabled = pixel_delivery_enabled;
|
||||
state.mode = mode;
|
||||
state.fixed_rate_fps = fixed_rate_fps;
|
||||
state.observation_started_ns = occurred_ns;
|
||||
@@ -61,8 +61,8 @@ void Frame_Policy_3D::set_render_enabled(bool enabled) {
|
||||
.enabled = enabled});
|
||||
}
|
||||
|
||||
void Frame_Policy_3D::set_video_enabled(bool enabled) {
|
||||
submit({.type = detail::Frame_Policy_Event_Type::video_enabled,
|
||||
void Frame_Policy_3D::set_pixel_delivery_enabled(bool enabled) {
|
||||
submit({.type = detail::Frame_Policy_Event_Type::pixel_delivery_enabled,
|
||||
.enabled = enabled});
|
||||
}
|
||||
|
||||
@@ -179,8 +179,8 @@ bool Frame_Policy_3D::consume_events() {
|
||||
common.render_enabled = event.enabled;
|
||||
++common.generation;
|
||||
break;
|
||||
case detail::Frame_Policy_Event_Type::video_enabled:
|
||||
common.video_enabled = event.enabled;
|
||||
case detail::Frame_Policy_Event_Type::pixel_delivery_enabled:
|
||||
common.pixel_delivery_enabled = event.enabled;
|
||||
++common.generation;
|
||||
break;
|
||||
case detail::Frame_Policy_Event_Type::mode:
|
||||
|
||||
@@ -27,7 +27,7 @@ struct Frame_Policy_3D final : double_buffer::Def<
|
||||
static constexpr std::size_t pipeline_capacity{3};
|
||||
|
||||
void set_render_enabled(bool enabled);
|
||||
void set_video_enabled(bool enabled);
|
||||
void set_pixel_delivery_enabled(bool enabled);
|
||||
void set_mode(Frame_Pacing_Mode mode);
|
||||
void set_fixed_rate(double fps);
|
||||
void reset_statistics();
|
||||
|
||||
@@ -59,7 +59,7 @@ TEST(frame_policy, mpmc_events_publish_one_double_buffer_state) {
|
||||
auto policy = std::move(*built);
|
||||
policy->set_mode(aethera::Frame_Pacing_Mode::maximum_rate);
|
||||
policy->set_fixed_rate(47.5);
|
||||
policy->set_video_enabled(false);
|
||||
policy->set_pixel_delivery_enabled(false);
|
||||
policy->record_request(aethera::Frame_Request_Source::maximum_rate,
|
||||
std::chrono::steady_clock::now());
|
||||
policy->record_request_accepted(aethera::Frame_Request_Source::maximum_rate);
|
||||
@@ -70,7 +70,7 @@ TEST(frame_policy, mpmc_events_publish_one_double_buffer_state) {
|
||||
|
||||
const auto& state = policy->read_state<aethera::Frame_Policy::Base_Tag>();
|
||||
EXPECT_TRUE(state.render_enabled);
|
||||
EXPECT_FALSE(state.video_enabled);
|
||||
EXPECT_FALSE(state.pixel_delivery_enabled);
|
||||
EXPECT_EQ(state.mode, aethera::Frame_Pacing_Mode::maximum_rate);
|
||||
EXPECT_DOUBLE_EQ(state.fixed_rate_fps, 47.5);
|
||||
EXPECT_EQ(state.request_count, 1);
|
||||
|
||||
Reference in New Issue
Block a user