These docs describe the main branch, including unreleased changes. Read the 0.6.0 docs.

opentui.h

Every export of opentui.h in the main-branch source, from the header. A version names the release that added an export after the module's first release.

Functions#

function ot_buffer_acquire_lease(ot_context *context, const ot_handle *buffer, ot_buffer_lease_snapshot *out_snapshot): ot_status
Resources and ownership
function ot_buffer_color_matrix(ot_context *, const ot_handle *, const ot_scene_frame_request *, const float *matrix, uint32_t matrix_count, const float *mask, uint32_t mask_count, const float *strength, uint32_t channel): ot_status
function ot_buffer_create(ot_context *context, const ot_buffer_options *options, ot_handle *out_buffer): ot_status
Resources and ownership
function ot_buffer_destroy(ot_context *context, const ot_handle *buffer): ot_status
function ot_buffer_draw(ot_context *context, const ot_handle *target, const ot_scene_frame_request *frame, const ot_buffer_draw_header *options, const ot_handle *source, const uint8_t *text, uint32_t text_len, const uint8_t *bottom_title, uint32_t bottom_title_len): ot_status
function ot_buffer_draw_editor_view(ot_context *, const ot_handle *target, const ot_scene_frame_request *, const ot_handle *view, int32_t x, int32_t y): ot_status
function ot_buffer_draw_grayscale(ot_context *, const ot_handle *, const ot_scene_frame_request *, const float *data, uint32_t sample_count, int32_t x, int32_t y, uint32_t width, uint32_t height, const uint16_t *foreground, const uint16_t *background, uint32_t supersampled): ot_status
function ot_buffer_draw_grid(ot_context *context, const ot_handle *target, const ot_scene_frame_request *frame, const ot_buffer_grid_options *options, const int32_t *columns, uint32_t column_count, const int32_t *rows, uint32_t row_count): ot_status
function ot_buffer_draw_image(ot_context *, const ot_handle *target, const ot_scene_frame_request *frame, const ot_handle *image, const ot_image_draw_options *, uint32_t *out_drawn): ot_status
function ot_buffer_draw_packed(ot_context *, const ot_handle *, const ot_scene_frame_request *, const uint8_t *data, uint32_t byte_count, int32_t x, int32_t y, uint32_t width, uint32_t height): ot_status
function ot_buffer_draw_scene_text(ot_context *, const ot_handle *target, const ot_scene_frame_request *, const ot_handle *node, int32_t x, int32_t y): ot_status
function ot_buffer_draw_supersample(ot_context *, const ot_handle *, const ot_scene_frame_request *, const uint8_t *data, uint32_t byte_count, int32_t x, int32_t y, uint32_t format, uint32_t stride): ot_status
function ot_buffer_draw_text_view(ot_context *, const ot_handle *target, const ot_scene_frame_request *, const ot_handle *view, int32_t x, int32_t y): ot_status
function ot_buffer_draw_unicode(ot_context *, const ot_handle *target, const ot_scene_frame_request *frame, const ot_handle *unicode, uint32_t index, int32_t x, int32_t y, const uint16_t foreground[4], const uint16_t background[4], uint32_t attributes): ot_status
function ot_buffer_lease_get_real_char_size(ot_context *context, const ot_handle *lease, uint32_t add_line_breaks, uint32_t *out_size): ot_status
Resources and ownership
function ot_buffer_lease_release(ot_context *context, const ot_handle *lease): ot_status
Resources and ownership
function ot_buffer_lease_validate(ot_context *context, const ot_handle *lease): ot_status
Resources and ownership
function ot_buffer_lease_write_resolved_chars(ot_context *context, const ot_handle *lease, uint8_t *bytes, uint32_t capacity, uint32_t add_line_breaks, uint8_t *cell_lengths, uint32_t cell_capacity, uint32_t *out_written): ot_status
Resources and ownership
function ot_buffer_resize(ot_context *context, const ot_handle *buffer, uint32_t width, uint32_t height): ot_status
function ot_buffer_stack(ot_context *context, const ot_handle *target, const ot_scene_frame_request *frame, uint32_t operation, int32_t x, int32_t y, uint32_t width, uint32_t height, const float *opacity, float *out_opacity): ot_status
function ot_clipboard_clear_operation_start(ot_context *context, uint8_t selection, uint32_t timeout_ms, ot_handle *out_operation): uint8_t
function ot_clipboard_operation_cancel(ot_context *context, const ot_handle *operation): uint8_t
function ot_clipboard_operation_destroy(ot_context *context, const ot_handle *operation): uint8_t
function ot_clipboard_operation_poll(ot_context *context, const ot_handle *operation): uint8_t
function ot_clipboard_operation_result_data_copy(ot_context *context, const ot_handle *operation, uint8_t *out_bytes, uint32_t capacity): uint8_t
function ot_clipboard_operation_result_data_length(ot_context *context, const ot_handle *operation, uint32_t *out_length): uint8_t
function ot_clipboard_operation_result_diagnostic_copy(ot_context *context, const ot_handle *operation, uint8_t *out_bytes, uint32_t capacity): uint8_t
function ot_clipboard_operation_result_diagnostic_length(ot_context *context, const ot_handle *operation, uint32_t *out_length): uint8_t
function ot_clipboard_operation_result_error_code(ot_context *context, const ot_handle *operation, uint32_t *out_error_code): uint8_t
function ot_clipboard_operation_result_mime_copy(ot_context *context, const ot_handle *operation, uint8_t *out_bytes, uint32_t capacity): uint8_t
function ot_clipboard_operation_result_mime_length(ot_context *context, const ot_handle *operation, uint32_t *out_length): uint8_t
function ot_clipboard_read_operation_start(ot_context *context, const uint8_t *request, uint32_t request_length, uint8_t selection, uint32_t max_bytes, uint32_t max_image_pixels, uint32_t max_conversion_bytes, uint32_t timeout_ms, ot_handle *out_operation): uint8_t
function ot_clipboard_service_begin_shutdown(ot_context *context): uint8_t
function ot_clipboard_service_create(ot_context *context, uint32_t max_operations, uint32_t max_provider_transfers, const uint8_t *wayland_seat, uint32_t wayland_seat_length): int32_t
function ot_clipboard_service_destroy(ot_context *context): uint8_t
function ot_clipboard_service_drain(ot_context *context): uint8_t
function ot_clipboard_service_poll_shutdown(ot_context *context): uint8_t
function ot_clipboard_write_operation_start(ot_context *context, const uint8_t *text, uint32_t text_length, uint8_t selection, uint32_t timeout_ms, ot_handle *out_operation): uint8_t
function ot_context_abi_version(void): uint32_t
function ot_context_create(const ot_context_options *options, ot_context **out_context): ot_status
Resources and ownership
function ot_context_destroy(ot_context *context): ot_status
Resources and ownership
function ot_context_drain_diagnostics(ot_context *context, ot_diagnostic *records, uint32_t capacity, ot_diagnostic_drain *out_drain): ot_status
function ot_context_get_last_error(ot_context *context, ot_context_error *out_error): ot_status
function ot_context_set_edit_event_callback(ot_context *, ot_edit_event_callback): ot_status
How Core uses native
function ot_edit_buffer_command(ot_context *, const ot_handle *, uint32_t command, uint32_t argument): ot_status
function ot_edit_buffer_create(ot_context *, const ot_edit_buffer_options *, ot_handle *out_edit_buffer): ot_status
Resources and ownership
function ot_edit_buffer_delete_range(ot_context *, const ot_handle *edit_buffer, uint32_t start_row, uint32_t start_col, uint32_t end_row, uint32_t end_col): ot_status
function ot_edit_buffer_destroy(ot_context *, const ot_handle *edit_buffer): ot_status
function ot_edit_buffer_get_highlights(ot_context *, const ot_handle *, uint32_t line, ot_edit_highlight *highlights, uint32_t capacity, uint32_t *out_count): ot_status
function ot_edit_buffer_get_info(ot_context *, const ot_handle *edit_buffer, ot_edit_buffer_info *out_info): ot_status
function ot_edit_buffer_get_position(ot_context *, const ot_handle *, uint32_t query, uint32_t a, uint32_t b, ot_edit_position *out_position): ot_status
function ot_edit_buffer_get_range(ot_context *, const ot_handle *, uint32_t by_coords, uint32_t start_row, uint32_t start_col, uint32_t end_row, uint32_t end_col, uint8_t *bytes, uint32_t capacity, uint32_t *out_count): ot_status
function ot_edit_buffer_get_text(ot_context *, const ot_handle *edit_buffer, uint8_t *bytes, uint32_t capacity, uint32_t *out_count): ot_status
function ot_edit_buffer_highlight(ot_context *, const ot_handle *, uint32_t operation, uint32_t argument, const ot_edit_highlight *highlight): ot_status
function ot_edit_buffer_history(ot_context *, const ot_handle *, uint32_t redo, uint8_t *bytes, uint32_t capacity, uint32_t *out_count): ot_status
function ot_edit_buffer_insert_text(ot_context *, const ot_handle *edit_buffer, const uint8_t *bytes, uint32_t byte_count): ot_status
function ot_edit_buffer_set_cursor(ot_context *, const ot_handle *edit_buffer, uint32_t row, uint32_t col): ot_status
function ot_edit_buffer_set_defaults(ot_context *, const ot_handle *, uint32_t mask, const ot_editor_style *): ot_status
function ot_edit_buffer_set_syntax_style(ot_context *, const ot_handle *edit_buffer, const ot_handle *style): ot_status
function ot_edit_buffer_set_tab_width(ot_context *, const ot_handle *edit_buffer, uint32_t width): ot_status
function ot_edit_buffer_set_text(ot_context *, const ot_handle *edit_buffer, const uint8_t *bytes, uint32_t byte_count, uint32_t preserve_history): ot_status
function ot_editor_view_command(ot_context *, const ot_handle *, uint32_t command, uint32_t argument): ot_status
function ot_editor_view_create(ot_context *, const ot_handle *edit_buffer, uint32_t width, uint32_t height, ot_handle *out_view): ot_status
Resources and ownership
function ot_editor_view_destroy(ot_context *, const ot_handle *view): ot_status
function ot_editor_view_get_info(ot_context *, const ot_handle *, uint32_t follow_cursor, ot_editor_view_info *out_info): ot_status
function ot_editor_view_get_lines(ot_context *, const ot_handle *, uint32_t logical, ot_scene_text_line *lines, uint32_t capacity, ot_editor_measure *out_info): ot_status
function ot_editor_view_get_position(ot_context *, const ot_handle *, uint32_t query, ot_editor_position *out_position): ot_status
function ot_editor_view_get_selected_text(ot_context *, const ot_handle *, uint8_t *bytes, uint32_t capacity, uint32_t *out_count): ot_status
function ot_editor_view_get_selection(ot_context *, const ot_handle *, ot_editor_view_info *out_info): ot_status
function ot_editor_view_get_viewport(ot_context *, const ot_handle *, ot_editor_viewport *out_viewport): ot_status
function ot_editor_view_measure(ot_context *, const ot_handle *, uint32_t width, uint32_t height, ot_editor_measure *out_info): ot_status
function ot_editor_view_replace_selection(ot_context *, const ot_handle *, const uint8_t *bytes, uint32_t byte_count, uint32_t *out_steps): ot_status
function ot_editor_view_select(ot_context *, const ot_handle *, const ot_editor_selection *, uint32_t *out_changed): ot_status
function ot_editor_view_set_placeholder(ot_context *, const ot_handle *, const uint8_t *bytes, uint32_t byte_count, const ot_styled_text_chunk *chunks, uint32_t chunk_count): ot_status
function ot_editor_view_set_scroll_margin(ot_context *, const ot_handle *, float margin): ot_status
function ot_editor_view_set_tab_color(ot_context *, const ot_handle *, const uint16_t color[4]): ot_status
function ot_editor_view_set_viewport(ot_context *, const ot_handle *, const ot_editor_viewport *, uint32_t size_only, uint32_t move_cursor): ot_status
function ot_embedded_terminal_command(ot_context *, const ot_handle *terminal, uint32_t command, int32_t argument): ot_status
function ot_embedded_terminal_compose(ot_context *, const ot_handle *terminal, const ot_handle *target, const ot_scene_frame_request *frame, int32_t x, int32_t y): ot_status
function ot_embedded_terminal_create(ot_context *, const ot_embedded_terminal_options *, ot_handle *out_terminal): ot_status
function ot_embedded_terminal_cursor_get(ot_context *, const ot_handle *terminal, ot_embedded_terminal_cursor *out_cursor): ot_status
function ot_embedded_terminal_destroy(ot_context *, const ot_handle *terminal): ot_status
function ot_embedded_terminal_drain_responses(ot_context *, const ot_handle *terminal, uint8_t *bytes, uint32_t capacity, uint32_t *out_count): ot_status
function ot_embedded_terminal_encode_focus(ot_context *, const ot_handle *terminal, uint32_t focused, uint8_t *bytes, uint32_t capacity, uint32_t *out_count): ot_status
function ot_embedded_terminal_encode_key(ot_context *, const ot_handle *terminal, const ot_embedded_terminal_key *, const uint8_t *key, uint32_t key_count, const uint8_t *text, uint32_t text_count, uint8_t *bytes, uint32_t capacity, uint32_t *out_count): ot_status
function ot_embedded_terminal_encode_mouse(ot_context *, const ot_handle *terminal, const ot_embedded_terminal_mouse *, uint8_t *bytes, uint32_t capacity, uint32_t *out_count): ot_status
function ot_embedded_terminal_encode_paste(ot_context *, const ot_handle *terminal, const uint8_t *input, uint32_t input_count, uint8_t *bytes, uint32_t capacity, uint32_t *out_count): ot_status
function ot_embedded_terminal_get_selected_text(ot_context *, const ot_handle *terminal, uint8_t *bytes, uint32_t capacity, uint32_t *out_count): ot_status
function ot_embedded_terminal_resize(ot_context *, const ot_handle *terminal, uint32_t cols, uint32_t rows): ot_status
function ot_embedded_terminal_set_selection(ot_context *, const ot_handle *terminal, uint32_t start_x, uint32_t start_y, uint32_t end_x, uint32_t end_y): ot_status
function ot_embedded_terminal_write(ot_context *, const ot_handle *terminal, const uint8_t *bytes, uint32_t byte_count): ot_status
function ot_image_clone(ot_context *destination, ot_context *source, const ot_handle *image, ot_handle *out_image): ot_status
Resources and ownership
function ot_image_composite(ot_context *, const ot_handle *base, const ot_handle *overlay, int32_t left, int32_t top, uint32_t blend, uint8_t opacity, ot_handle *out_image): ot_status
function ot_image_copy_pixels(ot_context *, const ot_handle *image, uint8_t *destination, uint64_t byte_count, uint32_t stride, uint32_t format): ot_status
function ot_image_copy_png(ot_context *, const ot_handle *image, uint8_t *destination, uint64_t capacity, uint64_t *out_byte_count): ot_status
function ot_image_create_pixels(ot_context *, const uint8_t *pixels, uint64_t byte_count, uint32_t width, uint32_t height, uint32_t stride, uint32_t format, uint32_t alpha, ot_handle *out_image): ot_status
Resources and ownership
function ot_image_decode(ot_context *, const uint8_t *bytes, uint64_t byte_count, ot_handle *out_image): ot_status
Resources and ownership
function ot_image_destroy(ot_context *, const ot_handle *image): ot_status
function ot_image_extend(ot_context *, const ot_handle *image, uint32_t top, uint32_t right, uint32_t bottom, uint32_t left, const uint8_t *background_rgba, ot_handle *out_image): ot_status
function ot_image_extract(ot_context *, const ot_handle *image, uint32_t left, uint32_t top, uint32_t width, uint32_t height, ot_handle *out_image): ot_status
function ot_image_get_info(ot_context *, const ot_handle *image, ot_image_info *out_info): ot_status
function ot_image_inspect(ot_context *, const uint8_t *bytes, uint64_t byte_count, ot_image_info *out_info): ot_status
Resources and ownership
function ot_image_pixels_release(ot_context *, const ot_handle *lease): ot_status
Resources and ownership
function ot_image_resize(ot_context *, const ot_handle *image, uint32_t width, uint32_t height, uint32_t filter, ot_handle *out_image): ot_status
function ot_image_retain(ot_context *, const ot_handle *image, ot_handle *out_image): ot_status
Resources and ownership
function ot_image_take_pixels(ot_context *, const ot_handle *image, ot_image_pixels *out_pixels): ot_status
Resources and ownership
function ot_image_transform(ot_context *, const ot_handle *image, uint32_t operation, ot_handle *out_image): ot_status
function ot_image_update_pixels(ot_context *, const ot_handle *image, const uint8_t *pixels, uint64_t byte_count, uint32_t stride, uint32_t format, uint32_t alpha): ot_status
function ot_scene_create_node(ot_context *, const ot_handle *session, uint32_t kind, uint32_t num, ot_handle *out_node): ot_status
C
function ot_scene_destroy_node(ot_context *, const ot_handle *node): ot_status
Resources and ownership
function ot_scene_flush(ot_context *, const uint8_t *updates, uint32_t byte_count, uint32_t *out_applied): ot_status
Frames and output
function ot_scene_frame_acquire_buffer_lease(ot_context *, const ot_handle *session, const ot_scene_frame_request *frame_request, uint32_t which, ot_buffer_lease_snapshot *out_snapshot): ot_status
Frames and output
function ot_scene_frame_cancel(ot_context *, const ot_handle *session, uint64_t frame_id): ot_status
Frames and output
function ot_scene_frame_commit(ot_context *, const ot_handle *session, const ot_scene_frame_request *frame_request, uint32_t force, uint32_t *out_status): ot_status
Frames and output
function ot_scene_frame_copy_buffer(ot_context *, const ot_handle *session, const ot_scene_frame_request *, const ot_handle *target): ot_status
function ot_scene_frame_draw_buffer(ot_context *context, const ot_handle *session, const ot_scene_frame_request *frame_request, const ot_handle *source, int32_t x, int32_t y): ot_status
Resources and ownership
function ot_scene_frame_get_paint_slots(ot_context *, const ot_handle *session, const ot_scene_frame_request *record_request, ot_scene_paint_slot *out_slots, uint32_t capacity, uint32_t *out_count): ot_status
Frames and output
function ot_scene_frame_step_with_geometry(ot_context *, const ot_handle *session, const ot_scene_frame_request *previous, const ot_scene_frame_options *, uint32_t max_work_items, const uint8_t *recording, uint32_t recording_length, ot_scene_frame_request *out_request, ot_scene_frame_geometry *out_geometry): ot_status
Frames and output
function ot_scene_get_cursor_state(ot_context *, const ot_handle *session, ot_scene_cursor_state *out_state): ot_status
function ot_scene_get_layout(ot_context *, const ot_handle *node, uint32_t observation, ot_scene_layout *out_layout): ot_status
Resources and ownership
function ot_scene_get_selected_text(ot_context *, const ot_handle *node, uint8_t *bytes, uint32_t capacity, uint32_t *out_count): ot_status
function ot_scene_get_slider_thumb(ot_context *, const ot_handle *node, ot_scene_slider_thumb *out_thumb): ot_status
function ot_scene_get_stats(ot_context *, const ot_handle *session, ot_scene_stats *out_stats): ot_status
function ot_scene_get_style(ot_context *, const ot_handle *node, uint32_t group, uint32_t kind, uint32_t edge, ot_scene_style_value *out_value): ot_status
function ot_scene_get_text(ot_context *, const ot_handle *node, uint8_t *bytes, uint32_t capacity, uint32_t *out_count): ot_status
function ot_scene_get_text_info(ot_context *, const ot_handle *node, ot_scene_text_info *out_info): ot_status
function ot_scene_get_text_lines(ot_context *, const ot_handle *node, uint32_t first_line, ot_scene_text_line *lines, uint32_t capacity, uint32_t *out_count): ot_status
function ot_scene_get_text_selection(ot_context *, const ot_handle *node, uint64_t *out_packed): ot_status
function ot_scene_has_measure(ot_context *, const ot_handle *node, uint32_t *out_enabled): ot_status
function ot_scene_hit_test(ot_context *, const ot_handle *session, int32_t x, int32_t y, uint32_t *out_num): ot_status
Frames and output
function ot_scene_mark_dirty(ot_context *, const ot_handle *node): ot_status
function ot_scene_measure_layout(ot_context *, const ot_handle *session, const ot_handle *root): ot_status
function ot_scene_move_node(ot_context *, const ot_handle *node, const ot_handle *parent, uint32_t index): ot_status
C
function ot_scene_paint(ot_context *, const ot_handle *session, const uint16_t background[4], uint32_t use_mouse, uint32_t excluded_hit_num, ot_scene_frame_request *out_frame): ot_status
Frames and output
function ot_scene_set_arrow(ot_context *, const ot_handle *node, const ot_scene_arrow_options *, const uint8_t *text, uint32_t byte_count): ot_status
function ot_scene_set_box_details(ot_context *, const ot_handle *node, const ot_scene_box_details *, const uint8_t *title, uint32_t title_bytes, const uint8_t *bottom_title, uint32_t bottom_title_bytes): ot_status
function ot_scene_set_editor_options(ot_context *, const ot_handle *node, const ot_scene_editor_options *): ot_status
function ot_scene_set_editor_view(ot_context *, const ot_handle *node, const ot_handle *view): ot_status
function ot_scene_set_focus(ot_context *, const ot_handle *node, uint32_t focused): ot_status
function ot_scene_set_hooks(ot_context *, const ot_handle *node, const ot_scene_hooks *): ot_status
Frames and output
function ot_scene_set_image(ot_context *, const ot_handle *node, const ot_handle *image, uint32_t fit, uint32_t protocol, const ot_handle *buffer): ot_status
Frames and output
function ot_scene_set_measure(ot_context *, const ot_handle *node, ot_scene_measure_callback): ot_status
Frames and output
function ot_scene_set_paint(ot_context *, const ot_handle *node, const ot_scene_paint_options *): ot_status
C
function ot_scene_set_slider(ot_context *, const ot_handle *node, const ot_scene_slider_options *): ot_status
function ot_scene_set_style(ot_context *, const ot_handle *node, uint32_t group, uint32_t kind, uint32_t edge, uint32_t unit, float value, uint32_t flags): ot_status
function ot_scene_set_styled_text(ot_context *, const ot_handle *node, const uint8_t *bytes, uint32_t byte_count, const ot_styled_text_chunk *chunks, uint32_t chunk_count, const uint8_t *urls, uint32_t url_byte_count): ot_status
Resources and ownership
function ot_scene_set_surface(ot_context *, const ot_handle *node, const ot_handle *buffer): ot_status
Resources and ownership
function ot_scene_set_text(ot_context *, const ot_handle *node, const uint8_t *bytes, uint32_t byte_count): ot_status
C
function ot_scene_set_text_options(ot_context *, const ot_handle *node, const ot_scene_text_options *): ot_status
function ot_scene_set_text_selection(ot_context *, const ot_handle *node, const ot_scene_text_selection_options *, uint32_t *out_changed): ot_status
function ot_scene_set_text_view(ot_context *, const ot_handle *node, const ot_handle *view): ot_status
Resources and ownership
function ot_scene_set_text_view_paint(ot_context *, const ot_handle *node, uint32_t enabled): ot_status
function ot_scene_set_viewport(ot_context *, const ot_handle *node, const ot_handle *viewport): ot_status
Frames and output
function ot_session_acquire_buffer_lease(ot_context *context, const ot_handle *session, uint32_t which, ot_buffer_lease_snapshot *out_snapshot): ot_status
Frames and output
function ot_session_attach_renderer(ot_context *context, const ot_handle *session, const ot_session_renderer_options *options): ot_status
Resources and ownership
function ot_session_attach_renderer_with_env(ot_context *context, const ot_handle *session, const ot_session_renderer_env_options *options, const uint8_t *environment): ot_status
function ot_session_cancel(ot_context *context, const ot_handle *session): ot_status
Resources and ownership
function ot_session_cancel_kitty_image_transport(ot_context *, const ot_handle *session, uint32_t failed): ot_status
function ot_session_clipboard(ot_context *context, const ot_handle *session, uint32_t target, const uint8_t *bytes, uint32_t byte_count, uint32_t *out_written): ot_status
function ot_session_close(ot_context *context, const ot_handle *session): ot_status
Resources and ownership
function ot_session_complete_output(ot_context *context, const ot_handle *session, const ot_output_ticket *ticket, uint32_t success): ot_status
Frames and output
function ot_session_control(ot_context *context, const ot_handle *session, const ot_session_control_options *options, const uint8_t *bytes, uint32_t byte_count): ot_status
Frames and output
function ot_session_create(ot_context *context, const ot_session_options *options, ot_handle *out_session): ot_status
Resources and ownership
function ot_session_destroy(ot_context *context, const ot_handle *session): ot_status
Resources and ownership
function ot_session_drain_output(ot_context *context, const ot_handle *session, uint32_t max_bytes, uint32_t *out_written, void *user_data, ot_output_write_callback writer): ot_status
Frames and output
function ot_session_drain_stdout(ot_context *context, const ot_handle *session, uint32_t max_bytes, uint32_t *out_written): ot_status
Frames and output
function ot_session_draw_buffer(ot_context *context, const ot_handle *session, const ot_handle *source, int32_t x, int32_t y): ot_status
Resources and ownership
function ot_session_dump_hit_grid(ot_context *, const ot_handle *session): ot_status
function ot_session_get_capabilities(ot_context *context, const ot_handle *session, ot_session_capabilities *out_capabilities): ot_status
function ot_session_get_kitty_image_transport(ot_context *, const ot_handle *session, ot_session_kitty_image_transport *out_status): ot_status
function ot_session_get_renderer_state(ot_context *context, const ot_handle *session, ot_session_renderer_state *out_state): ot_status
function ot_session_get_state(ot_context *context, const ot_handle *session, uint32_t *out_state): ot_status
function ot_session_get_terminal_state(ot_context *context, const ot_handle *session, uint32_t *out_phase): ot_status
function ot_session_get_write_limit(ot_context *context, const ot_handle *session, uint64_t *out_bytes): ot_status
Frames and output
function ot_session_notification(ot_context *, const ot_handle *, const uint8_t *message, uint32_t message_len, const uint8_t *title, uint32_t title_len, uint32_t *out_written): ot_status
function ot_session_poll_kitty_image_transport(ot_context *, const ot_handle *session, uint64_t now_ns, uint32_t *out_retry): ot_status
Host I/O and time
function ot_session_process_kitty_image_reply(ot_context *, const ot_handle *session, const uint8_t *bytes, uint32_t byte_count, uint32_t *out_result): ot_status
function ot_session_pump(ot_context *context, const ot_handle *session, uint64_t now_ns, uint32_t work_budget, ot_session_pump_result *out_result): ot_status
Frames and output
function ot_session_pump_exit(ot_context *context, const ot_handle *session, uint32_t *out_status): ot_status
Host I/O and time
function ot_session_read_output(ot_context *context, const ot_handle *session, uint8_t *bytes, uint32_t capacity, ot_output_ticket *out_ticket): ot_status
Frames and output
function ot_session_render(ot_context *context, const ot_handle *session, uint32_t force, uint32_t *out_result): ot_status
Frames and output
function ot_session_render_split(ot_context *, const ot_handle *session, const ot_scene_frame_request *, const ot_split_snapshot *, uint32_t count, uint32_t pinned_render_offset, uint32_t force, uint32_t *out_status): ot_status
Frames and output
function ot_session_resize_renderer(ot_context *context, const ot_handle *session, uint32_t width, uint32_t height): ot_status
function ot_session_resume(ot_context *context, const ot_handle *session): ot_status
function ot_session_set_debug_overlay(ot_context *, const ot_handle *session, uint32_t enabled, uint32_t corner): ot_status
function ot_session_set_image_resolution(ot_context *, const ot_handle *session, uint32_t terminal_width, uint32_t terminal_height, uint32_t pixel_width, uint32_t pixel_height): ot_status
function ot_session_set_kitty_image_transport(ot_context *, const ot_handle *session, uint32_t mode): ot_status
function ot_session_set_palette_state(ot_context *, const ot_handle *, const uint16_t *palette, uint32_t color_count, const uint16_t *foreground, const uint16_t *background, uint32_t epoch): ot_status
function ot_session_set_screen(ot_context *, const ot_handle *session, uint32_t alternate, uint32_t width, uint32_t height, const uint8_t *trailing_output, uint32_t byte_count): ot_status
function ot_session_setup_terminal(ot_context *context, const ot_handle *session, const ot_session_terminal_options *options): ot_status
Resources and ownership
function ot_session_split_control(ot_context *, const ot_handle *session, const ot_split_control *, uint32_t *out_offset): ot_status
function ot_session_start_kitty_file_probe(ot_context *, const ot_handle *session): ot_status
function ot_session_suspend(ot_context *context, const ot_handle *session): ot_status
function ot_session_sync_detached(ot_context *, const ot_handle *session, const ot_handle *parent): ot_status
function ot_session_update_memory_stats(ot_context *, const ot_handle *session, uint32_t heap_used, uint32_t heap_total, uint32_t array_buffers): ot_status
function ot_session_update_stats(ot_context *, const ot_handle *session, double overall_ms, uint32_t fps, double callback_ms): ot_status
function ot_session_write(ot_context *context, const ot_handle *session, const uint8_t *bytes, uint32_t byte_count): ot_status
function ot_syntax_style_create(ot_context *, ot_handle *out_style): ot_status
Resources and ownership
function ot_syntax_style_destroy(ot_context *, const ot_handle *style): ot_status
function ot_syntax_style_get_count(ot_context *, const ot_handle *, uint32_t *out_count): ot_status
function ot_syntax_style_register(ot_context *, const ot_handle *, const uint8_t *name, uint32_t byte_count, const ot_editor_style *, uint32_t *out_id): ot_status
function ot_syntax_style_resolve(ot_context *, const ot_handle *, const uint8_t *name, uint32_t byte_count, uint32_t *out_id): ot_status
function ot_terminal_flush_input(void): ot_status
function ot_text_buffer_append(ot_context *, const ot_handle *, const uint8_t *, uint32_t byte_count): ot_status
function ot_text_buffer_clear(ot_context *, const ot_handle *, uint32_t reset): ot_status
function ot_text_buffer_create(ot_context *, const ot_edit_buffer_options *, ot_handle *out_buffer): ot_status
Resources and ownership
function ot_text_buffer_destroy(ot_context *, const ot_handle *): ot_status
function ot_text_buffer_get_highlights(ot_context *, const ot_handle *, uint32_t line, ot_edit_highlight *, uint32_t capacity, uint32_t *out_count): ot_status
function ot_text_buffer_get_info(ot_context *, const ot_handle *, ot_text_buffer_info *): ot_status
function ot_text_buffer_get_range(ot_context *, const ot_handle *, uint32_t start, uint32_t end, uint8_t *, uint32_t capacity, uint32_t *out_count): ot_status
function ot_text_buffer_get_text(ot_context *, const ot_handle *, uint8_t *, uint32_t capacity, uint32_t *out_count): ot_status
function ot_text_buffer_highlight(ot_context *, const ot_handle *, uint32_t operation, uint32_t argument, const ot_edit_highlight *): ot_status
function ot_text_buffer_replace_styled_batch(ot_context *, const ot_text_buffer_replacement *, uint32_t count, const uint8_t *bytes, uint32_t byte_count, const ot_styled_text_chunk *, uint32_t chunk_count, const uint8_t *urls, uint32_t url_byte_count, ot_text_buffer_replacement_info *out): ot_status
function ot_text_buffer_set_defaults(ot_context *, const ot_handle *, uint32_t mask, const ot_editor_style *): ot_status
function ot_text_buffer_set_styled_text(ot_context *, const ot_handle *, const uint8_t *, uint32_t byte_count, const ot_styled_text_chunk *, uint32_t chunk_count, const uint8_t *urls, uint32_t url_byte_count): ot_status
function ot_text_buffer_set_syntax_style(ot_context *, const ot_handle *, const ot_handle *style): ot_status
function ot_text_buffer_set_tab_width(ot_context *, const ot_handle *, uint32_t width): ot_status
function ot_text_buffer_set_text(ot_context *, const ot_handle *, const uint8_t *, uint32_t byte_count): ot_status
function ot_text_buffer_view_command(ot_context *, const ot_handle *, uint32_t command, uint32_t argument): ot_status
function ot_text_buffer_view_create(ot_context *, const ot_handle *buffer, ot_handle *out_view): ot_status
Resources and ownership
function ot_text_buffer_view_destroy(ot_context *, const ot_handle *): ot_status
function ot_text_buffer_view_get_info(ot_context *, const ot_handle *, ot_editor_view_info *): ot_status
function ot_text_buffer_view_get_lines(ot_context *, const ot_handle *, uint32_t logical, uint32_t first_line, ot_scene_text_line *, uint32_t capacity, ot_editor_measure *): ot_status
function ot_text_buffer_view_get_selected_text(ot_context *, const ot_handle *, uint8_t *, uint32_t capacity, uint32_t *out_count): ot_status
function ot_text_buffer_view_measure(ot_context *, const ot_handle *, uint32_t width, uint32_t height, ot_editor_measure *): ot_status
function ot_text_buffer_view_select(ot_context *, const ot_handle *, const ot_editor_selection *, uint32_t *out_changed): ot_status
function ot_text_buffer_view_set_tab_color(ot_context *, const ot_handle *, const uint16_t color[4]): ot_status
function ot_text_buffer_view_set_viewport(ot_context *, const ot_handle *, const ot_editor_viewport *, uint32_t size_only): ot_status
function ot_unicode_create(ot_context *, const uint8_t *bytes, uint32_t byte_count, uint32_t width_method, ot_handle *out_unicode): ot_status
function ot_unicode_destroy(ot_context *, const ot_handle *unicode): ot_status
function ot_unicode_get(ot_context *, const ot_handle *unicode, ot_unicode_char *characters, uint32_t capacity, uint32_t *out_count): ot_status

Structs#

struct ot_buffer_draw_alpha
  • field ot_buffer_draw_alpha.header: ot_buffer_draw_header, offset 0
  • field ot_buffer_draw_alpha.enabled: uint32_t, offset 16
struct ot_buffer_draw_box
  • field ot_buffer_draw_box.header: ot_buffer_draw_header, offset 0
  • field ot_buffer_draw_box.x: int32_t, offset 16
  • field ot_buffer_draw_box.y: int32_t, offset 20
  • field ot_buffer_draw_box.width: uint32_t, offset 24
  • field ot_buffer_draw_box.height: uint32_t, offset 28
  • field ot_buffer_draw_box.packed_options: uint32_t, offset 32
  • field ot_buffer_draw_box.foreground: uint16_t[4], offset 36
  • field ot_buffer_draw_box.background: uint16_t[4], offset 44
  • field ot_buffer_draw_box.title_color: uint16_t[4], offset 52
  • field ot_buffer_draw_box.border_chars: uint32_t[11], offset 60
struct ot_buffer_draw_cell
  • field ot_buffer_draw_cell.header: ot_buffer_draw_header, offset 0
  • field ot_buffer_draw_cell.x: int32_t, offset 16
  • field ot_buffer_draw_cell.y: int32_t, offset 20
  • field ot_buffer_draw_cell.character: uint32_t, offset 24
  • field ot_buffer_draw_cell.attributes: uint32_t, offset 28
  • field ot_buffer_draw_cell.foreground: uint16_t[4], offset 32
  • field ot_buffer_draw_cell.background: uint16_t[4], offset 40
struct ot_buffer_draw_clear
  • field ot_buffer_draw_clear.header: ot_buffer_draw_header, offset 0
  • field ot_buffer_draw_clear.background: uint16_t[4], offset 16
struct ot_buffer_draw_compose
  • field ot_buffer_draw_compose.header: ot_buffer_draw_header, offset 0
  • field ot_buffer_draw_compose.x: int32_t, offset 16
  • field ot_buffer_draw_compose.y: int32_t, offset 20
  • field ot_buffer_draw_compose.source_x: uint32_t, offset 24
  • field ot_buffer_draw_compose.source_y: uint32_t, offset 28
  • field ot_buffer_draw_compose.source_width: uint32_t, offset 32
  • field ot_buffer_draw_compose.source_height: uint32_t, offset 36
struct ot_buffer_draw_fill
  • field ot_buffer_draw_fill.header: ot_buffer_draw_header, offset 0
  • field ot_buffer_draw_fill.x: int32_t, offset 16
  • field ot_buffer_draw_fill.y: int32_t, offset 20
  • field ot_buffer_draw_fill.width: uint32_t, offset 24
  • field ot_buffer_draw_fill.height: uint32_t, offset 28
  • field ot_buffer_draw_fill.background: uint16_t[4], offset 32
struct ot_buffer_draw_header
  • field ot_buffer_draw_header.struct_size: uint32_t, offset 0
  • field ot_buffer_draw_header.abi_version: uint32_t, offset 4
  • field ot_buffer_draw_header.operation: uint32_t, offset 8
  • field ot_buffer_draw_header.flags: uint32_t, offset 12
struct ot_buffer_draw_text_record
C
  • field ot_buffer_draw_text_record.header: ot_buffer_draw_header, offset 0
  • field ot_buffer_draw_text_record.x: int32_t, offset 16
  • field ot_buffer_draw_text_record.y: int32_t, offset 20
  • field ot_buffer_draw_text_record.attributes: uint32_t, offset 24
  • field ot_buffer_draw_text_record.foreground: uint16_t[4], offset 28
  • field ot_buffer_draw_text_record.background: uint16_t[4], offset 36
struct ot_buffer_grid_options
  • field ot_buffer_grid_options.struct_size: uint32_t, offset 0
  • field ot_buffer_grid_options.abi_version: uint32_t, offset 4
  • field ot_buffer_grid_options.flags: uint32_t, offset 8
  • field ot_buffer_grid_options.reserved: uint32_t, offset 12
  • field ot_buffer_grid_options.foreground: uint16_t[4], offset 16
  • field ot_buffer_grid_options.background: uint16_t[4], offset 24
  • field ot_buffer_grid_options.border_chars: uint32_t[11], offset 32
struct ot_buffer_lease_snapshot
  • field ot_buffer_lease_snapshot.struct_size: uint32_t, offset 0
  • field ot_buffer_lease_snapshot.abi_version: uint32_t, offset 4
  • field ot_buffer_lease_snapshot.lease: ot_handle, offset 8
  • field ot_buffer_lease_snapshot.width: uint32_t, offset 24
  • field ot_buffer_lease_snapshot.height: uint32_t, offset 28
  • field ot_buffer_lease_snapshot.generation: uint64_t, offset 32
  • field ot_buffer_lease_snapshot.char_ptr: uint64_t, offset 40
  • field ot_buffer_lease_snapshot.fg_ptr: uint64_t, offset 48
  • field ot_buffer_lease_snapshot.bg_ptr: uint64_t, offset 56
  • field ot_buffer_lease_snapshot.attributes_ptr: uint64_t, offset 64
  • field ot_buffer_lease_snapshot.reserved: uint64_t, offset 72
struct ot_buffer_options
  • field ot_buffer_options.struct_size: uint32_t, offset 0
  • field ot_buffer_options.abi_version: uint32_t, offset 4
  • field ot_buffer_options.width: uint32_t, offset 8
  • field ot_buffer_options.height: uint32_t, offset 12
  • field ot_buffer_options.width_method: uint32_t, offset 16
  • field ot_buffer_options.flags: uint32_t, offset 20
struct ot_context_error
  • field ot_context_error.struct_size: uint32_t, offset 0
  • field ot_context_error.abi_version: uint32_t, offset 4
  • field ot_context_error.status: ot_status, offset 8
  • field ot_context_error.reserved: uint32_t, offset 12
struct ot_context_options
Resources and ownership
  • field ot_context_options.struct_size: uint32_t, offset 0
  • field ot_context_options.abi_version: uint32_t, offset 4
  • field ot_context_options.flags: uint32_t, offset 8
  • field ot_context_options.object_capacity: uint32_t, offset 12
  • field ot_context_options.render_cells_max: uint32_t, offset 16
  • field ot_context_options.reserved: uint32_t[3], offset 20
struct ot_diagnostic
  • field ot_diagnostic.level: uint32_t, offset 0
  • field ot_diagnostic.message_len: uint32_t, offset 4
  • field ot_diagnostic.flags: uint32_t, offset 8
  • field ot_diagnostic.reserved: uint32_t, offset 12
  • field ot_diagnostic.message: uint8_t[OT_DIAGNOSTIC_MESSAGE_BYTES], offset 16
struct ot_diagnostic_drain
  • field ot_diagnostic_drain.struct_size: uint32_t, offset 0
  • field ot_diagnostic_drain.abi_version: uint32_t, offset 4
  • field ot_diagnostic_drain.count: uint32_t, offset 8
  • field ot_diagnostic_drain.remaining: uint32_t, offset 12
  • field ot_diagnostic_drain.dropped: uint64_t, offset 16
