Maestro 0.3.11
Unified interface for quantum circuit simulation
Loading...
Searching...
No Matches
MaestroLibrary Class Reference

#include <MaestroLib.hpp>

Inheritance diagram for MaestroLibrary:
Collaboration diagram for MaestroLibrary:

Public Member Functions

 MaestroLibrary () noexcept
 MaestroLibrary (const MaestroLibrary &)=delete
 MaestroLibrary (MaestroLibrary &&)=default
virtual ~MaestroLibrary ()
int AddOptimizationSimulator (unsigned long int simHandle, int simType, int simExecType)
unsigned long int AllocateQubits (void *sim, unsigned long int nrQubits)
double * AllProbabilities (void *sim)
double * Amplitude (void *sim, unsigned long long int outcome)
int ApplyCCX (void *sim, int controlQubit1, int controlQubit2, int targetQubit)
int ApplyCH (void *sim, int controlQubit, int targetQubit)
int ApplyCP (void *sim, int controlQubit, int targetQubit, double theta)
int ApplyCRx (void *sim, int controlQubit, int targetQubit, double theta)
int ApplyCRy (void *sim, int controlQubit, int targetQubit, double theta)
int ApplyCRz (void *sim, int controlQubit, int targetQubit, double theta)
int ApplyCSwap (void *sim, int controlQubit, int qubit1, int qubit2)
int ApplyCSX (void *sim, int controlQubit, int targetQubit)
int ApplyCSXDG (void *sim, int controlQubit, int targetQubit)
int ApplyCU (void *sim, int controlQubit, int targetQubit, double theta, double phi, double lambda, double gamma)
int ApplyCX (void *sim, int controlQubit, int targetQubit)
int ApplyCY (void *sim, int controlQubit, int targetQubit)
int ApplyCZ (void *sim, int controlQubit, int targetQubit)
int ApplyGenericOneQubitGate (void *sim, unsigned long q0, const double *matrix)
int ApplyGenericThreeQubitGate (void *sim, unsigned long q0, unsigned long q1, unsigned long q2, const double *matrix)
int ApplyGenericTwoQubitGate (void *sim, unsigned long q0, unsigned long q1, const double *matrix)
int ApplyH (void *sim, int qubit)
int ApplyK (void *sim, int qubit)
int ApplyP (void *sim, int qubit, double theta)
int ApplyReset (void *sim, const unsigned long int *qubits, unsigned long int nrQubits)
int ApplyRx (void *sim, int qubit, double theta)
int ApplyRy (void *sim, int qubit, double theta)
int ApplyRz (void *sim, int qubit, double theta)
int ApplyS (void *sim, int qubit)
int ApplySDG (void *sim, int qubit)
int ApplySwap (void *sim, int qubit1, int qubit2)
int ApplySX (void *sim, int qubit)
int ApplySXDG (void *sim, int qubit)
int ApplyT (void *sim, int qubit)
int ApplyTDG (void *sim, int qubit)
int ApplyU (void *sim, int qubit, double theta, double phi, double lambda, double gamma)
int ApplyX (void *sim, int qubit)
int ApplyY (void *sim, int qubit)
int ApplyZ (void *sim, int qubit)
int ClearSimulator (void *sim)
int ConfigureSimulator (void *sim, const char *key, const char *value)
virtual unsigned long int CreateSimpleSimulator (int nrQubits)
virtual unsigned long int CreateSimulator (int simType, int simExecType)
void DestroySimpleSimulator (unsigned long int simHandle)
void DestroySimulator (unsigned long int simHandle)
std::complex< double > ExpectationValueOperators (void *sim, const std::vector< unsigned long > &qubits, const std::vector< std::array< std::complex< double >, 4 > > &matrices)
std::vector< double > ExpectationValues (void *sim, const std::vector< std::string > &paulis)
std::vector< std::complex< double > > ExpectationValuesComplex (void *sim, const std::vector< std::string > &paulis, bool normalized=true)
int FlushSimulator (void *sim)
virtual void FreeDoubleVector (double *vec)
virtual void FreeResult (char *result)
virtual void FreeULLIVector (unsigned long long int *vec)
char * GetConfiguration (void *sim, const char *key)
void * GetFunction (const char *funcName) noexcept
unsigned GetGateFusionMaxQubits (void *sim)
int GetGateFusionStatistics (void *sim, MaestroGateFusionStatistics *statistics)
const void * GetHandle () const noexcept
int GetMultithreading (void *sim)
unsigned long int GetNumberOfQubits (void *sim)
int GetSimulationType (void *sim)
void * GetSimulator (unsigned long int simHandle)
int GetSimulatorType (void *sim)
std::vector< std::complex< double > > GetStateVector (void *sim)
bool Init (const char *libName) noexcept override
int InitializeSimulator (void *sim)
int IsGateFusionEnabled (void *sim)
bool IsMuted () const noexcept
int IsQcsim (void *sim)
bool IsValid () const
unsigned long long int Measure (void *sim, const unsigned long int *qubits, unsigned long int nrQubits)
unsigned long long int MeasureNoCollapse (void *sim)
void MoveAtBeginningOfChain (void *sim, const std::vector< unsigned long > &qubits)
MaestroLibrary & operator= (const MaestroLibrary &)=delete
MaestroLibrary & operator= (MaestroLibrary &&)=default
double * Probabilities (void *sim, const unsigned long long int *qubits, unsigned long int nrQubits)
double Probability (void *sim, unsigned long long int outcome)
int RemoveAllOptimizationSimulatorsAndAdd (unsigned long int simHandle, int simType, int simExecType)
int ResetSimulator (void *sim)
int RestoreInternalDestructiveSavedState (void *sim)
int RestoreState (void *sim)
std::string RunRequestJson (const std::string &request)
unsigned long long int * SampleCounts (void *sim, const unsigned long long int *qubits, unsigned long int nrQubits, unsigned long int shots)
int SaveState (void *sim)
int SaveStateToInternalDestructive (void *sim)
int SetMultithreading (void *sim, int multithreading)
void SetMute (bool m) noexcept
char * SimpleEstimate (unsigned long int simpleSim, const char *jsonCircuit, const char *observableStr, const char *jsonConfig)
char * SimpleExecute (unsigned long int simpleSim, const char *jsonCircuit, const char *jsonConfig)
std::string ValidateRequestJson (const std::string &request)

