/// <summary> /// Constructor for a mmu container which is initialized by serialized data /// </summary> /// <param name="data"></param> /// <param name="mmus"></param> /// <param name="tasks"></param> public MMUContainer(SerializableMMUContainer data, List <IMotionModelUnitAccess> mmus, List <MotionTask> tasks) { this.History = new List <MotionTask>(); if (data.History != null) { foreach (string id in data.History) { MotionTask task = tasks.Find(s => s.ID == id); if (task != null) { this.History.Add(task); } } } this.IsActive = data.IsActive; this.LastResult = data.LastResult; this.LastResults = data.LastResults; this.MMU = mmus.Find(s => s.ID == data.MMUID); this.Priority = data.Priority; this.CurrentTasks = new List <MotionTask>(); if (tasks != null) { foreach (string currentTaskId in data.CurrentTaskIDs) { MotionTask match = tasks.Find(s => s.ID == currentTaskId); this.CurrentTasks.Add(match); } } }
/// <summary> /// Basic constructor /// </summary> /// <param name="mmus"></param> /// <param name="avatar"></param> public RemoteCoSimulation(IMotionModelUnitAccess coSimulationMMU, IServiceAccess serviceAccess, MMIAvatar avatar, Dictionary <string, string> priorities) : base(new List <IMotionModelUnitAccess>() { coSimulationMMU }) { this.avatar = avatar; this.serviceAccess = serviceAccess; this.remoteCoSimulationMMU = coSimulationMMU; }
/// <summary> /// Basic constructor /// </summary> /// <param name="mmu"></param> public MMUContainer(IMotionModelUnitAccess mmu) : this() { this.MMU = mmu; this.Description = mmu.Description; }