struct ot_edit_buffer_info
  • field ot_edit_buffer_info.struct_size: uint32_t, offset 0
  • field ot_edit_buffer_info.abi_version: uint32_t, offset 4
  • field ot_edit_buffer_info.content_epoch: uint64_t, offset 8
  • field ot_edit_buffer_info.byte_count: uint32_t, offset 16
  • field ot_edit_buffer_info.line_count: uint32_t, offset 20
  • field ot_edit_buffer_info.cursor_row: uint32_t, offset 24
  • field ot_edit_buffer_info.cursor_col: uint32_t, offset 28
  • field ot_edit_buffer_info.cursor_offset: uint32_t, offset 32
  • field ot_edit_buffer_info.can_undo: uint32_t, offset 36
  • field ot_edit_buffer_info.can_redo: uint32_t, offset 40
  • field ot_edit_buffer_info.tab_width: uint32_t, offset 44
struct ot_edit_buffer_options
  • field ot_edit_buffer_options.struct_size: uint32_t, offset 0
  • field ot_edit_buffer_options.abi_version: uint32_t, offset 4
  • field ot_edit_buffer_options.width_method: uint32_t, offset 8
  • field ot_edit_buffer_options.reserved: uint32_t, offset 12
struct ot_edit_highlight
  • field ot_edit_highlight.start: uint32_t, offset 0
  • field ot_edit_highlight.end: uint32_t, offset 4
  • field ot_edit_highlight.style_id: uint32_t, offset 8
  • field ot_edit_highlight.priority: uint32_t, offset 12
  • field ot_edit_highlight.ref: uint32_t, offset 16
struct ot_edit_position
  • field ot_edit_position.struct_size: uint32_t, offset 0
  • field ot_edit_position.abi_version: uint32_t, offset 4
  • field ot_edit_position.valid: uint32_t, offset 8
  • field ot_edit_position.row: uint32_t, offset 12
  • field ot_edit_position.col: uint32_t, offset 16
  • field ot_edit_position.offset: uint32_t, offset 20
struct ot_editor_measure
  • field ot_editor_measure.struct_size: uint32_t, offset 0
  • field ot_editor_measure.abi_version: uint32_t, offset 4
  • field ot_editor_measure.line_count: uint32_t, offset 8
  • field ot_editor_measure.width_cols_max: uint32_t, offset 12
struct ot_editor_position
  • field ot_editor_position.struct_size: uint32_t, offset 0
  • field ot_editor_position.abi_version: uint32_t, offset 4
  • field ot_editor_position.visual_row: uint32_t, offset 8
  • field ot_editor_position.visual_col: uint32_t, offset 12
  • field ot_editor_position.logical_row: uint32_t, offset 16
  • field ot_editor_position.logical_col: uint32_t, offset 20
  • field ot_editor_position.offset: uint32_t, offset 24
struct ot_editor_selection
  • field ot_editor_selection.struct_size: uint32_t, offset 0
  • field ot_editor_selection.abi_version: uint32_t, offset 4
  • field ot_editor_selection.operation: uint32_t, offset 8
  • field ot_editor_selection.behavior: uint32_t, offset 12
  • field ot_editor_selection.start: uint32_t, offset 16
  • field ot_editor_selection.end: uint32_t, offset 20
  • field ot_editor_selection.anchor_x: int32_t, offset 24
  • field ot_editor_selection.anchor_y: int32_t, offset 28
  • field ot_editor_selection.focus_x: int32_t, offset 32
  • field ot_editor_selection.focus_y: int32_t, offset 36
  • field ot_editor_selection.update_cursor: uint32_t, offset 40
  • field ot_editor_selection.follow_cursor: uint32_t, offset 44
  • field ot_editor_selection.flags: uint32_t, offset 48
  • field ot_editor_selection.reserved: uint32_t, offset 52
  • field ot_editor_selection.foreground: uint16_t[4], offset 56
  • field ot_editor_selection.background: uint16_t[4], offset 64
struct ot_editor_style
  • field ot_editor_style.struct_size: uint32_t, offset 0
  • field ot_editor_style.abi_version: uint32_t, offset 4
  • field ot_editor_style.flags: uint32_t, offset 8
  • field ot_editor_style.attributes: uint32_t, offset 12
  • field ot_editor_style.foreground: uint16_t[4], offset 16
  • field ot_editor_style.background: uint16_t[4], offset 24
struct ot_editor_view_info
  • field ot_editor_view_info.struct_size: uint32_t, offset 0
  • field ot_editor_view_info.abi_version: uint32_t, offset 4
  • field ot_editor_view_info.virtual_line_count: uint32_t, offset 8
  • field ot_editor_view_info.total_virtual_line_count: uint32_t, offset 12
  • field ot_editor_view_info.selection_present: uint32_t, offset 16
  • field ot_editor_view_info.selection_start: uint32_t, offset 20
  • field ot_editor_view_info.selection_end: uint32_t, offset 24
  • field ot_editor_view_info.selection_occupancy: uint32_t, offset 28
struct ot_editor_viewport
  • field ot_editor_viewport.struct_size: uint32_t, offset 0
  • field ot_editor_viewport.abi_version: uint32_t, offset 4
  • field ot_editor_viewport.x: uint32_t, offset 8
  • field ot_editor_viewport.y: uint32_t, offset 12
  • field ot_editor_viewport.width: uint32_t, offset 16
  • field ot_editor_viewport.height: uint32_t, offset 20
struct ot_embedded_terminal_cursor
  • field ot_embedded_terminal_cursor.struct_size: uint32_t, offset 0
  • field ot_embedded_terminal_cursor.abi_version: uint32_t, offset 4
  • field ot_embedded_terminal_cursor.x: uint32_t, offset 8
  • field ot_embedded_terminal_cursor.y: uint32_t, offset 12
  • field ot_embedded_terminal_cursor.has_value: uint32_t, offset 16
  • field ot_embedded_terminal_cursor.visible: uint32_t, offset 20
  • field ot_embedded_terminal_cursor.blinking: uint32_t, offset 24
  • field ot_embedded_terminal_cursor.wide_tail: uint32_t, offset 28
  • field ot_embedded_terminal_cursor.style: uint32_t, offset 32
  • field ot_embedded_terminal_cursor.color_has_value: uint32_t, offset 36
  • field ot_embedded_terminal_cursor.color_r: uint32_t, offset 40
  • field ot_embedded_terminal_cursor.color_g: uint32_t, offset 44
  • field ot_embedded_terminal_cursor.color_b: uint32_t, offset 48
  • field ot_embedded_terminal_cursor.reserved: uint32_t, offset 52
struct ot_embedded_terminal_key
  • field ot_embedded_terminal_key.struct_size: uint32_t, offset 0
  • field ot_embedded_terminal_key.abi_version: uint32_t, offset 4
  • field ot_embedded_terminal_key.action: uint32_t, offset 8
  • field ot_embedded_terminal_key.composing: uint32_t, offset 12
  • field ot_embedded_terminal_key.mods: uint32_t, offset 16
  • field ot_embedded_terminal_key.consumed_mods: uint32_t, offset 20
  • field ot_embedded_terminal_key.unshifted_codepoint: uint32_t, offset 24
  • field ot_embedded_terminal_key.reserved: uint32_t, offset 28
struct ot_embedded_terminal_mouse
  • field ot_embedded_terminal_mouse.struct_size: uint32_t, offset 0
  • field ot_embedded_terminal_mouse.abi_version: uint32_t, offset 4
  • field ot_embedded_terminal_mouse.action: uint32_t, offset 8
  • field ot_embedded_terminal_mouse.button: int32_t, offset 12
  • field ot_embedded_terminal_mouse.mods: uint32_t, offset 16
  • field ot_embedded_terminal_mouse.any_button_pressed: uint32_t, offset 20
  • field ot_embedded_terminal_mouse.x: float, offset 24
  • field ot_embedded_terminal_mouse.y: float, offset 28
struct ot_embedded_terminal_options
  • field ot_embedded_terminal_options.struct_size: uint32_t, offset 0
  • field ot_embedded_terminal_options.abi_version: uint32_t, offset 4
  • field ot_embedded_terminal_options.cols: uint32_t, offset 8
  • field ot_embedded_terminal_options.rows: uint32_t, offset 12
  • field ot_embedded_terminal_options.max_scrollback: uint32_t, offset 16
  • field ot_embedded_terminal_options.reserved: uint32_t, offset 20
struct ot_handle
Resources and ownership
  • field ot_handle.context_id: uint64_t, offset 0
  • field ot_handle.slot: uint32_t, offset 8
  • field ot_handle.generation: uint32_t, offset 12
struct ot_image_draw_options
  • field ot_image_draw_options.struct_size: uint32_t, offset 0
  • field ot_image_draw_options.abi_version: uint32_t, offset 4
  • field ot_image_draw_options.flags: uint32_t, offset 8
  • field ot_image_draw_options.protocol: uint32_t, offset 12
  • field ot_image_draw_options.x: int32_t, offset 16
  • field ot_image_draw_options.y: int32_t, offset 20
  • field ot_image_draw_options.width: uint32_t, offset 24
  • field ot_image_draw_options.height: uint32_t, offset 28
  • field ot_image_draw_options.pixel_width: uint32_t, offset 32
  • field ot_image_draw_options.pixel_height: uint32_t, offset 36
  • field ot_image_draw_options.source_x: uint32_t, offset 40
  • field ot_image_draw_options.source_y: uint32_t, offset 44
  • field ot_image_draw_options.source_width: uint32_t, offset 48
  • field ot_image_draw_options.source_height: uint32_t, offset 52
  • field ot_image_draw_options.reserved: uint32_t[2], offset 56
struct ot_image_info
  • field ot_image_info.width: uint32_t, offset 0
  • field ot_image_info.height: uint32_t, offset 4
  • field ot_image_info.source_width: uint32_t, offset 8
  • field ot_image_info.source_height: uint32_t, offset 12
  • field ot_image_info.format: uint32_t, offset 16
  • field ot_image_info.color_status: uint32_t, offset 20
  • field ot_image_info.orientation: uint32_t, offset 24
  • field ot_image_info.has_alpha: uint32_t, offset 28
struct ot_image_pixels
  • field ot_image_pixels.lease: ot_handle, offset 0
  • field ot_image_pixels.pixels: uint64_t, offset 16
  • field ot_image_pixels.byte_count: uint64_t, offset 24
struct ot_output_ticket
Frames and output
  • field ot_output_ticket.session: ot_handle, offset 0
  • field ot_output_ticket.request_id: uint64_t, offset 16
  • field ot_output_ticket.byte_count: uint32_t, offset 24
  • field ot_output_ticket.reserved: uint32_t, offset 28
struct ot_scene_arrow_options
  • field ot_scene_arrow_options.struct_size: uint32_t, offset 0
  • field ot_scene_arrow_options.abi_version: uint32_t, offset 4
  • field ot_scene_arrow_options.direction: uint32_t, offset 8
  • field ot_scene_arrow_options.attributes: uint32_t, offset 12
  • field ot_scene_arrow_options.foreground: uint16_t[4], offset 16
  • field ot_scene_arrow_options.background: uint16_t[4], offset 24
struct ot_scene_box_details
  • field ot_scene_box_details.struct_size: uint32_t, offset 0
  • field ot_scene_box_details.abi_version: uint32_t, offset 4
  • field ot_scene_box_details.title_alignment: uint32_t, offset 8
  • field ot_scene_box_details.bottom_title_alignment: uint32_t, offset 12
  • field ot_scene_box_details.flags: uint32_t, offset 16
  • field ot_scene_box_details.reserved: uint32_t, offset 20
  • field ot_scene_box_details.title_color: uint16_t[4], offset 24
  • field ot_scene_box_details.border_characters: uint32_t[11], offset 32
struct ot_scene_cursor_state
  • field ot_scene_cursor_state.struct_size: uint32_t, offset 0
  • field ot_scene_cursor_state.abi_version: uint32_t, offset 4
  • field ot_scene_cursor_state.x: uint32_t, offset 8
  • field ot_scene_cursor_state.y: uint32_t, offset 12
  • field ot_scene_cursor_state.visible: uint32_t, offset 16
  • field ot_scene_cursor_state.style: uint32_t, offset 20
  • field ot_scene_cursor_state.blinking: uint32_t, offset 24
  • field ot_scene_cursor_state.reserved: uint32_t, offset 28
  • field ot_scene_cursor_state.r: float, offset 32
  • field ot_scene_cursor_state.g: float, offset 36
  • field ot_scene_cursor_state.b: float, offset 40
  • field ot_scene_cursor_state.a: float, offset 44
struct ot_scene_editor_options
  • field ot_scene_editor_options.struct_size: uint32_t, offset 0
  • field ot_scene_editor_options.abi_version: uint32_t, offset 4
  • field ot_scene_editor_options.show_cursor: uint32_t, offset 8
  • field ot_scene_editor_options.style: uint32_t, offset 12
  • field ot_scene_editor_options.blinking: uint32_t, offset 16
  • field ot_scene_editor_options.reserved: uint32_t, offset 20
  • field ot_scene_editor_options.color: uint16_t[4], offset 24
  • field ot_scene_editor_options.mouse_pointer: uint32_t, offset 32
  • field ot_scene_editor_options.reserved2: uint32_t, offset 36
struct ot_scene_frame_geometry
Frames and output
  • field ot_scene_frame_geometry.struct_size: uint32_t, offset 0
  • field ot_scene_frame_geometry.abi_version: uint32_t, offset 4
  • field ot_scene_frame_geometry.flags: uint32_t, offset 8
  • field ot_scene_frame_geometry.reserved: uint32_t, offset 12
  • field ot_scene_frame_geometry.paint: ot_scene_layout, offset 16
  • field ot_scene_frame_geometry.public_layout: ot_scene_layout, offset 64
struct ot_scene_frame_options
Frames and output
  • field ot_scene_frame_options.struct_size: uint32_t, offset 0
  • field ot_scene_frame_options.abi_version: uint32_t, offset 4
  • field ot_scene_frame_options.background: uint16_t[4], offset 8
  • field ot_scene_frame_options.use_mouse: uint32_t, offset 16
  • field ot_scene_frame_options.excluded_hit_num: uint32_t, offset 20
  • field ot_scene_frame_options.max_layout_rounds: uint32_t, offset 24
  • field ot_scene_frame_options.max_host_requests: uint32_t, offset 28
  • field ot_scene_frame_options.preserve_unwritten: uint32_t, offset 32
