Beispiel #1
0
        public void Initialise(CVImageAttributes attributes)
        {
            FImageAttributes = attributes;

            InitialiseBack();
            InitialiseFrontFromBack();
        }
Beispiel #2
0
        public static Texture CreateTexture(CVImageAttributes attributes, Device device)
        {
            TColourFormat format = attributes.ColourFormat;
            TColourFormat newFormat;
            bool          useConverted = NeedsConversion(format, out newFormat);

            return(new Texture(device, Math.Max(attributes.Width, 1), Math.Max(attributes.Height, 1), 1, Usage.None, GetDXFormat(useConverted ? newFormat : format), Pool.Managed));
        }
Beispiel #3
0
 protected void OnImageAttributesUpdate(CVImageAttributes attributes)
 {
     if (ImageAttributesUpdate == null)
     {
         return;
     }
     ImageAttributesUpdate(this, new ImageAttributesChangedEventArgs(attributes));
 }
		void Allocate(CVImageAttributes imageAttributes)
		{
			Width = imageAttributes.Width;
			Height = imageAttributes.Height;

			Image = new Image<Gray, ushort>(Width, Height);
			Initialised = true;
		}
 public override void OnImageAttributesUpdate(CVImageAttributes attributes)
 {
     if (ImageAttributesUpdate == null)
     {
         return;
     }
     ImageAttributesUpdate(this, new ImageAttributesChangedEventArgs(attributes));
 }
        void Allocate(CVImageAttributes imageAttributes)
        {
            Width  = imageAttributes.Width;
            Height = imageAttributes.Height;

            Image       = new Image <Gray, ushort>(Width, Height);
            Initialised = true;
        }
Beispiel #7
0
        void InitialiseFrontFromBack()
        {
            lock (FBackLock)
                lock (FAttributesLock)
                    FImageAttributes = FBackBuffer.ImageAttributes;

            FFrontLock.AcquireWriterLock(LockTimeout);
            try
            {
                FFrontBuffer.Initialise(FImageAttributes);
            }
            finally
            {
                FFrontLock.ReleaseWriterLock();
            }

            OnImageAttributesUpdate(FImageAttributes);
        }
		/// <summary>
		/// Copy the input image into the back buffer
		/// </summary>
		/// <param name="image">Input image</param>
		public void SetImage(CVImage image)
		{
			bool Reinitialise;

			lock (FBackLock)
				Reinitialise = FBackBuffer.SetImage(image);

			FAllocated = true;
			OnImageUpdate();

			if (Reinitialise)
			{
				lock (FAttributesLock)
					FImageAttributes = image.ImageAttributes.Clone() as CVImageAttributes;
				OnImageAttributesUpdate(FImageAttributes);
			}

			Swap();
		}
		public void Initialise(CVImageAttributes attributes)
		{
			Initialise(attributes.Size, attributes.ColourFormat);
		}
Beispiel #10
0
 public ImageAttributesChangedEventArgs(CVImageAttributes attributes)
 {
     this.Attributes = attributes;
 }
		public ImageAttributesChangedEventArgs(CVImageAttributes attributes)
		{
			this.Attributes = attributes;
		}
 void UpdateAttributes(CVImageAttributes attributes)
 {
     FImage.Initialise(attributes);
 }
		public static Texture CreateTexture(CVImageAttributes attributes, Device device)
		{
			TColourFormat format = attributes.ColourFormat;
			TColourFormat newFormat;
			bool useConverted = NeedsConversion(format, out newFormat);

			try
			{
				return new Texture(device, Math.Max(attributes.Width, 1), Math.Max(attributes.Height, 1), 1, Usage.None, GetDXFormat(useConverted ? newFormat : format), Pool.Managed);
			}
			catch (Exception e)
			{
				ImageUtils.Log(e);
				return new Texture(device, 1, 1, 1, Usage.None, Format.X8R8G8B8, Pool.Managed);
			}
		}
Beispiel #14
0
 public void Initialise(CVImageAttributes attributes)
 {
     Initialise(attributes.Size, attributes.ColourFormat);
 }
		void InitialiseFrontFromBack()
		{
			lock (FBackLock)
				lock (FAttributesLock)
					FImageAttributes = FBackBuffer.ImageAttributes;

			FFrontLock.AcquireWriterLock(LockTimeout);
			try
			{
				FFrontBuffer.Initialise(FImageAttributes);
			}
			finally
			{
				FFrontLock.ReleaseWriterLock();
			}

			OnImageAttributesUpdate(FImageAttributes);
		}
Beispiel #16
0
 public virtual void OnImageAttributesUpdate(CVImageAttributes attributes)
 {
 }
		protected void OnImageAttributesUpdate(CVImageAttributes attributes)
		{
			if (ImageAttributesUpdate == null)
				return;
			ImageAttributesUpdate(this, new ImageAttributesChangedEventArgs(attributes));
		}
		public void Initialise(CVImageAttributes attributes)
		{
			FImageAttributes = attributes;

			InitialiseBack();
			InitialiseFrontFromBack();
		}
		void UpdateAttributes(CVImageAttributes attributes)
		{
			FImage.Initialise(attributes);
		}
		public virtual void OnImageAttributesUpdate(CVImageAttributes attributes) { }
		public override void OnImageAttributesUpdate(CVImageAttributes attributes)
		{
			if (ImageAttributesUpdate == null)
				return;
			ImageAttributesUpdate(this, new ImageAttributesChangedEventArgs(attributes));
		}