pub struct DistributedQuantumOrchestrator { /* private fields */ }Implementations§
Source§impl DistributedQuantumOrchestrator
impl DistributedQuantumOrchestrator
Sourcepub fn new(config: DistributedOrchestratorConfig) -> Self
pub fn new(config: DistributedOrchestratorConfig) -> Self
Create a new orchestrator with an empty node/workflow registry.
Sourcepub fn execute_distributed(
&self,
circuit: &str,
) -> Result<DistributedExecutionResult, String>
pub fn execute_distributed( &self, circuit: &str, ) -> Result<DistributedExecutionResult, String>
Attempt to execute a circuit on the distributed system.
This performs real local bookkeeping (execution-id allocation, node selection based on the actual registry and node capacity limits) but cannot dispatch work to a remote node because no network transport is implemented in this build. Rather than fabricate a successful result, it reports the specific reason execution could not proceed.
Sourcepub fn add_node(&mut self, node_info: NodeInfo) -> Result<(), String>
pub fn add_node(&mut self, node_info: NodeInfo) -> Result<(), String>
Register (or update) a node in the orchestrator’s registry.
Sourcepub fn remove_node(&mut self, node_id: &str) -> Result<(), String>
pub fn remove_node(&mut self, node_id: &str) -> Result<(), String>
Remove a previously registered node from the registry.
Sourcepub fn get_node_status(&self, node_id: &str) -> Result<NodeStatus, String>
pub fn get_node_status(&self, node_id: &str) -> Result<NodeStatus, String>
Look up the real, currently-recorded status of a registered node.
Sourcepub fn schedule_workflow(
&self,
workflow: DistributedWorkflow,
) -> Result<String, String>
pub fn schedule_workflow( &self, workflow: DistributedWorkflow, ) -> Result<String, String>
Validate and register a workflow for scheduling, returning a real generated workflow id. The workflow’s step dependency graph is checked for cycles using a real topological sort (petgraph); a workflow whose dependencies form a cycle is rejected rather than silently accepted.
Sourcepub fn node_count(&self) -> usize
pub fn node_count(&self) -> usize
Number of nodes currently registered (used by callers/tests to observe real registry state).
Sourcepub fn workflow_count(&self) -> usize
pub fn workflow_count(&self) -> usize
Number of workflows currently scheduled.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for DistributedQuantumOrchestrator
impl RefUnwindSafe for DistributedQuantumOrchestrator
impl Send for DistributedQuantumOrchestrator
impl Sync for DistributedQuantumOrchestrator
impl Unpin for DistributedQuantumOrchestrator
impl UnsafeUnpin for DistributedQuantumOrchestrator
impl UnwindSafe for DistributedQuantumOrchestrator
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.