Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::inspect::ControlClient Class Reference

Typed capability-control client over one connection-bound transport. More...

#include <control_client.hpp>

Public Member Functions

 ControlClient (ControlClientTransport &transport)
 The connection-bound transport must outlive this client.
 ~ControlClient ()
 ControlClient (const ControlClient &)=delete
ControlClient & operator= (const ControlClient &)=delete
ControlClientNegotiationResult negotiate (const ControlNegotiationOffer &offer, std::chrono::milliseconds timeout=std::chrono::seconds(3))
ControlClientReceiptResult request (const ControlRequestEnvelope &request, std::chrono::milliseconds timeout=std::chrono::seconds(3))
ControlClientReceiptResult cancel (const ControlCancelEnvelope &cancellation, std::chrono::milliseconds timeout=std::chrono::seconds(3))
ControlArtifactReadResult read_artifact (std::string_view artifact_id, std::uint64_t offset, std::size_t maximum_bytes, std::chrono::milliseconds timeout=std::chrono::seconds(3))

Detailed Description

Typed capability-control client over one connection-bound transport.

This class neither discovers nor opens a connection. The transport binds negotiation, requests, cancellation, and artifact reads to the same authenticated session and client identity.

Constructor & Destructor Documentation

◆ ControlClient() [1/2]

pulp::inspect::ControlClient::ControlClient ( ControlClientTransport & transport)
explicit

The connection-bound transport must outlive this client.

◆ ~ControlClient()

pulp::inspect::ControlClient::~ControlClient ( )

◆ ControlClient() [2/2]

pulp::inspect::ControlClient::ControlClient ( const ControlClient & )
delete

Member Function Documentation

◆ cancel()

ControlClientReceiptResult pulp::inspect::ControlClient::cancel ( const ControlCancelEnvelope & cancellation,
std::chrono::milliseconds timeout = std::chrono::seconds(3) )

◆ negotiate()

ControlClientNegotiationResult pulp::inspect::ControlClient::negotiate ( const ControlNegotiationOffer & offer,
std::chrono::milliseconds timeout = std::chrono::seconds(3) )

◆ operator=()

ControlClient & pulp::inspect::ControlClient::operator= ( const ControlClient & )
delete

◆ read_artifact()

ControlArtifactReadResult pulp::inspect::ControlClient::read_artifact ( std::string_view artifact_id,
std::uint64_t offset,
std::size_t maximum_bytes,
std::chrono::milliseconds timeout = std::chrono::seconds(3) )

◆ request()

ControlClientReceiptResult pulp::inspect::ControlClient::request ( const ControlRequestEnvelope & request,
std::chrono::milliseconds timeout = std::chrono::seconds(3) )

The documentation for this class was generated from the following file: