QDMI v1.1.0
Quantum Device Management Interface
Loading...
Searching...
No Matches
types.h File Reference

Description

Defines all types used within QDMI across the QDMI Client Interface and the QDMI Device Interface.

Go to the source code of this file.

Typedefs

typedef struct QDMI_Site_impl_d * QDMI_Site
 A handle for a site.
 
typedef struct QDMI_Operation_impl_d * QDMI_Operation
 A handle for an operation.
 

Typedef Documentation

◆ QDMI_Site

typedef struct QDMI_Site_impl_d* QDMI_Site

A handle for a site.

An opaque pointer to an implementation of the QDMI site concept. A site is a place that can potentially hold a qubit. In case of superconducting qubits, sites can be used synonymously with qubits. In case of neutral atoms, sites represent individual traps that can confine atoms. Those atoms are then used as qubits. To this end, sites are generalizations of qubits that denote locations where qubits can be placed on a device. Each implementation of the QDMI Device Interface defines the actual implementation of the concept.

A simple example of an implementation is a struct that merely contains the site ID, which can be used to identify the site.

struct QDMI_Site_impl_d {
size_t id;
};

◆ QDMI_Operation

typedef struct QDMI_Operation_impl_d* QDMI_Operation

A handle for an operation.

An opaque pointer to an implementation of the QDMI operation concept. An operation generally represents any instruction that can be executed on a device. This includes gates, measurements, classical control flow elements, movement of qubits, pulse-level instructions, etc. Each implementation of the QDMI Device Interface defines the actual implementation of the concept.

A simple example of an implementation is a struct that merely contains the name of the operation, which can be used to identify the operation.

struct QDMI_Operation_impl_d {
std::string name;
};