Static Public Member Functions

static void CheckFunction (void *func, int line) noexcept

Detailed Description

Definition at line 12 of file MaestroLib.hpp.

Constructor & Destructor Documentation

◆ MaestroLibrary() [1/3]

MaestroLibrary::MaestroLibrary ( const MaestroLibrary & )
delete

◆ MaestroLibrary() [2/3]

MaestroLibrary::MaestroLibrary ( MaestroLibrary && )
default

References MaestroLibrary().

◆ MaestroLibrary() [3/3]

MaestroLibrary::MaestroLibrary ( )
inlinenoexcept

Definition at line 21 of file MaestroLib.hpp.

◆ ~MaestroLibrary()

virtual MaestroLibrary::~MaestroLibrary ( )
inlinevirtual

Definition at line 25 of file MaestroLib.hpp.

Member Function Documentation

◆ AddOptimizationSimulator()

int MaestroLibrary::AddOptimizationSimulator ( unsigned long int simHandle,
int simType,
int simExecType )
inline

Definition at line 267 of file MaestroLib.hpp.

Referenced by SimpleSimulator::AddOptimizationSimulator().

◆ AllocateQubits()

unsigned long int MaestroLibrary::AllocateQubits ( void * sim,
unsigned long int nrQubits )
inline

Definition at line 371 of file MaestroLib.hpp.

Referenced by Simulator::AllocateQubits().

◆ AllProbabilities()

double * MaestroLibrary::AllProbabilities ( void * sim)
inline

Definition at line 451 of file MaestroLib.hpp.

Referenced by Simulator::AllProbabilities().

◆ Amplitude()

double * MaestroLibrary::Amplitude ( void * sim,
unsigned long long int outcome )
inline

Definition at line 442 of file MaestroLib.hpp.

Referenced by Simulator::Amplitude().

◆ ApplyCCX()

int MaestroLibrary::ApplyCCX ( void * sim,
int controlQubit1,
int controlQubit2,
int targetQubit )
inline

Definition at line 843 of file MaestroLib.hpp.

Referenced by Simulator::ApplyCCX().

◆ ApplyCH()

int MaestroLibrary::ApplyCH ( void * sim,
int controlQubit,
int targetQubit )
inline

Definition at line 780 of file MaestroLib.hpp.

Referenced by Simulator::ApplyCH().

◆ ApplyCP()

int MaestroLibrary::ApplyCP ( void * sim,
int controlQubit,
int targetQubit,
double theta )
inline

Definition at line 807 of file MaestroLib.hpp.

Referenced by Simulator::ApplyCP().

◆ ApplyCRx()

int MaestroLibrary::ApplyCRx ( void * sim,
int controlQubit,
int targetQubit,
double theta )
inline

Definition at line 816 of file MaestroLib.hpp.

Referenced by Simulator::ApplyCRx().

◆ ApplyCRy()

int MaestroLibrary::ApplyCRy ( void * sim,
int controlQubit,
int targetQubit,
double theta )
inline

Definition at line 825 of file MaestroLib.hpp.

Referenced by Simulator::ApplyCRy().

◆ ApplyCRz()

int MaestroLibrary::ApplyCRz ( void * sim,
int controlQubit,
int targetQubit,
double theta )
inline

Definition at line 834 of file MaestroLib.hpp.

Referenced by Simulator::ApplyCRz().

◆ ApplyCSwap()

int MaestroLibrary::ApplyCSwap ( void * sim,
int controlQubit,
int qubit1,
int qubit2 )
inline

Definition at line 861 of file MaestroLib.hpp.

Referenced by Simulator::ApplyCSwap().

◆ ApplyCSX()

int MaestroLibrary::ApplyCSX ( void * sim,
int controlQubit,
int targetQubit )
inline

Definition at line 789 of file MaestroLib.hpp.

Referenced by Simulator::ApplyCSX().

◆ ApplyCSXDG()

int MaestroLibrary::ApplyCSXDG ( void * sim,
int controlQubit,
int targetQubit )
inline

Definition at line 798 of file MaestroLib.hpp.

Referenced by Simulator::ApplyCSXDG().

◆ ApplyCU()

int MaestroLibrary::ApplyCU ( void * sim,
int controlQubit,
int targetQubit,
double theta,
double phi,
double lambda,
double gamma )
inline

Definition at line 870 of file MaestroLib.hpp.

Referenced by Simulator::ApplyCU().

◆ ApplyCX()

int MaestroLibrary::ApplyCX ( void * sim,
int controlQubit,
int targetQubit )
inline

Definition at line 753 of file MaestroLib.hpp.

Referenced by Simulator::ApplyCX().

◆ ApplyCY()

int MaestroLibrary::ApplyCY ( void * sim,
int controlQubit,
int targetQubit )
inline

Definition at line 762 of file MaestroLib.hpp.

Referenced by Simulator::ApplyCY().

◆ ApplyCZ()

int MaestroLibrary::ApplyCZ ( void * sim,
int controlQubit,
int targetQubit )
inline

Definition at line 771 of file MaestroLib.hpp.

Referenced by Simulator::ApplyCZ().

◆ ApplyGenericOneQubitGate()

int MaestroLibrary::ApplyGenericOneQubitGate ( void * sim,
unsigned long q0,
const double * matrix )
inline

Definition at line 511 of file MaestroLib.hpp.

Referenced by Simulator::ApplyGenericOneQubitGate().

◆ ApplyGenericThreeQubitGate()

int MaestroLibrary::ApplyGenericThreeQubitGate ( void * sim,
unsigned long q0,
unsigned long q1,
unsigned long q2,
const double * matrix )
inline

Definition at line 521 of file MaestroLib.hpp.

Referenced by Simulator::ApplyGenericThreeQubitGate().

◆ ApplyGenericTwoQubitGate()

int MaestroLibrary::ApplyGenericTwoQubitGate ( void * sim,
unsigned long q0,
unsigned long q1,
const double * matrix )
inline

Definition at line 516 of file MaestroLib.hpp.

Referenced by Simulator::ApplyGenericTwoQubitGate().

◆ ApplyH()

int MaestroLibrary::ApplyH ( void * sim,
int qubit )
inline

Definition at line 636 of file MaestroLib.hpp.

Referenced by Simulator::ApplyH().

◆ ApplyK()

int MaestroLibrary::ApplyK ( void * sim,
int qubit )
inline

Definition at line 699 of file MaestroLib.hpp.

Referenced by Simulator::ApplyK().

◆ ApplyP()

int MaestroLibrary::ApplyP ( void * sim,
int qubit,
double theta )
inline

Definition at line 708 of file MaestroLib.hpp.

Referenced by Simulator::ApplyP().

◆ ApplyReset()

int MaestroLibrary::ApplyReset ( void * sim,
const unsigned long int * qubits,
unsigned long int nrQubits )
inline

Definition at line 408 of file MaestroLib.hpp.

Referenced by Simulator::ApplyReset().

◆ ApplyRx()

int MaestroLibrary::ApplyRx ( void * sim,
int qubit,
double theta )
inline

Definition at line 717 of file MaestroLib.hpp.

Referenced by Simulator::ApplyRx().

◆ ApplyRy()

int MaestroLibrary::ApplyRy ( void * sim,
int qubit,
double theta )
inline

Definition at line 726 of file MaestroLib.hpp.

Referenced by Simulator::ApplyRy().

◆ ApplyRz()

int MaestroLibrary::ApplyRz ( void * sim,
int qubit,
double theta )
inline

Definition at line 735 of file MaestroLib.hpp.

Referenced by Simulator::ApplyRz().

◆ ApplyS()

int MaestroLibrary::ApplyS ( void * sim,
int qubit )
inline

Definition at line 645 of file MaestroLib.hpp.

Referenced by Simulator::ApplyS().

◆ ApplySDG()

int MaestroLibrary::ApplySDG ( void * sim,
int qubit )
inline

Definition at line 654 of file MaestroLib.hpp.

Referenced by Simulator::ApplySDG().

◆ ApplySwap()

int MaestroLibrary::ApplySwap ( void * sim,
int qubit1,
int qubit2 )
inline

Definition at line 852 of file MaestroLib.hpp.

Referenced by Simulator::ApplySwap().

◆ ApplySX()

int MaestroLibrary::ApplySX ( void * sim,
int qubit )
inline

Definition at line 681 of file MaestroLib.hpp.

Referenced by Simulator::ApplySX().

◆ ApplySXDG()

int MaestroLibrary::ApplySXDG ( void * sim,
int qubit )
inline

Definition at line 690 of file MaestroLib.hpp.

Referenced by Simulator::ApplySXDG().

◆ ApplyT()

int MaestroLibrary::ApplyT ( void * sim,
int qubit )
inline

Definition at line 663 of file MaestroLib.hpp.

Referenced by Simulator::ApplyT().

◆ ApplyTDG()

int MaestroLibrary::ApplyTDG ( void * sim,
int qubit )
inline

Definition at line 672 of file MaestroLib.hpp.

Referenced by Simulator::ApplyTDG().

◆ ApplyU()

int MaestroLibrary::ApplyU ( void * sim,
int qubit,
double theta,
double phi,
double lambda,
double gamma )
inline

Definition at line 744 of file MaestroLib.hpp.

Referenced by Simulator::ApplyU().

◆ ApplyX()

int MaestroLibrary::ApplyX ( void * sim,
int qubit )
inline

Definition at line 609 of file MaestroLib.hpp.

Referenced by Simulator::ApplyX().

◆ ApplyY()

int MaestroLibrary::ApplyY ( void * sim,
int qubit )
inline

Definition at line 618 of file MaestroLib.hpp.

Referenced by Simulator::ApplyY().

◆ ApplyZ()

