swift
Public Member Functions | Protected Member Functions | List of all members
swift::core::ISimulatorFactory Class Referenceabstract

Factory pattern class to create instances of ISimulator. More...

Inheritance diagram for swift::core::ISimulatorFactory:
[legend]

Public Member Functions

virtual ~ISimulatorFactory ()=default
 ISimulatorVirtual destructor.
 
virtual ISimulator * create (const swift::misc::simulation::CSimulatorPluginInfo &info, swift::misc::simulation::IOwnAircraftProvider *ownAircraftProvider, swift::misc::simulation::IRemoteAircraftProvider *remoteAircraftProvider, swift::misc::network::IClientProvider *clientProvider)=0
 Create a new instance of a driver. More...
 
virtual ISimulatorListener * createListener (const swift::misc::simulation::CSimulatorPluginInfo &info)=0
 Simulator listener instance.
 
 ISimulatorFactory (const ISimulatorFactory &)=delete
 Not copyable.
 
ISimulatorFactory & operator= (const ISimulatorFactory &)=delete
 Not copyable.
 

Protected Member Functions

 ISimulatorFactory ()
 Default ctor.
 

Detailed Description

Factory pattern class to create instances of ISimulator.

Definition at line 693 of file simulator.h.

Member Function Documentation

◆ create()

virtual ISimulator* swift::core::ISimulatorFactory::create ( const swift::misc::simulation::CSimulatorPluginInfo &  info,
swift::misc::simulation::IOwnAircraftProvider *  ownAircraftProvider,
swift::misc::simulation::IRemoteAircraftProvider *  remoteAircraftProvider,
swift::misc::network::IClientProvider *  clientProvider 
)
pure virtual

Create a new instance of a driver.

Parameters
infometadata about simulator
ownAircraftProviderin memory access to own aircraft data
remoteAircraftProviderin memory access to rendered aircraft data such as situation history and aircraft itself
clientProviderin memory access to client data
Returns
driver instance

Implemented in swift::simplugin::xplane::CSimulatorXPlaneFactory, swift::simplugin::p3d::CSimulatorP3DFactory, swift::simplugin::msfs2024::CSimulatorMsFs2024Factory, swift::simplugin::msfs::CSimulatorMsFsFactory, swift::simplugin::flightgear::CSimulatorFlightgearFactory, and swift::simplugin::emulated::CSimulatorEmulatedFactory.


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