DaggerEngine
Extends:
Stores all commands and, when done, inverts the circuit & runs it.
Constructor Summary
Public Constructor | ||
public |
|
Member Summary
Public Members | ||
public |
|
|
public |
commands: *[] |
|
public |
|
Method Summary
Public Methods | ||
public |
Receive a list of commands and store them for later inversion. |
|
public |
run() Run the stored circuit in reverse and check that local qubits have been deallocated. |
Inherited Summary
From class BasicEngine | ||
public |
|
|
public |
allocateQubit(dirty: boolean): Qureg Return a new qubit as a list containing 1 qubit object (quantum register of size 1). |
|
public |
allocateQureg(n: number): Qureg Allocate n qubits and return them as a quantum register, which is a list of qubit objects. |
|
public |
deallocateQubit(qubit: BasicQubit) Deallocate a qubit (and sends the deallocation command down the pipeline). |
|
public |
isAvailable(cmd: Command): boolean Default implementation of isAvailable: Ask the next engine whether a command is available, i.e., whether it can be executed by the next engine(s). |
|
public |
isMetaTagSupported(metaTag: function): boolean Check if there is a compiler engine handling the meta tag |
|
public |
receive() |
|
public |
Forward the list of commands to the next engine in the pipeline. |
Public Constructors
Public Members
public allocateQubitIDs: * source
public commands: *[] source
public deallocateQubitIDs: * source
Public Methods
public receive(cmdList: Command[]) source
Receive a list of commands and store them for later inversion.
Override:
BasicEngine#receiveParams:
Name | Type | Attribute | Description |
cmdList | Command[] | List of commands to temporarily store. |
public run() source
Run the stored circuit in reverse and check that local qubits have been deallocated.