int MaestroLibrary::ApplyZ ( void * sim,
int qubit )
inline

Definition at line 627 of file MaestroLib.hpp.

Referenced by Simulator::ApplyZ().

◆ CheckFunction()

void MaestroLibrary::CheckFunction ( void * func,
int line )
inlinestaticnoexcept

Definition at line 214 of file MaestroLib.hpp.

Referenced by Init().

◆ ClearSimulator()

int MaestroLibrary::ClearSimulator ( void * sim)
inline

Definition at line 390 of file MaestroLib.hpp.

Referenced by Simulator::ClearSimulator().

◆ ConfigureSimulator()

int MaestroLibrary::ConfigureSimulator ( void * sim,
const char * key,
const char * value )
inline

Definition at line 352 of file MaestroLib.hpp.

Referenced by Simulator::ConfigureSimulator().

◆ CreateSimpleSimulator()

virtual unsigned long int MaestroLibrary::CreateSimpleSimulator ( int nrQubits)
inlinevirtual

Reimplemented in SimpleSimulator.

Definition at line 238 of file MaestroLib.hpp.

Referenced by SimpleSimulator::CreateSimpleSimulator().

◆ CreateSimulator()

virtual unsigned long int MaestroLibrary::CreateSimulator ( int simType,
int simExecType )
inlinevirtual

Reimplemented in Simulator.

Definition at line 306 of file MaestroLib.hpp.

Referenced by Simulator::CreateSimulator().

◆ DestroySimpleSimulator()

void MaestroLibrary::DestroySimpleSimulator ( unsigned long int simHandle)
inline

◆ DestroySimulator()

void MaestroLibrary::DestroySimulator ( unsigned long int simHandle)
inline

Definition at line 324 of file MaestroLib.hpp.

Referenced by Simulator::~Simulator(), and Simulator::CreateSimulator().

◆ ExpectationValueOperators()

std::complex< double > MaestroLibrary::ExpectationValueOperators ( void * sim,
const std::vector< unsigned long > & qubits,
const std::vector< std::array< std::complex< double >, 4 > > & matrices )
inline

Definition at line 940 of file MaestroLib.hpp.

Referenced by Simulator::ExpectationValueOperators().

◆ ExpectationValues()

std::vector< double > MaestroLibrary::ExpectationValues ( void * sim,
const std::vector< std::string > & paulis )
inline

Definition at line 879 of file MaestroLib.hpp.

Referenced by Simulator::ExpectationValues().

◆ ExpectationValuesComplex()

std::vector< std::complex< double > > MaestroLibrary::ExpectationValuesComplex ( void * sim,
const std::vector< std::string > & paulis,
bool normalized = true )
inline

Definition at line 893 of file MaestroLib.hpp.

Referenced by Simulator::ExpectationValuesComplex().

◆ FlushSimulator()

int MaestroLibrary::FlushSimulator ( void * sim)
inline

Definition at line 526 of file MaestroLib.hpp.

Referenced by Simulator::FlushSimulator().

◆ FreeDoubleVector()

virtual void MaestroLibrary::FreeDoubleVector ( double * vec)
inlinevirtual

Reimplemented in Simulator.

Definition at line 426 of file MaestroLib.hpp.

Referenced by Simulator::FreeDoubleVector().

◆ FreeResult()

virtual void MaestroLibrary::FreeResult ( char * result)
inlinevirtual

Reimplemented in SimpleSimulator, and Simulator.

Definition at line 298 of file MaestroLib.hpp.

Referenced by SimpleSimulator::FreeResult(), and Simulator::FreeResult().

◆ FreeULLIVector()

virtual void MaestroLibrary::FreeULLIVector ( unsigned long long int * vec)
inlinevirtual

Reimplemented in Simulator.

Definition at line 434 of file MaestroLib.hpp.

Referenced by Simulator::FreeULLIVector().

◆ GetConfiguration()

char * MaestroLibrary::GetConfiguration ( void * sim,
const char * key )
inline

Definition at line 362 of file MaestroLib.hpp.

Referenced by Simulator::GetConfiguration().

◆ GetFunction()

