Maestro 0.3.11
Unified interface for quantum circuit simulation
Loading...
Searching...
No Matches
Simulators::SimulatorsFactory Class Reference

Factory for simulators. More...

#include <Factory.h>

Collaboration diagram for Simulators::SimulatorsFactory:

Static Public Member Functions

static MAESTRO_FACTORY_EXPORT std::unique_ptr< ISimulator > CreateImmediateSimulatorUnique (SimulatorType type, SimulationType method=SimulationType::kStatevector)
static std::shared_ptr< PathIntegralSimulator > CreatePathIntegralSimulator ()
static MAESTRO_FACTORY_EXPORT std::shared_ptr< ISimulator > CreateSimulator (SimulatorType t=SimulatorType::kQCSim, SimulationType method=SimulationType::kMatrixProductState)
 Create a quantum computing simulator.
static MAESTRO_FACTORY_EXPORT std::unique_ptr< ISimulator > CreateSimulatorUnique (SimulatorType t=SimulatorType::kQCSim, SimulationType method=SimulationType::kMatrixProductState)
 Create a quantum computing simulator.
static int GetGpuDeviceCount ()
static MAESTRO_FACTORY_EXPORT std::shared_ptr< QuestLibSim > GetQuestLibrary ()
static bool InitGpuLibrary ()
static MAESTRO_FACTORY_EXPORT bool InitQuestLibrary ()
static MAESTRO_FACTORY_EXPORT bool InitQuestLibraryWithMute ()
static bool IsGpuLibraryAvailable (int=-1)
static MAESTRO_FACTORY_EXPORT bool IsQuestLibraryAvailable ()
static void SelectGpuDevice (int)

Detailed Description

Factory for simulators.

Create either a qiskit aer or qcsim simulator.

Definition at line 50 of file Simulators/Core/Factory.h.

Member Function Documentation

◆ CreateImmediateSimulatorUnique()

std::unique_ptr< ISimulator > Simulators::SimulatorsFactory::CreateImmediateSimulatorUnique ( SimulatorType type,
SimulationType method = SimulationType::kStatevector )
static

◆ CreatePathIntegralSimulator()

std::shared_ptr< PathIntegralSimulator > Simulators::SimulatorsFactory::CreatePathIntegralSimulator ( )
inlinestatic

Definition at line 213 of file Simulators/Core/Factory.h.

◆ CreateSimulator()

std::shared_ptr< ISimulator > Simulators::SimulatorsFactory::CreateSimulator ( SimulatorType t = SimulatorType::kQCSim,
SimulationType method = SimulationType::kMatrixProductState )
static

◆ CreateSimulatorUnique()

◆ GetGpuDeviceCount()

int Simulators::SimulatorsFactory::GetGpuDeviceCount ( )
inlinestatic

Definition at line 203 of file Simulators/Core/Factory.h.

Referenced by CreateSimulatorUnique().

◆ GetQuestLibrary()

std::shared_ptr< QuestLibSim > Simulators::SimulatorsFactory::GetQuestLibrary ( )
static

Definition at line 52 of file FactoryQuest.cpp.

◆ InitGpuLibrary()

bool Simulators::SimulatorsFactory::InitGpuLibrary ( )
inlinestatic

Definition at line 194 of file Simulators/Core/Factory.h.

◆ InitQuestLibrary()

bool Simulators::SimulatorsFactory::InitQuestLibrary ( )
static

Definition at line 24 of file FactoryQuest.cpp.

Referenced by InitializeMaestro().

◆ InitQuestLibraryWithMute()

bool Simulators::SimulatorsFactory::InitQuestLibraryWithMute ( )
static

Definition at line 59 of file FactoryQuest.cpp.

Referenced by InitializeMaestro().

◆ IsGpuLibraryAvailable()

bool Simulators::SimulatorsFactory::IsGpuLibraryAvailable ( int = -1)
inlinestatic

◆ IsQuestLibraryAvailable()

bool Simulators::SimulatorsFactory::IsQuestLibraryAvailable ( )
static

Definition at line 47 of file FactoryQuest.cpp.

Referenced by CreateSimulatorUnique().

◆ SelectGpuDevice()

void Simulators::SimulatorsFactory::SelectGpuDevice ( int )
inlinestatic

Definition at line 199 of file Simulators/Core/Factory.h.


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