pub trait EngineManager:
Debug
+ Send
+ Sync
+ 'static {
Show 33 methods
// Required methods
fn responses(&self) -> Arc<RwLock<IndexMap<Uuid, WebSocketResponse>>> ⓘ;
fn ids_of_async_commands(&self) -> Arc<RwLock<IndexMap<Uuid, SourceRange>>> ⓘ;
fn async_tasks(&self) -> AsyncTasks;
fn get_default_planes(&self) -> Arc<RwLock<Option<DefaultPlanes>>> ⓘ;
fn stats(&self) -> &EngineStats;
fn clear_scene_post_hook<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id_generator: &'life2 mut IdGenerator,
source_range: SourceRange,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait;
fn fetch_debug<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn get_debug<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Option<OkWebSocketResponseData>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn inner_fire_modeling_cmd<'life0, 'async_trait>(
&'life0 self,
id: Uuid,
source_range: SourceRange,
cmd: WebSocketRequest,
id_to_source_range: HashMap<Uuid, SourceRange>,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn inner_send_modeling_cmd<'life0, 'async_trait>(
&'life0 self,
id: Uuid,
source_range: SourceRange,
cmd: WebSocketRequest,
id_to_source_range: HashMap<Uuid, SourceRange>,
) -> Pin<Box<dyn Future<Output = Result<WebSocketResponse, KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn close<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
// Provided methods
fn take_ids_of_async_commands<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = IndexMap<Uuid, SourceRange>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait { ... }
fn take_responses<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = IndexMap<Uuid, WebSocketResponse>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait { ... }
fn default_planes<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id_generator: &'life2 mut IdGenerator,
source_range: SourceRange,
) -> Pin<Box<dyn Future<Output = Result<DefaultPlanes, KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait { ... }
fn clear_queues<'life0, 'life1, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait { ... }
fn clear_scene<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id_generator: &'life2 mut IdGenerator,
source_range: SourceRange,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait { ... }
fn ensure_async_command_completed<'life0, 'async_trait>(
&'life0 self,
id: Uuid,
source_range: Option<SourceRange>,
) -> Pin<Box<dyn Future<Output = Result<OkWebSocketResponseData, KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait { ... }
fn ensure_async_commands_completed<'life0, 'life1, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait { ... }
fn set_edge_visibility<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
visible: bool,
source_range: SourceRange,
id_generator: &'life2 mut IdGenerator,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait { ... }
fn reapply_settings<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
settings: &'life2 ExecutorSettings,
source_range: SourceRange,
id_generator: &'life3 mut IdGenerator,
grid_scale_unit: GridScaleBehavior,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait { ... }
fn batch_modeling_cmd<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id: Uuid,
source_range: SourceRange,
cmd: &'life2 ModelingCmd,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait { ... }
fn batch_modeling_cmds<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
source_range: SourceRange,
cmds: &'life2 [ModelingCmdReq],
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait { ... }
fn batch_end_cmd<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id: Uuid,
source_range: SourceRange,
cmd: &'life2 ModelingCmd,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait { ... }
fn send_modeling_cmd<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id: Uuid,
source_range: SourceRange,
cmd: &'life2 ModelingCmd,
) -> Pin<Box<dyn Future<Output = Result<OkWebSocketResponseData, KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait { ... }
fn async_modeling_cmd<'life0, 'life1, 'async_trait>(
&'life0 self,
id: Uuid,
source_range: SourceRange,
cmd: &'life1 ModelingCmd,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait { ... }
fn run_batch<'life0, 'async_trait>(
&'life0 self,
orig_requests: Vec<(WebSocketRequest, SourceRange)>,
source_range: SourceRange,
) -> Pin<Box<dyn Future<Output = Result<OkWebSocketResponseData, KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait { ... }
fn flush_batch<'life0, 'life1, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
batch_end: bool,
source_range: SourceRange,
) -> Pin<Box<dyn Future<Output = Result<OkWebSocketResponseData, KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait { ... }
fn make_default_plane<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
plane_id: Uuid,
info: &'life2 PlaneInfo,
color: Option<Color>,
source_range: SourceRange,
id_generator: &'life3 mut IdGenerator,
) -> Pin<Box<dyn Future<Output = Result<Uuid, KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait { ... }
fn new_default_planes<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id_generator: &'life2 mut IdGenerator,
source_range: SourceRange,
) -> Pin<Box<dyn Future<Output = Result<DefaultPlanes, KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait { ... }
fn parse_websocket_response(
&self,
response: WebSocketResponse,
source_range: SourceRange,
) -> Result<OkWebSocketResponseData, KclError> { ... }
fn parse_batch_responses(
&self,
id: Uuid,
id_to_source_range: HashMap<Uuid, SourceRange>,
responses: HashMap<Uuid, BatchResponse>,
) -> Result<OkWebSocketResponseData, KclError> { ... }
fn modify_grid<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
hidden: bool,
grid_scale_behavior: GridScaleBehavior,
source_range: SourceRange,
id_generator: &'life2 mut IdGenerator,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait { ... }
fn get_session_data<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Option<ModelingSessionData>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait { ... }
}Required Methods§
Sourcefn responses(&self) -> Arc<RwLock<IndexMap<Uuid, WebSocketResponse>>> ⓘ
fn responses(&self) -> Arc<RwLock<IndexMap<Uuid, WebSocketResponse>>> ⓘ
Get the command responses from the engine.
Sourcefn ids_of_async_commands(&self) -> Arc<RwLock<IndexMap<Uuid, SourceRange>>> ⓘ
fn ids_of_async_commands(&self) -> Arc<RwLock<IndexMap<Uuid, SourceRange>>> ⓘ
Get the ids of the async commands we are waiting for.
Sourcefn async_tasks(&self) -> AsyncTasks
fn async_tasks(&self) -> AsyncTasks
Get the async tasks we are waiting for.
Sourcefn get_default_planes(&self) -> Arc<RwLock<Option<DefaultPlanes>>> ⓘ
fn get_default_planes(&self) -> Arc<RwLock<Option<DefaultPlanes>>> ⓘ
Get the default planes.
fn stats(&self) -> &EngineStats
Sourcefn clear_scene_post_hook<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id_generator: &'life2 mut IdGenerator,
source_range: SourceRange,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn clear_scene_post_hook<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id_generator: &'life2 mut IdGenerator,
source_range: SourceRange,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Helpers to be called after clearing a scene. (These really only apply to wasm for now).
Sourcefn fetch_debug<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn fetch_debug<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Fetch debug information from the peer.
Sourcefn get_debug<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Option<OkWebSocketResponseData>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_debug<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Option<OkWebSocketResponseData>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get any debug information (if requested)
Sourcefn inner_fire_modeling_cmd<'life0, 'async_trait>(
&'life0 self,
id: Uuid,
source_range: SourceRange,
cmd: WebSocketRequest,
id_to_source_range: HashMap<Uuid, SourceRange>,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn inner_fire_modeling_cmd<'life0, 'async_trait>(
&'life0 self,
id: Uuid,
source_range: SourceRange,
cmd: WebSocketRequest,
id_to_source_range: HashMap<Uuid, SourceRange>,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Send a modeling command and do not wait for the response message.
Sourcefn inner_send_modeling_cmd<'life0, 'async_trait>(
&'life0 self,
id: Uuid,
source_range: SourceRange,
cmd: WebSocketRequest,
id_to_source_range: HashMap<Uuid, SourceRange>,
) -> Pin<Box<dyn Future<Output = Result<WebSocketResponse, KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn inner_send_modeling_cmd<'life0, 'async_trait>(
&'life0 self,
id: Uuid,
source_range: SourceRange,
cmd: WebSocketRequest,
id_to_source_range: HashMap<Uuid, SourceRange>,
) -> Pin<Box<dyn Future<Output = Result<WebSocketResponse, KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Send a modeling command and wait for the response message.
Provided Methods§
Sourcefn take_ids_of_async_commands<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = IndexMap<Uuid, SourceRange>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn take_ids_of_async_commands<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = IndexMap<Uuid, SourceRange>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Take the ids of async commands that have accumulated so far and clear them.
Sourcefn take_responses<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = IndexMap<Uuid, WebSocketResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn take_responses<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = IndexMap<Uuid, WebSocketResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Take the responses that have accumulated so far and clear them.
Sourcefn default_planes<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id_generator: &'life2 mut IdGenerator,
source_range: SourceRange,
) -> Pin<Box<dyn Future<Output = Result<DefaultPlanes, KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn default_planes<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id_generator: &'life2 mut IdGenerator,
source_range: SourceRange,
) -> Pin<Box<dyn Future<Output = Result<DefaultPlanes, KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Get the default planes, creating them if they don’t exist.
fn clear_queues<'life0, 'life1, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn clear_scene<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id_generator: &'life2 mut IdGenerator,
source_range: SourceRange,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Sourcefn ensure_async_command_completed<'life0, 'async_trait>(
&'life0 self,
id: Uuid,
source_range: Option<SourceRange>,
) -> Pin<Box<dyn Future<Output = Result<OkWebSocketResponseData, KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn ensure_async_command_completed<'life0, 'async_trait>(
&'life0 self,
id: Uuid,
source_range: Option<SourceRange>,
) -> Pin<Box<dyn Future<Output = Result<OkWebSocketResponseData, KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Ensure a specific async command has been completed.
Sourcefn ensure_async_commands_completed<'life0, 'life1, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn ensure_async_commands_completed<'life0, 'life1, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Ensure ALL async commands have been completed.
Sourcefn set_edge_visibility<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
visible: bool,
source_range: SourceRange,
id_generator: &'life2 mut IdGenerator,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn set_edge_visibility<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
visible: bool,
source_range: SourceRange,
id_generator: &'life2 mut IdGenerator,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Set the visibility of edges.
Sourcefn reapply_settings<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
settings: &'life2 ExecutorSettings,
source_range: SourceRange,
id_generator: &'life3 mut IdGenerator,
grid_scale_unit: GridScaleBehavior,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn reapply_settings<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
settings: &'life2 ExecutorSettings,
source_range: SourceRange,
id_generator: &'life3 mut IdGenerator,
grid_scale_unit: GridScaleBehavior,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Re-run the command to apply the settings.
fn batch_modeling_cmd<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id: Uuid,
source_range: SourceRange,
cmd: &'life2 ModelingCmd,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn batch_modeling_cmds<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
source_range: SourceRange,
cmds: &'life2 [ModelingCmdReq],
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Sourcefn batch_end_cmd<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id: Uuid,
source_range: SourceRange,
cmd: &'life2 ModelingCmd,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn batch_end_cmd<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id: Uuid,
source_range: SourceRange,
cmd: &'life2 ModelingCmd,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Add a command to the batch that needs to be executed at the very end. This for stuff like fillets or chamfers where if we execute too soon the engine will eat the ID and we can’t reference it for other commands.
Sourcefn send_modeling_cmd<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id: Uuid,
source_range: SourceRange,
cmd: &'life2 ModelingCmd,
) -> Pin<Box<dyn Future<Output = Result<OkWebSocketResponseData, KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn send_modeling_cmd<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id: Uuid,
source_range: SourceRange,
cmd: &'life2 ModelingCmd,
) -> Pin<Box<dyn Future<Output = Result<OkWebSocketResponseData, KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Send the modeling cmd and wait for the response.
Sourcefn async_modeling_cmd<'life0, 'life1, 'async_trait>(
&'life0 self,
id: Uuid,
source_range: SourceRange,
cmd: &'life1 ModelingCmd,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn async_modeling_cmd<'life0, 'life1, 'async_trait>(
&'life0 self,
id: Uuid,
source_range: SourceRange,
cmd: &'life1 ModelingCmd,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Send the modeling cmd async and don’t wait for the response. Add it to our list of async commands.
Sourcefn run_batch<'life0, 'async_trait>(
&'life0 self,
orig_requests: Vec<(WebSocketRequest, SourceRange)>,
source_range: SourceRange,
) -> Pin<Box<dyn Future<Output = Result<OkWebSocketResponseData, KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn run_batch<'life0, 'async_trait>(
&'life0 self,
orig_requests: Vec<(WebSocketRequest, SourceRange)>,
source_range: SourceRange,
) -> Pin<Box<dyn Future<Output = Result<OkWebSocketResponseData, KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Run the batch for the specific commands.
Sourcefn flush_batch<'life0, 'life1, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
batch_end: bool,
source_range: SourceRange,
) -> Pin<Box<dyn Future<Output = Result<OkWebSocketResponseData, KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn flush_batch<'life0, 'life1, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
batch_end: bool,
source_range: SourceRange,
) -> Pin<Box<dyn Future<Output = Result<OkWebSocketResponseData, KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Force flush the batch queue.
fn make_default_plane<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
plane_id: Uuid,
info: &'life2 PlaneInfo,
color: Option<Color>,
source_range: SourceRange,
id_generator: &'life3 mut IdGenerator,
) -> Pin<Box<dyn Future<Output = Result<Uuid, KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn new_default_planes<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
id_generator: &'life2 mut IdGenerator,
source_range: SourceRange,
) -> Pin<Box<dyn Future<Output = Result<DefaultPlanes, KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn parse_websocket_response( &self, response: WebSocketResponse, source_range: SourceRange, ) -> Result<OkWebSocketResponseData, KclError>
fn parse_batch_responses( &self, id: Uuid, id_to_source_range: HashMap<Uuid, SourceRange>, responses: HashMap<Uuid, BatchResponse>, ) -> Result<OkWebSocketResponseData, KclError>
fn modify_grid<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
batch_context: &'life1 EngineBatchContext,
hidden: bool,
grid_scale_behavior: GridScaleBehavior,
source_range: SourceRange,
id_generator: &'life2 mut IdGenerator,
) -> Pin<Box<dyn Future<Output = Result<(), KclError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Sourcefn get_session_data<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Option<ModelingSessionData>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_session_data<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Option<ModelingSessionData>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get session data, if it has been received. Returns None if the server never sent it.