QCOR
Public Member Functions | List of all members
qcor::KernelSignature< Args > Class Template Reference

Public Member Functions

template<typename... CaptureArgs>
 KernelSignature (_qpu_lambda< CaptureArgs... > &lambda)
 
 KernelSignature (callable_function_ptr< Args... > &&f)
 
template<typename KernelType , std::enable_if_t< std::is_base_of_v< QuantumKernel< KernelType, Args... >, KernelType >, bool > = true>
 KernelSignature (KernelType &kernel)
 
 KernelSignature (void *&f_ptr)
 
void operator() (std::shared_ptr< CompositeInstruction > ir, Args... args)
 
void operator() (Args... args)
 
void set_parent_kernel (std::shared_ptr< CompositeInstruction > ir)
 
void ctrl (std::shared_ptr< CompositeInstruction > ir, const std::vector< qubit > &ctrl_qbits, Args... args)
 
void ctrl (std::shared_ptr< CompositeInstruction > ir, const std::vector< int > ctrl_idxs, Args... args)
 
void ctrl (std::shared_ptr< CompositeInstruction > ir, int ctrl_qbit, Args... args)
 
void ctrl (std::shared_ptr< CompositeInstruction > ir, qubit ctrl_qbit, Args... args)
 
void ctrl (std::shared_ptr< CompositeInstruction > ir, qreg ctrl_qbits, Args... args)
 
void adjoint (std::shared_ptr< CompositeInstruction > ir, Args... args)
 
void print_kernel (std::ostream &os, Args... args)
 
void print_kernel (Args... args)
 
std::size_t n_instructions (Args... args)
 
UnitaryMatrix as_unitary_matrix (Args... args)
 
std::string openqasm (Args... args)
 
double observe (std::shared_ptr< Operator > obs, Args... args)
 
double observe (Operator &obs, Args... args)
 

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