30 const char* v = std::getenv(
"PULP_DEV_HOT_RELOAD");
33 case '1':
case 't':
case 'T':
case 'y':
case 'Y':
return true;
34 default:
return false;
43 const char* v = std::getenv(
"PULP_EDITOR_OPEN");
44 return !(v && std::string_view(v) ==
"view-first");
115 .defer_document_load =
true,
208 if (owner_alive_) owner_alive_->store(
false, std::memory_order_release);
267 bool is_open()
const {
return view_raw_ !=
nullptr; }
306 const std::shared_ptr<std::atomic<bool>>&
alive_token()
const {
return alive_; }
323 uint32_t
width()
const {
return width_; }
324 uint32_t
height()
const {
return height_; }
335 const std::string&
last_error()
const {
return last_error_; }
364 bool poll_state_restore();
369 void pump_store_listeners();
392 std::size_t sync_design_frames_from_host();
405 bool supports_editor_reload_ =
false;
413 std::unique_ptr<view::View> view_;
417 std::unique_ptr<view::StateStoreHostParamSurface> host_param_surface_;
419 std::unique_ptr<view::ScriptedUiSession> scripted_ui_;
423 bool in_place_scripted_ui_reload_ =
false;
424 bool uses_script_ui_ =
false;
425 bool uses_auto_ui_ =
false;
426 bool attached_ =
false;
427 bool owner_release_notified_ =
false;
428 bool released_ =
false;
429 uint64_t last_reload_generation_ = 0;
430 uint64_t last_state_restore_revision_ = 0;
432 std::shared_ptr<std::atomic<bool>> alive_ =
433 std::make_shared<std::atomic<bool>>(
true);
436 std::unique_ptr<view::View>
view;
439 std::vector<Secondary> secondaries_;
444 uint32_t height_ = 0;
445 std::string last_error_;
455template <
typename HostRequest>
457 uint32_t width, uint32_t height,
458 HostRequest&& request) {
461 if (request(width, height))
return true;
466 previous.preferred_height);
A framework-agnostic host command channel.
Definition host_surfaces.hpp:180
A framework-agnostic, native-view-facing runtime parameter accessor.
Definition host_surfaces.hpp:40
Shared, fail-closed lifetime signal for callbacks that may outlive an owner.
Definition alive_token.hpp:19
std::shared_ptr< State > Handle
Definition alive_token.hpp:53
static bool is_alive(const Handle &handle) noexcept
Definition alive_token.hpp:143
Centralized parameter storage with lock-free value access.
Definition store.hpp:164
Definition plugin_view_host.hpp:64
Definition scripted_ui.hpp:125
Bounded event contracts shared by host ingress and graph-authored nodes.
Definition anticipation_eligibility.hpp:9
Hover-cursor tracking for platform window hosts.
Definition fwd.hpp:27
constexpr std::uint32_t kEditorHostClearRgb
The background a plug-in editor host paints when the plug-in has not declared its own (Processor::edi...
Definition plugin_view_host.hpp:48