public SyncHierarchyEngine(OOPManager oopManager, IEntityStreamConsumerFactory generateConsumerFactory, uint maxQuantity) { _oopManager = oopManager; _consumer = generateConsumerFactory.GenerateConsumer <ObjectParentComponent>("SyncHierarchyEngine", maxQuantity); }
/// <summary> /// The Package composition root cannot hold any state and it's designed to be used by the outer /// composition root. Each encapsulated context has its own level of abstraction and a complex project /// could be made of different layers forming a tree of composition roots (Without cycles!). /// </summary> public static void Compose (EnginesRoot enginesRoot, FasterList <IStepEngine> tickingEnginesGroup, uint maxQuantity) { var oopManager = new OOPManager(); var syncEngine = new SyncTransformEngine(oopManager); var syncHierarchyEngine = new SyncHierarchyEngine( oopManager, enginesRoot.GenerateConsumerFactory(), maxQuantity); enginesRoot.AddEngine(syncEngine); enginesRoot.AddEngine(syncHierarchyEngine); enginesRoot.AddEngine(new SyncEntityCreation(oopManager)); tickingEnginesGroup.Add(syncEngine); tickingEnginesGroup.Add(syncHierarchyEngine); }