void * Utils::Library::GetFunction ( const char * funcName)
inlinenoexceptinherited

Definition at line 112 of file Library.h.

Referenced by MaestroLibrary::Init(), and Simulators::QuestLibSim::Init().

◆ GetGateFusionMaxQubits()

unsigned MaestroLibrary::GetGateFusionMaxQubits ( void * sim)
inline

Definition at line 496 of file MaestroLib.hpp.

Referenced by Simulator::GetGateFusionMaxQubits().

◆ GetGateFusionStatistics()

int MaestroLibrary::GetGateFusionStatistics ( void * sim,
MaestroGateFusionStatistics * statistics )
inline

Definition at line 506 of file MaestroLib.hpp.

Referenced by Simulator::GetGateFusionStatistics().

◆ GetHandle()

const void * Utils::Library::GetHandle ( ) const
inlinenoexceptinherited

Definition at line 121 of file Library.h.

◆ GetMultithreading()

int MaestroLibrary::GetMultithreading ( void * sim)
inline

Definition at line 582 of file MaestroLib.hpp.

Referenced by Simulator::GetMultithreading().

◆ GetNumberOfQubits()

unsigned long int MaestroLibrary::GetNumberOfQubits ( void * sim)
inline

Definition at line 380 of file MaestroLib.hpp.

Referenced by Simulator::GetNumberOfQubits(), and GetStateVector().

◆ GetSimulationType()

int MaestroLibrary::GetSimulationType ( void * sim)
inline

Definition at line 487 of file MaestroLib.hpp.

Referenced by Simulator::GetSimulationType().

◆ GetSimulator()

void * MaestroLibrary::GetSimulator ( unsigned long int simHandle)
inline

Definition at line 316 of file MaestroLib.hpp.

Referenced by Simulator::CreateSimulator(), and Simulator::GetSimulator().

◆ GetSimulatorType()

int MaestroLibrary::GetSimulatorType ( void * sim)
inline

Definition at line 478 of file MaestroLib.hpp.

Referenced by Simulator::GetSimulatorType().

◆ GetStateVector()

std::vector< std::complex< double > > MaestroLibrary::GetStateVector ( void * sim)
inline

Definition at line 922 of file MaestroLib.hpp.

References GetNumberOfQubits().

Referenced by Simulator::GetStateVector().

◆ Init()

bool MaestroLibrary::Init ( const char * libName)
inlineoverridevirtualnoexcept

Reimplemented from Utils::Library.

Reimplemented in SimpleSimulator, and Simulator.

Definition at line 29 of file MaestroLib.hpp.

References CheckFunction(), Utils::Library::GetFunction(), and Utils::Library::Init().

Referenced by SimpleSimulator::Init(), and Simulator::Init().

◆ InitializeSimulator()

int MaestroLibrary::InitializeSimulator ( void * sim)
inline

Definition at line 332 of file MaestroLib.hpp.

Referenced by Simulator::InitializeSimulator().

◆ IsGateFusionEnabled()

int MaestroLibrary::IsGateFusionEnabled ( void * sim)
inline

Definition at line 501 of file MaestroLib.hpp.

Referenced by Simulator::IsGateFusionEnabled().

◆ IsMuted()

bool Utils::Library::IsMuted ( ) const
inlinenoexceptinherited

Definition at line 126 of file Library.h.

◆ IsQcsim()

int MaestroLibrary::IsQcsim ( void * sim)
inline

Definition at line 591 of file MaestroLib.hpp.

Referenced by Simulator::IsQcsim().

◆ IsValid()

bool MaestroLibrary::IsValid ( ) const
inline

Definition at line 233 of file MaestroLib.hpp.

◆ Measure()

unsigned long long int MaestroLibrary::Measure ( void * sim,
const unsigned long int * qubits,
unsigned long int nrQubits )
inline

Definition at line 399 of file MaestroLib.hpp.

Referenced by Simulator::Measure().

◆ MeasureNoCollapse()

unsigned long long int MaestroLibrary::MeasureNoCollapse ( void * sim)
inline

Definition at line 600 of file MaestroLib.hpp.

