Skip to main content

LinuxCncService

Trait LinuxCncService 

Source
pub trait LinuxCncService:
    Send
    + Sync
    + 'static {
    type StreamStatusStream: Stream<Item = Result<LinuxCncStatus, Status>> + Send + 'static;
    type StreamErrorsStream: Stream<Item = Result<ErrorMessage, Status>> + Send + 'static;

    // Required methods
    fn get_status<'life0, 'async_trait>(
        &'life0 self,
        request: Request<GetStatusRequest>,
    ) -> Pin<Box<dyn Future<Output = Result<Response<LinuxCncStatus>, Status>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn send_command<'life0, 'async_trait>(
        &'life0 self,
        request: Request<LinuxCncCommand>,
    ) -> Pin<Box<dyn Future<Output = Result<Response<CommandResponse>, Status>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn wait_complete<'life0, 'async_trait>(
        &'life0 self,
        request: Request<WaitCompleteRequest>,
    ) -> Pin<Box<dyn Future<Output = Result<Response<CommandResponse>, Status>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn stream_status<'life0, 'async_trait>(
        &'life0 self,
        request: Request<StreamStatusRequest>,
    ) -> Pin<Box<dyn Future<Output = Result<Response<Self::StreamStatusStream>, Status>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn stream_errors<'life0, 'async_trait>(
        &'life0 self,
        request: Request<StreamErrorsRequest>,
    ) -> Pin<Box<dyn Future<Output = Result<Response<Self::StreamErrorsStream>, Status>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn upload_file<'life0, 'async_trait>(
        &'life0 self,
        request: Request<UploadFileRequest>,
    ) -> Pin<Box<dyn Future<Output = Result<Response<UploadFileResponse>, Status>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn list_files<'life0, 'async_trait>(
        &'life0 self,
        request: Request<ListFilesRequest>,
    ) -> Pin<Box<dyn Future<Output = Result<Response<ListFilesResponse>, Status>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn delete_file<'life0, 'async_trait>(
        &'life0 self,
        request: Request<DeleteFileRequest>,
    ) -> Pin<Box<dyn Future<Output = Result<Response<DeleteFileResponse>, Status>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
}
Expand description

Generated trait containing gRPC methods that should be implemented for use with LinuxCncServiceServer.

Required Associated Types§

Source

type StreamStatusStream: Stream<Item = Result<LinuxCncStatus, Status>> + Send + 'static

Server streaming response type for the StreamStatus method.

Source

type StreamErrorsStream: Stream<Item = Result<ErrorMessage, Status>> + Send + 'static

Server streaming response type for the StreamErrors method.

Required Methods§

Source

fn get_status<'life0, 'async_trait>( &'life0 self, request: Request<GetStatusRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<LinuxCncStatus>, Status>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get current status (poll equivalent)

Source

fn send_command<'life0, 'async_trait>( &'life0 self, request: Request<LinuxCncCommand>, ) -> Pin<Box<dyn Future<Output = Result<Response<CommandResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Send a command

Source

fn wait_complete<'life0, 'async_trait>( &'life0 self, request: Request<WaitCompleteRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<CommandResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Wait for command completion

Source

fn stream_status<'life0, 'async_trait>( &'life0 self, request: Request<StreamStatusRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<Self::StreamStatusStream>, Status>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Stream status updates

Source

fn stream_errors<'life0, 'async_trait>( &'life0 self, request: Request<StreamErrorsRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<Self::StreamErrorsStream>, Status>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Stream errors

Source

fn upload_file<'life0, 'async_trait>( &'life0 self, request: Request<UploadFileRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<UploadFileResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Upload a G-code file to the nc_files directory

Source

fn list_files<'life0, 'async_trait>( &'life0 self, request: Request<ListFilesRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<ListFilesResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

List files in the nc_files directory

Source

fn delete_file<'life0, 'async_trait>( &'life0 self, request: Request<DeleteFileRequest>, ) -> Pin<Box<dyn Future<Output = Result<Response<DeleteFileResponse>, Status>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Delete a file from the nc_files directory

Implementors§