13 #ifndef QUANTUM_GATE_ACCELERATORS_QCS_MESSAGES_HPP_ 14 #define QUANTUM_GATE_ACCELERATORS_QCS_MESSAGES_HPP_ 16 #include <msgpack.hpp> 25 std::string _type =
"BinaryExecutableRequest";
30 MSGPACK_DEFINE_MAP(quil, num_shots, _type);
36 std::vector<std::string> args;
39 MSGPACK_DEFINE_MAP(wait, MSGPACK_NVP(
"*args", args));
43 std::vector<int> shape;
45 std::vector<char> data;
46 MSGPACK_DEFINE_MAP(shape, dtype, data);
52 std::string jsonrpc =
"2.0";
53 std::map<std::string, QType> result;
54 std::vector<int> warnings = {};
55 std::string _type =
"RPCReply";
56 MSGPACK_DEFINE_MAP(
id, jsonrpc, warnings, _type, result);
62 std::string jsonrpc =
"2.0";
63 std::string method =
"get_buffers";
65 std::string _type =
"RPCRequest";
69 MSGPACK_DEFINE_MAP(method,
id, jsonrpc, params, _type);
74 std::vector<BinaryExecutableRequest> args;
80 MSGPACK_DEFINE_MAP(MSGPACK_NVP(
"*args", args));
86 std::string jsonrpc =
"2.0";
87 std::string method =
"native_quil_to_binary";
89 std::string _type =
"RPCRequest";
93 MSGPACK_DEFINE_MAP(method,
id, jsonrpc, params, _type);
100 std::map<std::string,std::string> patch_values;
101 std::string _type =
"QPURequest";
104 QPURequest(std::string p, std::string i) : program(p), id(i) {}
105 MSGPACK_DEFINE_MAP(
id, program, _type, patch_values);
111 std::string user =
"";
115 MSGPACK_DEFINE_MAP(MSGPACK_NVP(
"request", request), user, priority);
121 std::string jsonrpc =
"2.0";
122 std::string method =
"execute_qpu_request";
124 std::string _type =
"RPCRequest";
125 msgpack::type::nil_t client_key;
130 MSGPACK_DEFINE_MAP(method,
id, jsonrpc, params, _type, client_key);
Definition: messages.hpp:21
Definition: messages.hpp:96
Definition: messages.hpp:118
Definition: Accelerator.hpp:25
Definition: messages.hpp:49
Definition: messages.hpp:59
Definition: messages.hpp:72
Definition: messages.hpp:42
Definition: messages.hpp:33
Definition: messages.hpp:108
Definition: messages.hpp:83