struct ot_scene_frame_request
Frames and output
  • field ot_scene_frame_request.struct_size: uint32_t, offset 0
  • field ot_scene_frame_request.abi_version: uint32_t, offset 4
  • field ot_scene_frame_request.session: ot_handle, offset 8
  • field ot_scene_frame_request.root: ot_handle, offset 24
  • field ot_scene_frame_request.node: ot_handle, offset 40
  • field ot_scene_frame_request.frame_id: uint64_t, offset 56
  • field ot_scene_frame_request.request_id: uint64_t, offset 64
  • field ot_scene_frame_request.layout_epoch: uint64_t, offset 72
  • field ot_scene_frame_request.hook_generation: uint64_t, offset 80
  • field ot_scene_frame_request.kind: uint32_t, offset 88
  • field ot_scene_frame_request.num: uint32_t, offset 92
  • field ot_scene_frame_request.width: uint32_t, offset 96
  • field ot_scene_frame_request.height: uint32_t, offset 100
  • field ot_scene_frame_request.reserved: uint32_t[2], offset 104
struct ot_scene_hooks
Frames and output
  • field ot_scene_hooks.struct_size: uint32_t, offset 0
  • field ot_scene_hooks.abi_version: uint32_t, offset 4
  • field ot_scene_hooks.flags: uint32_t, offset 8
  • field ot_scene_hooks.reserved: uint32_t, offset 12
  • field ot_scene_hooks.generation: uint64_t, offset 16
  • field ot_scene_hooks.initial_width: double, offset 24
  • field ot_scene_hooks.initial_height: double, offset 32
struct ot_scene_layout
  • field ot_scene_layout.struct_size: uint32_t, offset 0
  • field ot_scene_layout.abi_version: uint32_t, offset 4
  • field ot_scene_layout.left: float, offset 8
  • field ot_scene_layout.top: float, offset 12
  • field ot_scene_layout.right: float, offset 16
  • field ot_scene_layout.bottom: float, offset 20
  • field ot_scene_layout.width: float, offset 24
  • field ot_scene_layout.height: float, offset 28
  • field ot_scene_layout.screen_x: double, offset 32
  • field ot_scene_layout.screen_y: double, offset 40
struct ot_scene_paint_options
C
  • field ot_scene_paint_options.struct_size: uint32_t, offset 0
  • field ot_scene_paint_options.abi_version: uint32_t, offset 4
  • field ot_scene_paint_options.z_index: int32_t, offset 8
  • field ot_scene_paint_options.opacity: float, offset 12
  • field ot_scene_paint_options.translate_x: double, offset 16
  • field ot_scene_paint_options.translate_y: double, offset 24
  • field ot_scene_paint_options.border_sides: uint32_t, offset 32
  • field ot_scene_paint_options.should_fill: uint32_t, offset 36
  • field ot_scene_paint_options.background: uint16_t[4], offset 40
  • field ot_scene_paint_options.border_color: uint16_t[4], offset 48
  • field ot_scene_paint_options.border_style: uint32_t, offset 56
  • field ot_scene_paint_options.focusable: uint32_t, offset 60
  • field ot_scene_paint_options.focused_border_color: uint16_t[4], offset 64
  • field ot_scene_paint_options.reserved: uint32_t, offset 72
struct ot_scene_paint_slot
Frames and output
  • field ot_scene_paint_slot.node: ot_handle, offset 0
  • field ot_scene_paint_slot.hook_generation: uint64_t, offset 16
  • field ot_scene_paint_slot.num: uint32_t, offset 24
  • field ot_scene_paint_slot.hooks: uint32_t, offset 28
  • field ot_scene_paint_slot.clip_x: int32_t, offset 32
  • field ot_scene_paint_slot.clip_y: int32_t, offset 36
  • field ot_scene_paint_slot.clip_width: uint32_t, offset 40
  • field ot_scene_paint_slot.clip_height: uint32_t, offset 44
  • field ot_scene_paint_slot.opacity: float, offset 48
  • field ot_scene_paint_slot.flags: uint32_t, offset 52
  • field ot_scene_paint_slot.paint: ot_scene_layout, offset 56
  • field ot_scene_paint_slot.public_layout: ot_scene_layout, offset 104
struct ot_scene_property_update
  • field ot_scene_property_update.node: ot_handle, offset 0
  • field ot_scene_property_update.fields: uint32_t, offset 16
  • field ot_scene_property_update.size_bytes: uint32_t, offset 20
struct ot_scene_record_color_matrix
  • field ot_scene_record_color_matrix.header: ot_scene_record_header, offset 0
  • field ot_scene_record_color_matrix.matrix: float[16], offset 8
  • field ot_scene_record_color_matrix.strength: float, offset 72
  • field ot_scene_record_color_matrix.channel: uint32_t, offset 76
  • field ot_scene_record_color_matrix.has_mask: uint32_t, offset 80
  • field ot_scene_record_color_matrix.mask_count: uint32_t, offset 84
struct ot_scene_record_draw
C
  • field ot_scene_record_draw.header: ot_scene_record_header, offset 0
  • field ot_scene_record_draw.source: ot_handle, offset 8
  • field ot_scene_record_draw.text_length: uint32_t, offset 24
  • field ot_scene_record_draw.bottom_length: uint32_t, offset 28
struct ot_scene_record_grayscale
  • field ot_scene_record_grayscale.header: ot_scene_record_header, offset 0
  • field ot_scene_record_grayscale.x: int32_t, offset 8
  • field ot_scene_record_grayscale.y: int32_t, offset 12
  • field ot_scene_record_grayscale.width: uint32_t, offset 16
  • field ot_scene_record_grayscale.height: uint32_t, offset 20
  • field ot_scene_record_grayscale.flags: uint32_t, offset 24
  • field ot_scene_record_grayscale.sample_count: uint32_t, offset 28
  • field ot_scene_record_grayscale.foreground: uint16_t[4], offset 32
  • field ot_scene_record_grayscale.background: uint16_t[4], offset 40
struct ot_scene_record_grid
  • field ot_scene_record_grid.header: ot_scene_record_header, offset 0
  • field ot_scene_record_grid.options: ot_buffer_grid_options, offset 8
  • field ot_scene_record_grid.column_count: uint32_t, offset 84
  • field ot_scene_record_grid.row_count: uint32_t, offset 88
struct ot_scene_record_header
Frames and output
  • field ot_scene_record_header.size: uint32_t, offset 0
  • field ot_scene_record_header.operation: uint32_t, offset 4
struct ot_scene_record_image
  • field ot_scene_record_image.header: ot_scene_record_header, offset 0
  • field ot_scene_record_image.image: ot_handle, offset 8
  • field ot_scene_record_image.options: ot_image_draw_options, offset 24
struct ot_scene_record_packed
  • field ot_scene_record_packed.header: ot_scene_record_header, offset 0
  • field ot_scene_record_packed.x: int32_t, offset 8
  • field ot_scene_record_packed.y: int32_t, offset 12
  • field ot_scene_record_packed.width: uint32_t, offset 16
  • field ot_scene_record_packed.height: uint32_t, offset 20
  • field ot_scene_record_packed.byte_count: uint32_t, offset 24
  • field ot_scene_record_packed.reserved: uint32_t, offset 28
struct ot_scene_record_slot
C
  • field ot_scene_record_slot.header: ot_scene_record_header, offset 0
  • field ot_scene_record_slot.slot: uint32_t, offset 8
  • field ot_scene_record_slot.phase: uint32_t, offset 12
struct ot_scene_record_stack
  • field ot_scene_record_stack.header: ot_scene_record_header, offset 0
  • field ot_scene_record_stack.operation: uint32_t, offset 8
  • field ot_scene_record_stack.x: int32_t, offset 12
  • field ot_scene_record_stack.y: int32_t, offset 16
  • field ot_scene_record_stack.width: uint32_t, offset 20
  • field ot_scene_record_stack.height: uint32_t, offset 24
  • field ot_scene_record_stack.opacity: float, offset 28
struct ot_scene_record_supersample
  • field ot_scene_record_supersample.header: ot_scene_record_header, offset 0
  • field ot_scene_record_supersample.x: int32_t, offset 8
  • field ot_scene_record_supersample.y: int32_t, offset 12
  • field ot_scene_record_supersample.format: uint32_t, offset 16
  • field ot_scene_record_supersample.stride: uint32_t, offset 20
  • field ot_scene_record_supersample.byte_count: uint32_t, offset 24
  • field ot_scene_record_supersample.reserved: uint32_t, offset 28
struct ot_scene_record_unicode
  • field ot_scene_record_unicode.header: ot_scene_record_header, offset 0
  • field ot_scene_record_unicode.unicode: ot_handle, offset 8
  • field ot_scene_record_unicode.index: uint32_t, offset 24
  • field ot_scene_record_unicode.x: int32_t, offset 28
  • field ot_scene_record_unicode.y: int32_t, offset 32
  • field ot_scene_record_unicode.attributes: uint32_t, offset 36
  • field ot_scene_record_unicode.foreground: uint16_t[4], offset 40
  • field ot_scene_record_unicode.background: uint16_t[4], offset 48
struct ot_scene_record_view
  • field ot_scene_record_view.header: ot_scene_record_header, offset 0
  • field ot_scene_record_view.source: ot_handle, offset 8
  • field ot_scene_record_view.x: int32_t, offset 24
  • field ot_scene_record_view.y: int32_t, offset 28
struct ot_scene_slider_options
  • field ot_scene_slider_options.struct_size: uint32_t, offset 0
  • field ot_scene_slider_options.abi_version: uint32_t, offset 4
  • field ot_scene_slider_options.orientation: uint32_t, offset 8
  • field ot_scene_slider_options.reserved: uint32_t, offset 12
  • field ot_scene_slider_options.min: double, offset 16
  • field ot_scene_slider_options.max: double, offset 24
  • field ot_scene_slider_options.value: double, offset 32
  • field ot_scene_slider_options.viewport_size: double, offset 40
  • field ot_scene_slider_options.foreground: uint16_t[4], offset 48
  • field ot_scene_slider_options.background: uint16_t[4], offset 56
struct ot_scene_slider_thumb
  • field ot_scene_slider_thumb.struct_size: uint32_t, offset 0
  • field ot_scene_slider_thumb.abi_version: uint32_t, offset 4
  • field ot_scene_slider_thumb.size: double, offset 8
  • field ot_scene_slider_thumb.start: double, offset 16
struct ot_scene_stats
  • field ot_scene_stats.struct_size: uint32_t, offset 0
  • field ot_scene_stats.abi_version: uint32_t, offset 4
  • field ot_scene_stats.last_frame_time: double, offset 8
  • field ot_scene_stats.average_frame_time: double, offset 16
  • field ot_scene_stats.render_time: double, offset 24
  • field ot_scene_stats.stdout_write_time: double, offset 32
  • field ot_scene_stats.frame_count: uint64_t, offset 40
  • field ot_scene_stats.cells_updated: uint32_t, offset 48
  • field ot_scene_stats.average_cells_updated: uint32_t, offset 52
  • field ot_scene_stats.render_time_valid: uint32_t, offset 56
  • field ot_scene_stats.stdout_write_time_valid: uint32_t, offset 60
struct ot_scene_style_property
  • field ot_scene_style_property.group: uint8_t, offset 0
  • field ot_scene_style_property.kind: uint8_t, offset 1
  • field ot_scene_style_property.edge: uint8_t, offset 2
  • field ot_scene_style_property.unit: uint8_t, offset 3
  • field ot_scene_style_property.flags: uint32_t, offset 4
  • field ot_scene_style_property.value: float, offset 8
  • field ot_scene_style_property.reserved: uint32_t, offset 12
struct ot_scene_style_value
  • field ot_scene_style_value.struct_size: uint32_t, offset 0
  • field ot_scene_style_value.abi_version: uint32_t, offset 4
  • field ot_scene_style_value.unit: uint32_t, offset 8
  • field ot_scene_style_value.value: float, offset 12
struct ot_scene_text_info
Resources and ownership
  • field ot_scene_text_info.struct_size: uint32_t, offset 0
  • field ot_scene_text_info.abi_version: uint32_t, offset 4
  • field ot_scene_text_info.byte_count: uint32_t, offset 8
  • field ot_scene_text_info.text_length: uint32_t, offset 12
  • field ot_scene_text_info.line_count: uint32_t, offset 16
  • field ot_scene_text_info.virtual_line_count: uint32_t, offset 20
  • field ot_scene_text_info.width_cols_max: uint32_t, offset 24
  • field ot_scene_text_info.reserved: uint32_t, offset 28
struct ot_scene_text_line
  • field ot_scene_text_line.start_cols: uint32_t, offset 0
  • field ot_scene_text_line.width_cols: uint32_t, offset 4
  • field ot_scene_text_line.source_line: uint32_t, offset 8
  • field ot_scene_text_line.wrap_index: uint32_t, offset 12
struct ot_scene_text_options
  • field ot_scene_text_options.struct_size: uint32_t, offset 0
  • field ot_scene_text_options.abi_version: uint32_t, offset 4
  • field ot_scene_text_options.foreground: uint16_t[4], offset 8
  • field ot_scene_text_options.background: uint16_t[4], offset 16
  • field ot_scene_text_options.attributes: uint32_t, offset 24
  • field ot_scene_text_options.wrap_mode: uint32_t, offset 28
  • field ot_scene_text_options.truncate: uint32_t, offset 32
  • field ot_scene_text_options.first_line_offset: uint32_t, offset 36
  • field ot_scene_text_options.scroll_x: double, offset 40
  • field ot_scene_text_options.scroll_y: double, offset 48
  • field ot_scene_text_options.tab_indicator: uint32_t, offset 56
  • field ot_scene_text_options.tab_color_set: uint32_t, offset 60
  • field ot_scene_text_options.tab_color: uint16_t[4], offset 64
  • field ot_scene_text_options.text_align: uint32_t, offset 72
