qcor.hpp 611 Bytes
Newer Older
Mccaskey, Alex's avatar
Mccaskey, Alex committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#ifndef RUNTIME_QCOR_HPP_
#define RUNTIME_QCOR_HPP_

#include <future>

#include "qpu_handler.hpp"

namespace xacc {
    class Function;
}

using namespace xacc;

namespace qcor {

using HandlerLambda = std::function<void(qpu_handler &)>;

// Persist the given function to file, return
// the file name
const std::string persistCompiledCircuit(std::shared_ptr<Function> function);

// Load the compiled circuit from file
std::shared_ptr<Function> loadCompiledCircuit(const std::string &fileName);

// Submit an asynchronous job to the QPU
std::future<int> submit(HandlerLambda &&);

} // namespace qcor

#endif