Referenced by Simulator::MeasureNoCollapse().

◆ MoveAtBeginningOfChain()

void MaestroLibrary::MoveAtBeginningOfChain ( void * sim,
const std::vector< unsigned long > & qubits )
inline

Definition at line 963 of file MaestroLib.hpp.

Referenced by Simulator::MoveAtBeginningOfChain().

◆ operator=() [1/2]

MaestroLibrary & MaestroLibrary::operator= ( const MaestroLibrary & )
delete

References MaestroLibrary().

◆ operator=() [2/2]

MaestroLibrary & MaestroLibrary::operator= ( MaestroLibrary && )
default

References MaestroLibrary().

◆ Probabilities()

double * MaestroLibrary::Probabilities ( void * sim,
const unsigned long long int * qubits,
unsigned long int nrQubits )
inline

Definition at line 460 of file MaestroLib.hpp.

Referenced by Simulator::Probabilities().

◆ Probability()

double MaestroLibrary::Probability ( void * sim,
unsigned long long int outcome )
inline

Definition at line 417 of file MaestroLib.hpp.

Referenced by Simulator::Probability().

◆ RemoveAllOptimizationSimulatorsAndAdd()

int MaestroLibrary::RemoveAllOptimizationSimulatorsAndAdd ( unsigned long int simHandle,
int simType,
int simExecType )
inline

◆ ResetSimulator()

int MaestroLibrary::ResetSimulator ( void * sim)
inline

Definition at line 342 of file MaestroLib.hpp.

Referenced by Simulator::ResetSimulator().

◆ RestoreInternalDestructiveSavedState()

int MaestroLibrary::RestoreInternalDestructiveSavedState ( void * sim)
inline

Definition at line 545 of file MaestroLib.hpp.

Referenced by Simulator::RestoreInternalDestructiveSavedState().

◆ RestoreState()

int MaestroLibrary::RestoreState ( void * sim)
inline

Definition at line 564 of file MaestroLib.hpp.

Referenced by Simulator::RestoreState().

◆ RunRequestJson()

std::string MaestroLibrary::RunRequestJson ( const std::string & request)
inline

Definition at line 912 of file MaestroLib.hpp.

◆ SampleCounts()

unsigned long long int * MaestroLibrary::SampleCounts ( void * sim,
const unsigned long long int * qubits,
unsigned long int nrQubits,
unsigned long int shots )
inline

Definition at line 469 of file MaestroLib.hpp.

Referenced by Simulator::SampleCounts().

◆ SaveState()

int MaestroLibrary::SaveState ( void * sim)
inline

Definition at line 555 of file MaestroLib.hpp.

Referenced by Simulator::SaveState().

◆ SaveStateToInternalDestructive()

int MaestroLibrary::SaveStateToInternalDestructive ( void * sim)
inline

Definition at line 535 of file MaestroLib.hpp.

Referenced by Simulator::SaveStateToInternalDestructive().

◆ SetMultithreading()

int MaestroLibrary::SetMultithreading ( void * sim,
int multithreading )
inline

Definition at line 573 of file MaestroLib.hpp.

Referenced by Simulator::SetMultithreading().

◆ SetMute()

void Utils::Library::SetMute ( bool m)
inlinenoexceptinherited

Definition at line 131 of file Library.h.

◆ SimpleEstimate()

char * MaestroLibrary::SimpleEstimate ( unsigned long int simpleSim,
const char * jsonCircuit,
const char * observableStr,
const char * jsonConfig )
inline

Definition at line 287 of file MaestroLib.hpp.

Referenced by SimpleSimulator::SimpleEstimate().

◆ SimpleExecute()

char * MaestroLibrary::SimpleExecute ( unsigned long int simpleSim,
const char * jsonCircuit,
const char * jsonConfig )
inline

Definition at line 277 of file MaestroLib.hpp.

Referenced by SimpleSimulator::SimpleExecute().

◆ ValidateRequestJson()

std::string MaestroLibrary::ValidateRequestJson ( const std::string & request)
inline

Definition at line 917 of file MaestroLib.hpp.


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