struct ot_scene_text_selection_options
  • field ot_scene_text_selection_options.struct_size: uint32_t, offset 0
  • field ot_scene_text_selection_options.abi_version: uint32_t, offset 4
  • field ot_scene_text_selection_options.operation: uint32_t, offset 8
  • field ot_scene_text_selection_options.behavior: uint32_t, offset 12
  • field ot_scene_text_selection_options.anchor_x: int32_t, offset 16
  • field ot_scene_text_selection_options.anchor_y: int32_t, offset 20
  • field ot_scene_text_selection_options.focus_x: int32_t, offset 24
  • field ot_scene_text_selection_options.focus_y: int32_t, offset 28
  • field ot_scene_text_selection_options.flags: uint32_t, offset 32
  • field ot_scene_text_selection_options.reserved: uint32_t, offset 36
  • field ot_scene_text_selection_options.background: uint16_t[4], offset 40
  • field ot_scene_text_selection_options.foreground: uint16_t[4], offset 48
struct ot_session_capabilities
  • field ot_session_capabilities.struct_size: uint32_t, offset 0
  • field ot_session_capabilities.abi_version: uint32_t, offset 4
  • field ot_session_capabilities.flags: uint32_t, offset 8
  • field ot_session_capabilities.width_method: uint32_t, offset 12
  • field ot_session_capabilities.multiplexer: uint32_t, offset 16
  • field ot_session_capabilities.image_protocol: uint32_t, offset 20
  • field ot_session_capabilities.osc52_support: uint32_t, offset 24
  • field ot_session_capabilities.kitty_keyboard_flags: uint32_t, offset 28
  • field ot_session_capabilities.term_name_len: uint32_t, offset 32
  • field ot_session_capabilities.term_version_len: uint32_t, offset 36
  • field ot_session_capabilities.term_from_xtversion: uint32_t, offset 40
  • field ot_session_capabilities.reserved: uint32_t, offset 44
  • field ot_session_capabilities.term_name: uint8_t[64], offset 48
  • field ot_session_capabilities.term_version: uint8_t[32], offset 112
struct ot_session_control_options
  • field ot_session_control_options.struct_size: uint32_t, offset 0
  • field ot_session_control_options.abi_version: uint32_t, offset 4
  • field ot_session_control_options.kind: uint32_t, offset 8
  • field ot_session_control_options.argument: uint32_t, offset 12
  • field ot_session_control_options.reserved: uint32_t, offset 16
struct ot_session_cursor_update
  • field ot_session_cursor_update.fields: uint32_t, offset 0
  • field ot_session_cursor_update.x: int32_t, offset 4
  • field ot_session_cursor_update.y: int32_t, offset 8
  • field ot_session_cursor_update.visible: uint8_t, offset 12
  • field ot_session_cursor_update.style: uint8_t, offset 13
  • field ot_session_cursor_update.blinking: uint8_t, offset 14
  • field ot_session_cursor_update.mouse_pointer: uint8_t, offset 15
  • field ot_session_cursor_update.color: uint16_t[4], offset 16
struct ot_session_kitty_image_transport
  • field ot_session_kitty_image_transport.struct_size: uint32_t, offset 0
  • field ot_session_kitty_image_transport.abi_version: uint32_t, offset 4
  • field ot_session_kitty_image_transport.requested: uint32_t, offset 8
  • field ot_session_kitty_image_transport.effective: uint32_t, offset 12
  • field ot_session_kitty_image_transport.file_state: uint32_t, offset 16
  • field ot_session_kitty_image_transport.fallback: uint32_t, offset 20
  • field ot_session_kitty_image_transport.pending_files: uint32_t, offset 24
  • field ot_session_kitty_image_transport.pending_bytes: uint32_t, offset 28
struct ot_session_options
Resources and ownership
  • field ot_session_options.struct_size: uint32_t, offset 0
  • field ot_session_options.abi_version: uint32_t, offset 4
  • field ot_session_options.chunk_size: uint32_t, offset 8
  • field ot_session_options.span_capacity: uint32_t, offset 12
  • field ot_session_options.max_bytes: uint64_t, offset 16
  • field ot_session_options.control_capacity: uint32_t, offset 24
  • field ot_session_options.reserved: uint32_t, offset 28
struct ot_session_pump_result
  • field ot_session_pump_result.struct_size: uint32_t, offset 0
  • field ot_session_pump_result.abi_version: uint32_t, offset 4
  • field ot_session_pump_result.status: uint32_t, offset 8
  • field ot_session_pump_result.reserved: uint32_t, offset 12
  • field ot_session_pump_result.deadline_ns: uint64_t, offset 16
struct ot_session_renderer_env_options
  • field ot_session_renderer_env_options.struct_size: uint32_t, offset 0
  • field ot_session_renderer_env_options.abi_version: uint32_t, offset 4
  • field ot_session_renderer_env_options.width: uint32_t, offset 8
  • field ot_session_renderer_env_options.height: uint32_t, offset 12
  • field ot_session_renderer_env_options.remote_mode: uint32_t, offset 16
  • field ot_session_renderer_env_options.entry_count: uint32_t, offset 20
  • field ot_session_renderer_env_options.byte_count: uint32_t, offset 24
  • field ot_session_renderer_env_options.reserved: uint32_t, offset 28
struct ot_session_renderer_options
Resources and ownership
  • field ot_session_renderer_options.struct_size: uint32_t, offset 0
  • field ot_session_renderer_options.abi_version: uint32_t, offset 4
  • field ot_session_renderer_options.width: uint32_t, offset 8
  • field ot_session_renderer_options.height: uint32_t, offset 12
  • field ot_session_renderer_options.remote: uint32_t, offset 16
  • field ot_session_renderer_options.reserved: uint32_t, offset 20
struct ot_session_renderer_state
  • field ot_session_renderer_state.struct_size: uint32_t, offset 0
  • field ot_session_renderer_state.abi_version: uint32_t, offset 4
  • field ot_session_renderer_state.width: uint32_t, offset 8
  • field ot_session_renderer_state.height: uint32_t, offset 12
  • field ot_session_renderer_state.frame_count: uint64_t, offset 16
  • field ot_session_renderer_state.frame_pending: uint32_t, offset 24
  • field ot_session_renderer_state.reserved: uint32_t, offset 28
struct ot_session_terminal_options
  • field ot_session_terminal_options.struct_size: uint32_t, offset 0
  • field ot_session_terminal_options.abi_version: uint32_t, offset 4
  • field ot_session_terminal_options.flags: uint32_t, offset 8
  • field ot_session_terminal_options.kitty_keyboard_flags: uint32_t, offset 12
struct ot_split_control
  • field ot_split_control.struct_size: uint32_t, offset 0
  • field ot_split_control.abi_version: uint32_t, offset 4
  • field ot_split_control.command: uint32_t, offset 8
  • field ot_split_control.arguments: uint32_t[6], offset 12
struct ot_split_snapshot
  • field ot_split_snapshot.buffer: ot_handle, offset 0
  • field ot_split_snapshot.row_columns: uint32_t, offset 16
  • field ot_split_snapshot.flags: uint32_t, offset 20
struct ot_styled_text_chunk
Resources and ownership
  • field ot_styled_text_chunk.struct_size: uint32_t, offset 0
  • field ot_styled_text_chunk.abi_version: uint32_t, offset 4
  • field ot_styled_text_chunk.byte_count: uint32_t, offset 8
  • field ot_styled_text_chunk.flags: uint32_t, offset 12
  • field ot_styled_text_chunk.foreground: uint16_t[4], offset 16
  • field ot_styled_text_chunk.background: uint16_t[4], offset 24
  • field ot_styled_text_chunk.attributes: uint32_t, offset 32
  • field ot_styled_text_chunk.reserved: uint32_t, offset 36
  • field ot_styled_text_chunk.link_offset: uint32_t, offset 40
  • field ot_styled_text_chunk.link_byte_count: uint32_t, offset 44
struct ot_text_buffer_info
  • field ot_text_buffer_info.struct_size: uint32_t, offset 0
  • field ot_text_buffer_info.abi_version: uint32_t, offset 4
  • field ot_text_buffer_info.content_epoch: uint64_t, offset 8
  • field ot_text_buffer_info.byte_count: uint32_t, offset 16
  • field ot_text_buffer_info.text_length: uint32_t, offset 20
  • field ot_text_buffer_info.line_count: uint32_t, offset 24
  • field ot_text_buffer_info.highlight_count: uint32_t, offset 28
  • field ot_text_buffer_info.tab_width: uint32_t, offset 32
  • field ot_text_buffer_info.reserved: uint32_t, offset 36
struct ot_text_buffer_replacement
  • field ot_text_buffer_replacement.struct_size: uint32_t, offset 0
  • field ot_text_buffer_replacement.abi_version: uint32_t, offset 4
  • field ot_text_buffer_replacement.buffer: ot_handle, offset 8
  • field ot_text_buffer_replacement.view: ot_handle, offset 24
  • field ot_text_buffer_replacement.byte_offset: uint32_t, offset 40
  • field ot_text_buffer_replacement.byte_count: uint32_t, offset 44
  • field ot_text_buffer_replacement.chunk_offset: uint32_t, offset 48
  • field ot_text_buffer_replacement.chunk_count: uint32_t, offset 52
struct ot_text_buffer_replacement_info
  • field ot_text_buffer_replacement_info.text_length: uint32_t, offset 0
  • field ot_text_buffer_replacement_info.byte_count: uint32_t, offset 4
struct ot_unicode_char
  • field ot_unicode_char.width: uint32_t, offset 0
  • field ot_unicode_char.character: uint32_t, offset 4

Types#

type ot_context = struct ot_context
Resources and ownership
type ot_edit_event_callback = void (*)(uint64_t context_id, uint32_t slot, uint32_t generation, uint32_t event)
How Core uses native
type ot_output_write_callback = int64_t (*)(void *user_data, const uint8_t *bytes, uint32_t byte_count)
type ot_scene_measure_callback = void (*)(uint64_t context_id, uint32_t slot, uint32_t generation, float width, uint32_t width_mode, float height, uint32_t height_mode, float *out_size)
Frames and output
type ot_status = int32_t
C

Constants and variables#

