/// <summary>
        /// Constructor
        /// </summary>
        /// <param name="colorFrameProvider">Color frame provider</param>
        /// <param name="device">Direct3D11 device</param>
        public DynamicColorRGBATextureProcessor(IColorRGBAFrameProvider colorFrameProvider, Device device)
        {
            if (colorFrameProvider == null)
                throw new ArgumentNullException("colorFrameProvider");
            if (device == null)
                throw new ArgumentNullException("device");

            this.colorFrameProvider = colorFrameProvider;
            this.colorFrameProvider.FrameReceived += FrameReceived;
            this.colorTexture = new DynamicColorRGBATexture(device);
        }
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="colorFrameProvider">Color frame provider</param>
        /// <param name="device">Direct3D11 device</param>
        public DynamicColorRGBATextureProcessor(IColorRGBAFrameProvider colorFrameProvider, Device device)
        {
            if (colorFrameProvider == null)
            {
                throw new ArgumentNullException("colorFrameProvider");
            }
            if (device == null)
            {
                throw new ArgumentNullException("device");
            }

            this.colorFrameProvider = colorFrameProvider;
            this.colorFrameProvider.FrameReceived += FrameReceived;
            this.colorTexture = new DynamicColorRGBATexture(device);
        }