using VisionCommon; using System.Collections.Generic; namespace VisionDirector { /// /// MotionDirector를 관리하는 매니저 /// public class MotionDirectorManager { private readonly object _objectLock = new object(); private Dictionary _directors = new Dictionary(); /// /// MotionDirector를 Set한다. /// /// SubSysInfo(KEY) /// MotionDirector(VALUE) public void SetDirector(SubSysInfo subSysInfo, MotionDirector moverAgent) { lock (_objectLock) { if (!_directors.ContainsKey(subSysInfo)) { _directors.Add(subSysInfo, moverAgent); } } } /// /// MotionDirector를 Get한다. /// /// SubSysInfo(KEY) /// MotionDirector(VALUE) public MotionDirector GetDirector(SubSysInfo subSysInfo) { lock (_objectLock) { if (_directors.ContainsKey(subSysInfo)) { return _directors[subSysInfo]; } } return null; } } }