const OT_ALIGN_AUTO = 0
const OT_ALIGN_BASELINE = 5
const OT_ALIGN_CENTER = 2
const OT_ALIGN_FLEX_END = 3
const OT_ALIGN_FLEX_START = 1
const OT_ALIGN_SPACE_AROUND = 7
const OT_ALIGN_SPACE_BETWEEN = 6
const OT_ALIGN_SPACE_EVENLY = 8
const OT_ALIGN_STRETCH = 4
const OT_BORDER_ALL = 15
const OT_BORDER_BOTTOM = 2
const OT_BORDER_DOUBLE = 1
const OT_BORDER_HEAVY = 3
const OT_BORDER_LEFT = 1
const OT_BORDER_NONE = 0
const OT_BORDER_RIGHT = 4
const OT_BORDER_ROUNDED = 2
const OT_BORDER_SINGLE = 0
const OT_BORDER_TOP = 8
const OT_BOX_SIZING_BORDER_BOX = 0
const OT_BOX_SIZING_CONTENT_BOX = 1
const OT_BUFFER_DRAW_BOX = 6
const OT_BUFFER_DRAW_CELL = 3
const OT_BUFFER_DRAW_CELL_BLEND = 4
const OT_BUFFER_DRAW_CHAR = 5
const OT_BUFFER_DRAW_CLEAR = 0
Frames and output
const OT_BUFFER_DRAW_COMPOSE = 7
const OT_BUFFER_DRAW_FILL = 1
const OT_BUFFER_DRAW_HAS_BACKGROUND = 1
const OT_BUFFER_DRAW_HAS_SOURCE_HEIGHT = 4
const OT_BUFFER_DRAW_HAS_SOURCE_WIDTH = 2
const OT_BUFFER_DRAW_RESPECT_ALPHA = 8
const OT_BUFFER_DRAW_TEXT = 2
C
const OT_BUFFER_GRID_INNER = 1
const OT_BUFFER_GRID_OUTER = 2
const OT_BUFFER_RESPECT_ALPHA = 1
const OT_BUFFER_STACK_CLEAR_OPACITY = 6
const OT_BUFFER_STACK_CLEAR_SCISSORS = 3
const OT_BUFFER_STACK_DEPTH_MAX = 256
const OT_BUFFER_STACK_GET_OPACITY = 0
const OT_BUFFER_STACK_POP_OPACITY = 5
const OT_BUFFER_STACK_POP_SCISSOR = 2
const OT_BUFFER_STACK_PUSH_OPACITY = 4
const OT_BUFFER_STACK_PUSH_SCISSOR = 1
const OT_BUFFER_TEXT_BYTES_MAX = 65536
How Core uses native
const OT_CAP_ANSI256 = 8
const OT_CAP_BRACKETED_PASTE = 2048
const OT_CAP_COLOR_SCHEME_UPDATES = 32
const OT_CAP_EXPLICIT_CURSOR_POSITIONING = 32768
const OT_CAP_EXPLICIT_WIDTH = 64
const OT_CAP_FOCUS_TRACKING = 512
const OT_CAP_KITTY_GRAPHICS = 2
const OT_CAP_KITTY_KEYBOARD = 1
const OT_CAP_NOTIFICATIONS = 16384
const OT_CAP_OSC52 = 8192
const OT_CAP_REMOTE = 65536
const OT_CAP_RGB = 4
const OT_CAP_SCALED_TEXT = 128
const OT_CAP_SGR_PIXELS = 16
const OT_CAP_SIXEL = 256
const OT_CAP_SYNC = 1024
const OT_CLIPBOARD_CANCEL_ALREADY_TERMINAL = 1
const OT_CLIPBOARD_CANCEL_INVALID_HANDLE = 2
const OT_CLIPBOARD_CANCEL_REQUESTED = 0
const OT_CLIPBOARD_COPY_BUFFER_TOO_SMALL = 1
const OT_CLIPBOARD_COPY_INVALID_ARGUMENT = 4
const OT_CLIPBOARD_COPY_INVALID_HANDLE = 2
const OT_CLIPBOARD_COPY_INVALID_STATE = 3
const OT_CLIPBOARD_COPY_OK = 0
const OT_CLIPBOARD_DESTROY_DESTROYED = 0
const OT_CLIPBOARD_DESTROY_INVALID_HANDLE = 2
const OT_CLIPBOARD_DESTROY_NOT_READY = 1
const OT_CLIPBOARD_OPERATION_CANCELLED = 6
const OT_CLIPBOARD_OPERATION_CLEARED = 4
const OT_CLIPBOARD_OPERATION_EMPTY = 2
const OT_CLIPBOARD_OPERATION_FAILED = 9
const OT_CLIPBOARD_OPERATION_INVALID_HANDLE = 10
const OT_CLIPBOARD_OPERATION_LIMIT_EXCEEDED = 8
const OT_CLIPBOARD_OPERATION_PENDING = 0
const OT_CLIPBOARD_OPERATION_READ = 1
const OT_CLIPBOARD_OPERATION_TIMED_OUT = 7
const OT_CLIPBOARD_OPERATION_UNSUPPORTED = 5
const OT_CLIPBOARD_OPERATION_WRITTEN = 3
const OT_CLIPBOARD_SHUTDOWN_INVALID_HANDLE = 2
const OT_CLIPBOARD_SHUTDOWN_PENDING = 0
const OT_CLIPBOARD_SHUTDOWN_READY = 1
const OT_CLIPBOARD_START_INVALID_ARGUMENT = 4
const OT_CLIPBOARD_START_INVALID_SERVICE = 1
const OT_CLIPBOARD_START_LIMIT_EXCEEDED = 3
const OT_CLIPBOARD_START_OK = 0
const OT_CLIPBOARD_START_OUT_OF_MEMORY = 5
const OT_CLIPBOARD_START_SHUTTING_DOWN = 2
Resources and ownership
const OT_COLOR_CHANNEL_MASK = 255
const OT_COLOR_DEFAULT = 2
const OT_COLOR_INDEXED = 1
const OT_COLOR_META_SHIFT = 8
const OT_COLOR_RGB = 0
const OT_CONTEXT_ABI_VERSION = 1
C
const OT_CONTEXT_BUSY = -6
C
const OT_CONTROL_CAPABILITY_RESPONSE = 1
Frames and output
const OT_CONTROL_CURSOR = 8
const OT_CONTROL_KITTY_KEYBOARD_FLAGS = 4
const OT_CONTROL_MOUSE = 3
const OT_CONTROL_PACKET_LIMIT = -20
const OT_CONTROL_PALETTE_QUERY = 10
const OT_CONTROL_QUERY_PIXEL_RESOLUTION = 6
const OT_CONTROL_QUERY_THEME_COLORS = 7
const OT_CONTROL_RESET_BACKGROUND = 9
const OT_CONTROL_RESTORE_MODES = 5
const OT_CONTROL_TITLE = 2
const OT_CURSOR_BLINKING = 4
const OT_CURSOR_COLOR = 8
const OT_CURSOR_MOUSE_POINTER = 16
const OT_CURSOR_POSITION = 1
const OT_CURSOR_STYLE = 2
const OT_DIAGNOSTIC_MESSAGE_BYTES = 4096
const OT_DIAGNOSTIC_TRUNCATED = 1
const OT_DIMENSION_HEIGHT = 1
const OT_DIMENSION_WIDTH = 0
const OT_DIRECTION_INHERIT = 0
const OT_DIRECTION_LTR = 1
const OT_DIRECTION_RTL = 2
const OT_DISPLAY_FLEX = 0
const OT_DISPLAY_NONE = 1
const OT_EDGE_ALL = 8
const OT_EDGE_BOTTOM = 3
const OT_EDGE_END = 5
const OT_EDGE_HORIZONTAL = 6
const OT_EDGE_LEFT = 0
const OT_EDGE_NONE = 0
const OT_EDGE_RIGHT = 2
const OT_EDGE_START = 4
const OT_EDGE_TOP = 1
const OT_EDGE_VERTICAL = 7
const OT_EDIT_BACKSPACE = 1
const OT_EDIT_CLEAR = 10
const OT_EDIT_CLEAR_HISTORY = 11
const OT_EDIT_CONTENT_CHANGED = 2
const OT_EDIT_CURSOR_CHANGED = 1
const OT_EDIT_CURSOR_OFFSET = 9
const OT_EDIT_DEBUG_ROPE = 12
const OT_EDIT_DELETE_FORWARD = 0
const OT_EDIT_DELETE_LINE = 3
const OT_EDIT_GOTO_LINE = 8
const OT_EDIT_HIGHLIGHT_ADD_LINE = 0
const OT_EDIT_HIGHLIGHT_ADD_RANGE = 1
const OT_EDIT_HIGHLIGHT_CLEAR_ALL = 4
const OT_EDIT_HIGHLIGHT_CLEAR_LINE = 3
const OT_EDIT_HIGHLIGHT_REMOVE_REF = 2
const OT_EDIT_HISTORY_CURSOR_CHANGED = 4
const OT_EDIT_MOVE_DOWN = 7
const OT_EDIT_MOVE_LEFT = 4
const OT_EDIT_MOVE_RIGHT = 5
const OT_EDIT_MOVE_UP = 6
const OT_EDIT_NEW_LINE = 2
const OT_EDIT_POSITION_COORDS = 5
const OT_EDIT_POSITION_CURSOR = 0
const OT_EDIT_POSITION_EOL = 3
const OT_EDIT_POSITION_LINE_START = 6
const OT_EDIT_POSITION_NEXT_WORD = 1
const OT_EDIT_POSITION_OFFSET = 4
const OT_EDIT_POSITION_PREV_WORD = 2
const OT_EDITOR_CURSOR_OFFSET = 4
const OT_EDITOR_DELETE_SELECTION = 3
const OT_EDITOR_GOTO_LINE_END = 2
const OT_EDITOR_MOVE_DOWN = 1
const OT_EDITOR_MOVE_UP = 0
const OT_EDITOR_POSITION_CURSOR = 0
const OT_EDITOR_POSITION_EOL = 3
const OT_EDITOR_POSITION_NEXT_WORD = 1
const OT_EDITOR_POSITION_PREV_WORD = 2
const OT_EDITOR_POSITION_VISUAL_EOL = 5
const OT_EDITOR_POSITION_VISUAL_SOL = 4
const OT_EDITOR_SELECT_CELL = 6
const OT_EDITOR_SELECT_COLORS = 9
const OT_EDITOR_SELECT_INCLUSIVE = 8
const OT_EDITOR_SELECT_LOCAL = 3
const OT_EDITOR_SELECT_LOCAL_RESET = 5
const OT_EDITOR_SELECT_LOCAL_UPDATE = 4
const OT_EDITOR_SELECT_OCCUPANCY = 7
const OT_EDITOR_SELECT_RESET = 2
const OT_EDITOR_SELECT_SET = 0
const OT_EDITOR_SELECT_UPDATE = 1
const OT_EDITOR_STYLE_ATTRIBUTES = 4
const OT_EDITOR_STYLE_BACKGROUND = 2
const OT_EDITOR_STYLE_FOREGROUND = 1
const OT_EDITOR_TAB_INDICATOR = 6
const OT_EDITOR_WRAP_MODE = 5
const OT_EMBEDDED_TERMINAL_CLEAR_SELECTION = 2
const OT_EMBEDDED_TERMINAL_INVALIDATE = 0
const OT_EMBEDDED_TERMINAL_SCROLL = 1
const OT_EMBEDDED_TERMINAL_SET_TRANSPARENT_BACKGROUND = 3
const OT_FLEX_DIRECTION_COLUMN = 0
const OT_FLEX_DIRECTION_COLUMN_REVERSE = 1
const OT_FLEX_DIRECTION_ROW = 2
const OT_FLEX_DIRECTION_ROW_REVERSE = 3
const OT_FLEX_WRAP_NONE = 0
const OT_FLEX_WRAP_REVERSE = 2
const OT_FLEX_WRAP_WRAP = 1
const OT_FRAME_BUSY = -27
C
const OT_FRAME_REQUEST_LIMIT = -28
Frames and output
const OT_GUTTER_ALL = 2
const OT_GUTTER_COLUMN = 0
const OT_GUTTER_ROW = 1
const OT_IMAGE_ALPHA_OPAQUE = 1
const OT_IMAGE_ALPHA_STRAIGHT = 0
const OT_IMAGE_ASSUMED_SRGB = 0
const OT_IMAGE_BGRA8 = 1
const OT_IMAGE_BLEND_DESTINATION_OVER = 2
const OT_IMAGE_BLEND_SOURCE = 1
const OT_IMAGE_BLEND_SOURCE_OVER = 0
const OT_IMAGE_BUSY = -47
const OT_IMAGE_COVER = 1
const OT_IMAGE_DIMENSION_LIMIT = -43
const OT_IMAGE_DRAW_SOURCE_HEIGHT = 2
const OT_IMAGE_DRAW_SOURCE_WIDTH = 1
const OT_IMAGE_EXPLICIT_SRGB = 1
const OT_IMAGE_FILL = 2
const OT_IMAGE_FILTER_AREA = 1
const OT_IMAGE_FILTER_CATMULL_ROM = 4
const OT_IMAGE_FILTER_CUBIC_BSPLINE = 3
const OT_IMAGE_FILTER_DEFAULT = 0
const OT_IMAGE_FILTER_MITCHELL = 5
const OT_IMAGE_FILTER_NEAREST = 6
const OT_IMAGE_FILTER_TRIANGLE = 2
const OT_IMAGE_FIT = 0
const OT_IMAGE_FLIP = 3
const OT_IMAGE_FLOP = 4
const OT_IMAGE_FORMAT_GIF = 5
const OT_IMAGE_FORMAT_JPEG = 3
const OT_IMAGE_FORMAT_PNG = 1
const OT_IMAGE_FORMAT_RGBA = 2
const OT_IMAGE_FORMAT_UNKNOWN = 0
const OT_IMAGE_FORMAT_WEBP = 4
const OT_IMAGE_MALFORMED_DATA = -42
const OT_IMAGE_MEMORY_LIMIT = -44
const OT_IMAGE_OUTPUT_TOO_SMALL = -45
const OT_IMAGE_PROTOCOL_AUTO = 0
const OT_IMAGE_PROTOCOL_BLOCKS = 3
const OT_IMAGE_PROTOCOL_KITTY = 1
const OT_IMAGE_PROTOCOL_SIXEL = 2
const OT_IMAGE_RGBA8 = 0
const OT_IMAGE_ROTATE_180 = 1
const OT_IMAGE_ROTATE_270 = 2
const OT_IMAGE_ROTATE_90 = 0
const OT_IMAGE_UNSUPPORTED_COLOR_SPACE = -41
const OT_IMAGE_UNSUPPORTED_FEATURE = -46
const OT_IMAGE_UNSUPPORTED_FORMAT = -40
const OT_INTERNAL_ERROR = -5
const OT_INVALID_ARGUMENT = -1
C
const OT_INVALID_PHASE = -19
Resources and ownership
const OT_JUSTIFY_CENTER = 1
const OT_JUSTIFY_FLEX_END = 2
const OT_JUSTIFY_FLEX_START = 0
const OT_JUSTIFY_SPACE_AROUND = 4
const OT_JUSTIFY_SPACE_BETWEEN = 3
const OT_JUSTIFY_SPACE_EVENLY = 5
const OT_LAYOUT_LIMIT = -26
Frames and output
const OT_LAYOUT_PAINT = 2
Resources and ownership
const OT_LAYOUT_PUBLIC = 0
Resources and ownership
const OT_LAYOUT_YOGA = 1
Resources and ownership
const OT_LEASE_BYTES_LIMIT = -22
const OT_LEASE_LIMIT = -21
const OT_MEASURE_AT_MOST = 2
const OT_MEASURE_EXACTLY = 1
const OT_MEASURE_UNDEFINED = 0
const OT_MOUSE_POINTER_ALIAS = 12
const OT_MOUSE_POINTER_ALL_SCROLL = 19
const OT_MOUSE_POINTER_AUTO = 0
const OT_MOUSE_POINTER_CELL = 8
const OT_MOUSE_POINTER_COL_RESIZE = 20
const OT_MOUSE_POINTER_CONTEXT_MENU = 3
const OT_MOUSE_POINTER_COPY = 13
const OT_MOUSE_POINTER_CROSSHAIR = 9
const OT_MOUSE_POINTER_DEFAULT = 1
const OT_MOUSE_POINTER_E_RESIZE = 23
const OT_MOUSE_POINTER_EW_RESIZE = 30
const OT_MOUSE_POINTER_GRAB = 17
const OT_MOUSE_POINTER_GRABBING = 18
const OT_MOUSE_POINTER_HELP = 4
const OT_MOUSE_POINTER_MAX = 35
const OT_MOUSE_POINTER_MOVE = 14
const OT_MOUSE_POINTER_N_RESIZE = 22
const OT_MOUSE_POINTER_NE_RESIZE = 26
const OT_MOUSE_POINTER_NESW_RESIZE = 32
const OT_MOUSE_POINTER_NO_DROP = 15
const OT_MOUSE_POINTER_NONE = 2
const OT_MOUSE_POINTER_NOT_ALLOWED = 16
const OT_MOUSE_POINTER_NS_RESIZE = 31
const OT_MOUSE_POINTER_NW_RESIZE = 27
const OT_MOUSE_POINTER_NWSE_RESIZE = 33
const OT_MOUSE_POINTER_POINTER = 5
const OT_MOUSE_POINTER_PROGRESS = 6
const OT_MOUSE_POINTER_ROW_RESIZE = 21
const OT_MOUSE_POINTER_S_RESIZE = 24
const OT_MOUSE_POINTER_SE_RESIZE = 28
const OT_MOUSE_POINTER_SW_RESIZE = 29
const OT_MOUSE_POINTER_TEXT = 10
const OT_MOUSE_POINTER_UNCHANGED = 4294967295
const OT_MOUSE_POINTER_VERTICAL_TEXT = 11
const OT_MOUSE_POINTER_W_RESIZE = 25
const OT_MOUSE_POINTER_WAIT = 7
const OT_MOUSE_POINTER_ZOOM_IN = 34
const OT_MOUSE_POINTER_ZOOM_OUT = 35
const OT_OBJECT_LIMIT = -16
const OT_OK = 0
C
const OT_OUT_OF_MEMORY = -3
const OT_OUTPUT_BACKPRESSURE = -11
C
const OT_OUTPUT_BUSY = -13
Host I/O and time
const OT_OUTPUT_FAILED = -15
Host I/O and time
const OT_OVERFLOW_HIDDEN = 1
const OT_OVERFLOW_SCROLL = 2
const OT_OVERFLOW_VISIBLE = 0
const OT_POSITION_ABSOLUTE = 2
const OT_POSITION_RELATIVE = 1
const OT_POSITION_STATIC = 0
const OT_PUMP_AGAIN = 1
Frames and output
const OT_PUMP_CLOSED = 4
Frames and output
const OT_PUMP_IDLE = 0
Frames and output
const OT_PUMP_OUTPUT_PENDING = 2
Frames and output
const OT_PUMP_WAIT_UNTIL = 3
Frames and output
const OT_RENDER_FAILED = 3
Frames and output
const OT_RENDER_PENDING = 1
Frames and output
const OT_RENDER_PRESENTED = 0
Frames and output
const OT_RENDER_SKIPPED = 2
Frames and output
const OT_RENDERER_ATTACHED = -17
const OT_RENDERER_NOT_ATTACHED = -18
const OT_SCENE_ALIGN_CENTER = 1
const OT_SCENE_ALIGN_LEFT = 0
const OT_SCENE_ALIGN_RIGHT = 2
const OT_SCENE_ARROW = 4
const OT_SCENE_BOX = 1
C
const OT_SCENE_CUSTOM = 6
Resources and ownership
const OT_SCENE_EDITOR = 5
const OT_SCENE_FRAME_DONE = 0
Frames and output
const OT_SCENE_FRAME_LAYOUT_CHANGED = 3
Frames and output
const OT_SCENE_FRAME_RECORD = 4
Frames and output
const OT_SCENE_FRAME_RESIZE = 2
Frames and output
const OT_SCENE_FRAME_UPDATE = 1
Frames and output
const OT_SCENE_FRAME_YIELD = 5
Frames and output
const OT_SCENE_GEOMETRY_PAINT = 1
const OT_SCENE_GEOMETRY_PUBLIC = 2
const OT_SCENE_HOOK_IDLE_UPDATE = 64
const OT_SCENE_HOOK_LAYOUT_CHANGED = 4
Frames and output
const OT_SCENE_HOOK_RENDER_AFTER = 16
Frames and output
const OT_SCENE_HOOK_RENDER_BEFORE = 8
Frames and output
const OT_SCENE_HOOK_RENDER_SELF = 32
Frames and output
const OT_SCENE_HOOK_RESIZE = 2
Frames and output
const OT_SCENE_HOOK_UPDATE = 1
Frames and output
const OT_SCENE_IMAGE = 8
const OT_SCENE_MUTATIONS_MAX = 4096
Frames and output
const OT_SCENE_PROPERTY_BACKGROUND = 64
const OT_SCENE_PROPERTY_BORDER = 16
const OT_SCENE_PROPERTY_BORDER_COLOR = 128
const OT_SCENE_PROPERTY_BORDER_STYLE = 256
const OT_SCENE_PROPERTY_BYTES_MAX = 360448
Frames and output
const OT_SCENE_PROPERTY_FOCUSABLE = 512
const OT_SCENE_PROPERTY_FOCUSED_BORDER_COLOR = 1024
const OT_SCENE_PROPERTY_OPACITY = 2
const OT_SCENE_PROPERTY_RECORD_MAX = 88
const OT_SCENE_PROPERTY_RESET_BORDER_CHARACTERS = 4096
const OT_SCENE_PROPERTY_SHOULD_FILL = 32
const OT_SCENE_PROPERTY_STYLE = 2048
Frames and output
const OT_SCENE_PROPERTY_TRANSLATE_X = 4
const OT_SCENE_PROPERTY_TRANSLATE_Y = 8
const OT_SCENE_PROPERTY_Z_INDEX = 1
const OT_SCENE_RECORD_BYTES_MAX = 67108864
Frames and output
const OT_SCENE_RECORD_COLOR_MATRIX = 7
const OT_SCENE_RECORD_DRAW = 1
C
const OT_SCENE_RECORD_EDITOR_VIEW = 9
const OT_SCENE_RECORD_GRAYSCALE = 6
const OT_SCENE_RECORD_GRAYSCALE_BACKGROUND = 2
const OT_SCENE_RECORD_GRAYSCALE_FOREGROUND = 1
const OT_SCENE_RECORD_GRAYSCALE_SUPERSAMPLED = 4
const OT_SCENE_RECORD_GRID = 3
const OT_SCENE_RECORD_IMAGE = 11
const OT_SCENE_RECORD_PACKED = 4
const OT_SCENE_RECORD_PHASE_AFTER = 2
C
const OT_SCENE_RECORD_PHASE_BEFORE = 0
const OT_SCENE_RECORD_PHASE_SELF = 1
const OT_SCENE_RECORD_SCENE_TEXT = 10
const OT_SCENE_RECORD_SLOT = 0
C
const OT_SCENE_RECORD_STACK = 2
const OT_SCENE_RECORD_SUPERSAMPLE = 5
const OT_SCENE_RECORD_TEXT_VIEW = 8
const OT_SCENE_RECORD_UNICODE = 12
const OT_SCENE_ROOT = 0
C
const OT_SCENE_SLIDER = 3
const OT_SCENE_TEXT = 2
C
const OT_SCENE_TEXT_BACKGROUND = 2
const OT_SCENE_TEXT_FOREGROUND = 1
const OT_SCENE_TEXT_SELECTION_BACKGROUND = 1
const OT_SCENE_TEXT_SELECTION_CELL = 0
const OT_SCENE_TEXT_SELECTION_FOREGROUND = 2
const OT_SCENE_TEXT_SELECTION_LINE = 2
const OT_SCENE_TEXT_SELECTION_RESET = 0
const OT_SCENE_TEXT_SELECTION_SET = 1
const OT_SCENE_TEXT_SELECTION_UPDATE = 2
const OT_SCENE_TEXT_SELECTION_WORD = 1
const OT_SCENE_TEXT_VIEW = 7
Resources and ownership
const OT_SCENE_WRAP_CHAR = 1
const OT_SCENE_WRAP_NONE = 0
const OT_SCENE_WRAP_WORD = 2
const OT_SELECT_DOCUMENT_RESET = 2
const OT_SELECT_DOCUMENT_SET = 0
const OT_SELECT_DOCUMENT_UPDATE = 1
const OT_SELECT_VIEWPORT_RESET = 5
const OT_SELECT_VIEWPORT_SET = 3
const OT_SELECT_VIEWPORT_UPDATE = 4
const OT_SELECTION_CELL = 0
const OT_SELECTION_LINE = 2
const OT_SELECTION_OCCUPANCY_BOUNDARY = 1
const OT_SELECTION_OCCUPANCY_CELL = 0
const OT_SELECTION_WORD = 1
const OT_SESSION_BUFFER_CURRENT = 0
const OT_SESSION_BUFFER_NEXT = 1
const OT_SESSION_CANCELLED_STATE = 4
const OT_SESSION_CLOSED = -12
const OT_SESSION_CLOSED_STATE = 2
const OT_SESSION_CLOSING = 1
const OT_SESSION_CONTROL_PACKET_BYTES = 4096
Frames and output
const OT_SESSION_ENV_BYTES_MAX = 65536
const OT_SESSION_ENV_ENTRIES_MAX = 256
const OT_SESSION_FAILED = 3
const OT_SESSION_OPEN = 0
const OT_SESSION_REMOTE_AUTO = 0
const OT_SESSION_REMOTE_LOCAL = 1
const OT_SESSION_REMOTE_REMOTE = 2
const OT_STALE_FRAME = -25
C
const OT_STALE_HANDLE = -9
C
const OT_STALE_LEASE = -23
C
const OT_STALE_OUTPUT = -14
C
const OT_STYLE_BORDER = 3
const OT_STYLE_BORDER_WIDTH = 0
const OT_STYLE_DIMENSION = 4
const OT_STYLE_DISABLE_FLEX_SHRINK = 1
const OT_STYLE_ENUM = 0
const OT_STYLE_ENUM_ALIGN_CONTENT = 3
const OT_STYLE_ENUM_ALIGN_CONTENT_MAX = 8
const OT_STYLE_ENUM_ALIGN_ITEMS = 4
const OT_STYLE_ENUM_ALIGN_ITEMS_MAX = 8
const OT_STYLE_ENUM_ALIGN_SELF = 5
const OT_STYLE_ENUM_ALIGN_SELF_MAX = 8
const OT_STYLE_ENUM_BOX_SIZING = 10
const OT_STYLE_ENUM_BOX_SIZING_MAX = 1
const OT_STYLE_ENUM_DIRECTION = 0
const OT_STYLE_ENUM_DIRECTION_MAX = 2
const OT_STYLE_ENUM_DISPLAY = 9
const OT_STYLE_ENUM_DISPLAY_MAX = 1
const OT_STYLE_ENUM_FLEX_DIRECTION = 1
const OT_STYLE_ENUM_FLEX_DIRECTION_MAX = 3
const OT_STYLE_ENUM_FLEX_WRAP = 7
const OT_STYLE_ENUM_FLEX_WRAP_MAX = 2
const OT_STYLE_ENUM_JUSTIFY_CONTENT = 2
const OT_STYLE_ENUM_JUSTIFY_CONTENT_MAX = 5
const OT_STYLE_ENUM_OVERFLOW = 8
const OT_STYLE_ENUM_OVERFLOW_MAX = 2
const OT_STYLE_ENUM_POSITION_TYPE = 6
const OT_STYLE_ENUM_POSITION_TYPE_MAX = 2
const OT_STYLE_FLAGS_NONE = 0
const OT_STYLE_FLOAT = 1
const OT_STYLE_FLOAT_ASPECT_RATIO = 3
const OT_STYLE_FLOAT_FLEX = 0
const OT_STYLE_FLOAT_FLEX_GROW = 1
const OT_STYLE_FLOAT_FLEX_SHRINK = 2
const OT_STYLE_VALUE = 2
const OT_STYLE_VALUE_FLEX_BASIS = 6
const OT_STYLE_VALUE_GAP = 10
const OT_STYLE_VALUE_HEIGHT = 1
const OT_STYLE_VALUE_MARGIN = 7
const OT_STYLE_VALUE_MAX_HEIGHT = 5
const OT_STYLE_VALUE_MAX_WIDTH = 4
const OT_STYLE_VALUE_MIN_HEIGHT = 3
const OT_STYLE_VALUE_MIN_WIDTH = 2
const OT_STYLE_VALUE_PADDING = 8
const OT_STYLE_VALUE_POSITION = 9
const OT_STYLE_VALUE_WIDTH = 0
const OT_TERMINAL_ACTIVE = 2
const OT_TERMINAL_ALTERNATE_SCREEN = 1
const OT_TERMINAL_CANCELLED = 9
const OT_TERMINAL_CLEAR_ON_CLOSE = 8
const OT_TERMINAL_CLOSING = 6
const OT_TERMINAL_FAILED = 8
const OT_TERMINAL_MOUSE = 2
const OT_TERMINAL_MOUSE_MOVEMENT = 4
const OT_TERMINAL_RESTORED = 7
const OT_TERMINAL_RESUMING = 5
const OT_TERMINAL_SETTING_UP = 1
const OT_TERMINAL_SUSPENDED = 4
const OT_TERMINAL_SUSPENDING = 3
const OT_TERMINAL_UNINITIALIZED = 0
const OT_TEXT_REPLACEMENT_BYTES_MAX = 4194304
const OT_TEXT_REPLACEMENT_CHUNKS_MAX = 4096
const OT_TEXT_REPLACEMENT_COUNT_MAX = 256
const OT_TEXT_REPLACEMENT_URL_BYTES_MAX = 1048576
const OT_TEXT_VIEW_FIRST_LINE_OFFSET = 2
const OT_TEXT_VIEW_TAB_INDICATOR = 3
const OT_TEXT_VIEW_TEXT_ALIGN = 5
const OT_TEXT_VIEW_TRUNCATE = 4
const OT_TEXT_VIEW_WRAP_MODE = 1
const OT_TEXT_VIEW_WRAP_WIDTH = 0
const OT_UNIT_AUTO = 3
const OT_UNIT_PERCENT = 2
const OT_UNIT_POINT = 1
const OT_UNIT_UNDEFINED = 0
const OT_UNSUPPORTED_RESOURCE = -24
Frames and output
const OT_UNSUPPORTED_VERSION = -2
C
const OT_WIDTH_METHOD_NO_ZWJ = 2
const OT_WIDTH_METHOD_UNICODE = 1
const OT_WIDTH_METHOD_UNICODE_WIDE = 3
const OT_WIDTH_METHOD_WCWIDTH = 0
const OT_WRONG_CONTEXT = -7
C
const OT_WRONG_KIND = -8
C
const OT_WRONG_SESSION = -10
C
const OT_WRONG_THREAD = -4
C