using Jai_FactoryDotNET; namespace OS.Spin.Common.Camera { public class JaiCamera { private static JaiCamera _jai; CFactory myFactory = new CFactory(); private static object _objLock = new object(); public static JaiCamera GetInstance() { lock(_objLock) { if(null == _jai) { _jai = new JaiCamera(); } return _jai; } } private JaiCamera() { myFactory.Open(""); myFactory.UpdateCameraList(CFactory.EDriverType.Undefined); } public CCamera GetCameraByChannel(int channel) { if(channel >= myFactory.CameraList.Count) { return null; } return myFactory.CameraList[channel]; } public void Close() { myFactory.Close(); myFactory.Dispose(); } } }