IBM QDMI Device
IBM backend queries, OpenQASM 3 execution, and QDMI interfaces
Loading...
Searching...
No Matches
device.h File Reference

Defines the QDMI Device Interface. More...

#include "ibm_qdmi/constants.h"
#include "ibm_qdmi/export.h"
#include "ibm_qdmi/types.h"
#include <stddef.h>

Go to the source code of this file.

Typedefs

typedef struct IBM_QDMI_Device_Session_impl_d * IBM_QDMI_Device_Session
 A handle for a device session.
typedef struct IBM_QDMI_Device_Job_impl_d * IBM_QDMI_Device_Job
 A handle for a device job.
typedef struct IBM_QDMI_Child_Device_impl_d * IBM_QDMI_Child_Device
 A handle for a child device.

Functions

int IBM_QDMI_device_initialize (void)
 Initialize a device.
int IBM_QDMI_device_finalize (void)
 Finalize a device.
int IBM_QDMI_device_session_alloc (IBM_QDMI_Device_Session *session)
 Allocate a new device session.
int IBM_QDMI_device_session_set_parameter (IBM_QDMI_Device_Session session, QDMI_Device_Session_Parameter param, size_t size, const void *value)
 Set a parameter for a device session.
int IBM_QDMI_device_session_init (IBM_QDMI_Device_Session session)
 Initialize a device session.
void IBM_QDMI_device_session_free (IBM_QDMI_Device_Session session)
 Free a QDMI device session.
int IBM_QDMI_device_session_query_device_property (IBM_QDMI_Device_Session session, QDMI_Device_Property prop, size_t size, void *value, size_t *size_ret)
 Query a device property.
int IBM_QDMI_device_session_query_site_property (IBM_QDMI_Device_Session session, IBM_QDMI_Site site, QDMI_Site_Property prop, size_t size, void *value, size_t *size_ret)
 Query a site property.
int IBM_QDMI_device_session_query_operation_property (IBM_QDMI_Device_Session session, IBM_QDMI_Operation operation, size_t num_sites, const IBM_QDMI_Site *sites, size_t num_params, const double *params, QDMI_Operation_Property prop, size_t size, void *value, size_t *size_ret)
 Query an operation property.
int IBM_QDMI_device_session_create_device_job (IBM_QDMI_Device_Session session, IBM_QDMI_Device_Job *job)
 Create a job.
int IBM_QDMI_device_session_retrieve_device_job_by_id (IBM_QDMI_Device_Session session, const char *job_id, IBM_QDMI_Device_Job *job)
 Retrieve an existing device job by its ID.
int IBM_QDMI_device_job_set_parameter (IBM_QDMI_Device_Job job, QDMI_Device_Job_Parameter param, size_t size, const void *value)
 Set a parameter for a job.
int IBM_QDMI_device_job_query_property (IBM_QDMI_Device_Job job, QDMI_Device_Job_Property prop, size_t size, void *value, size_t *size_ret)
 Query a job property.
int IBM_QDMI_device_job_submit (IBM_QDMI_Device_Job job)
 Submit a job to the device.
int IBM_QDMI_device_job_cancel (IBM_QDMI_Device_Job job)
 Cancel an already submitted job.
int IBM_QDMI_device_job_check (IBM_QDMI_Device_Job job, QDMI_Job_Status *status)
 Check the status of a job.
int IBM_QDMI_device_job_wait (IBM_QDMI_Device_Job job, size_t timeout)
 Wait for a job to finish.
int IBM_QDMI_device_job_get_results (IBM_QDMI_Device_Job job, QDMI_Job_Result result, size_t size, void *data, size_t *size_ret)
 Retrieve the results of a job.
void IBM_QDMI_device_job_free (IBM_QDMI_Device_Job job)
 Free a job.

Detailed Description

Defines the QDMI Device Interface.