Class TLcyCompositeSimulatorModelFactory

All Implemented Interfaces:
ILcySimulatorModelFactory, Iterable<ILcySimulatorModelFactory>

@Deprecated public class TLcyCompositeSimulatorModelFactory extends TLcyGenericComposite<ILcySimulatorModelFactory> implements ILcySimulatorModelFactory
See the deprecation message in ILcySimulatorModelFactory

A composite implementation of ILcySimulatorModelFactory according to the composite design pattern.

When creating a new TLcyCompositeSimulatorModelFactory using the default constructor (see TLcyCompositeSimulatorModelFactory()), the created instance will only work on/with the ILcySimulatorModelFactorys registered on this composite instance (see addSimulatorModelFactory(com.luciad.lucy.realtime.ILcySimulatorModelFactory) and removeSimulatorModelFactory(com.luciad.lucy.realtime.ILcySimulatorModelFactory)).

When creating a new TLcyCompositeSimulatorModelFactory using the constructor specifying an ILcyLucyEnv instance (see TLcyCompositeSimulatorModelFactory(com.luciad.lucy.ILcyLucyEnv), the created instance will work on the Lucy back-end services. It will use all registered ILcySimulatorModelFactory instances of the Lucy back-end, adding and/or removing an ILcySimulatorModelFactory will add/remove the ILcySimulatorModelFactory as service from Lucy, ... .

Creating an ILcdSimulatorModel for an ILcdModel using the back-end based implementation can be done by creating a new instance of this class:

 //Create a new instance whenever you need it.
 TLcyCompositeSimulatorModelFactory factory = new TLcyCompositeSimulatorModelFactory( aLucyEnv );
 if( factory.canCreateSimulatorModel( aModel ) ){
   ILcdSimulatorModel simulatorModel = factory.createSimulatorModel( aModel );
 //There is no need to keep a reference to the composite instance, you can create a new one
 //the next time you would need it
 factory = null;