/// <summary> /// De-Register to receive new frames as they arrive on channel 0 to 3 of this S2255 device /// </summary> /// <param name="chan"></param> public void DeRegisterToReceiveFrames(int chan, OnNewFrameEvent eventHandler) { if (chan < 0 || chan > 3) { return; } OnNewFrame[chan] -= eventHandler; }
public S2255Device(int index, int handle, APPLICATION_DATA appData, int videoStandard, S2255Controller.S2255DevicePortChannelMappings portMappings) { m_DeviceHandle = handle; m_DeviceIndex = index; m_AppData = appData; m_VideoStandard = videoStandard; m_PortMappings = portMappings; singleton = new object(); // m_AppData.AddOnClosing(Stop, APPLICATION_DATA.CLOSE_ORDER.FIRST); OnNewFrame = new OnNewFrameEvent[4]; unsafe { _Obj_of_Type_HANDLE_NEW_BUFFER_FROM_S2255 = OnNewFrameFromDevice; unsafeMethodCallbackPtr = Marshal.GetFunctionPointerForDelegate(_Obj_of_Type_HANDLE_NEW_BUFFER_FROM_S2255); } m_Log = (ErrorLog)m_AppData.Logger; TimeAtLastFrame = DateTime.Now; m_AppData.HealthStatistics[(int)APPLICATION_DATA.HEALTH_STATISTICS.PHYSICAL_CHANNELS.PhysicalChannels_c0].Peak.RegisterForUse(true); m_AppData.HealthStatistics[(int)APPLICATION_DATA.HEALTH_STATISTICS.PHYSICAL_CHANNELS.PhysicalChannels_c1].Peak.RegisterForUse(true); m_AppData.HealthStatistics[(int)APPLICATION_DATA.HEALTH_STATISTICS.PHYSICAL_CHANNELS.PhysicalChannels_c2].Peak.RegisterForUse(true); m_AppData.HealthStatistics[(int)APPLICATION_DATA.HEALTH_STATISTICS.PHYSICAL_CHANNELS.PhysicalChannels_c3].Peak.RegisterForUse(true); m_AppData.HealthStatistics[(int)APPLICATION_DATA.HEALTH_STATISTICS.PHYSICAL_CHANNELS.PhysicalChannels_c0].PerSecond.RegisterForUse(true); m_AppData.HealthStatistics[(int)APPLICATION_DATA.HEALTH_STATISTICS.PHYSICAL_CHANNELS.PhysicalChannels_c1].PerSecond.RegisterForUse(true); m_AppData.HealthStatistics[(int)APPLICATION_DATA.HEALTH_STATISTICS.PHYSICAL_CHANNELS.PhysicalChannels_c2].PerSecond.RegisterForUse(true); m_AppData.HealthStatistics[(int)APPLICATION_DATA.HEALTH_STATISTICS.PHYSICAL_CHANNELS.PhysicalChannels_c3].PerSecond.RegisterForUse(true); m_AppData.HealthStatistics[(int)APPLICATION_DATA.HEALTH_STATISTICS.PHYSICAL_CHANNELS.PhysicalChannels_c0].RunningAverage.RegisterForUse(true); m_AppData.HealthStatistics[(int)APPLICATION_DATA.HEALTH_STATISTICS.PHYSICAL_CHANNELS.PhysicalChannels_c1].RunningAverage.RegisterForUse(true); m_AppData.HealthStatistics[(int)APPLICATION_DATA.HEALTH_STATISTICS.PHYSICAL_CHANNELS.PhysicalChannels_c2].RunningAverage.RegisterForUse(true); m_AppData.HealthStatistics[(int)APPLICATION_DATA.HEALTH_STATISTICS.PHYSICAL_CHANNELS.PhysicalChannels_c3].RunningAverage.RegisterForUse(true); }
/// <summary> /// Register to receive new frames as they arrive on channel 0 to 3 of this S2255 device /// </summary> /// <param name="chan"></param> public void RegisterToReceiveFrames(int chan, OnNewFrameEvent eventHandler) { if (chan < 0 || chan > 3) return; OnNewFrame[chan] += eventHandler; }
public void UnregisterDelegates() { OnSyncFrameEventDelegate = null; OnNewFrameEventDelegate = null; }
public void RegisterOnNewFrameEvent(OnNewFrameEvent delegateToRegister) { OnNewFrameEventDelegate = delegateToRegister; }