QCOR
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Attributes | Friends | List of all members
qcor::QuantumKernel< Derived, Args > Class Template Reference

Public Member Functions

 QuantumKernel (Args... args)
 
 QuantumKernel (std::shared_ptr< qcor::CompositeInstruction > _parent_kernel, Args... args)
 

Static Public Member Functions

static void print_kernel (std::ostream &os, Args... args)
 
static void print_kernel (Args... args)
 
static std::size_t n_instructions (Args... args)
 
static void adjoint (std::shared_ptr< CompositeInstruction > parent_kernel, Args... args)
 
static void ctrl (std::shared_ptr< CompositeInstruction > parent_kernel, const std::vector< int > &ctrlIdx, Args... args)
 
static void ctrl (std::shared_ptr< CompositeInstruction > parent_kernel, int ctrlIdx, Args... args)
 
static void ctrl (std::shared_ptr< CompositeInstruction > parent_kernel, qreg ctrl_qbits, Args... args)
 
static void ctrl (std::shared_ptr< CompositeInstruction > parent_kernel, const std::vector< qubit > &ctrl_qbits, Args... args)
 
static void ctrl (std::shared_ptr< CompositeInstruction > parent_kernel, qubit ctrl_qbit, Args... args)
 
static UnitaryMatrix as_unitary_matrix (Args... args)
 
static double observe (Operator &obs, Args... args)
 
static double observe (std::shared_ptr< Operator > obs, Args... args)
 
static double autograd (Operator &obs, std::vector< double > &dx, qreg q, double x)
 
static double autograd (Operator &obs, std::vector< double > &dx, qreg q, std::vector< double > x)
 
static double autograd (Operator &obs, std::vector< double > &dx, std::vector< double > x, ArgsTranslator< Args... > args_translator)
 
static std::string openqasm (Args... args)
 

Public Attributes

bool optimize_only = false
 
QrtType runtime_env = QrtType::NISQ
 

Protected Attributes

std::tuple< Args... > args_tuple
 
std::shared_ptr< qcor::CompositeInstructionparent_kernel
 
bool is_callable = true
 
bool disable_destructor = false
 

Friends

template<typename... ArgTypes>
class KernelSignature
 

The documentation for this class was generated from the following file: