CodeTV.GraphBuilderBDATimeShifting.OnVideoEvent C# (CSharp) Method

OnVideoEvent() public method

public OnVideoEvent ( int cookies ) : void
cookies int
return void
        public override void OnVideoEvent(int cookies)
        {
            if (this.graphBuilder == null || this.graphBuilder2 == null)
                return;
            try
            {
                if (cookies == cookiesSink)
                {
                    IMediaEventEx mediaEvent = this.graphBuilder as IMediaEventEx;
                    EventCode eventCode;
                    IntPtr param1, param2;
                    while (mediaEvent.GetEvent(out eventCode, out param1, out param2, 0) >= 0)
                    {
                        Trace.WriteLineIf(trace.TraceVerbose, "OnVideoEvent(Sink) -> " + eventCode.ToString());

                        if (eventCode == EventCode.VMRRenderDeviceSet)
                            VideoRefresh();

                        //switch (eventCode)
                        //{
                        //    // Call application-defined functions for each
                        //    // type of event that you want to handle.
                        //}
                        int hr = mediaEvent.FreeEventParams(eventCode, param1, param2);
                    }
                }
                else if (cookies == cookiesSource)
                {
                    IMediaEventEx mediaEvent = this.graphBuilder2 as IMediaEventEx;
                    EventCode eventCode;
                    IntPtr param1, param2;
                    while (mediaEvent.GetEvent(out eventCode, out param1, out param2, 0) >= 0)
                    {
                        Trace.WriteLineIf(trace.TraceVerbose, "OnVideoEvent(Source) -> " + eventCode.ToString());

                        if (eventCode == EventCode.VMRRenderDeviceSet)
                            VideoRefresh();

                        //switch (eventCode)
                        //{
                        //    // Call application-defined functions for each
                        //    // type of event that you want to handle.
                        //}
                        int hr = mediaEvent.FreeEventParams(eventCode, param1, param2);
                    }
                }
            }
            catch (Exception ex)
            {
                Trace.WriteLineIf(trace.TraceError, ex.ToString());
            }
        }