Click here to Skip to main content
15,889,834 members
Articles / Multimedia / GDI+

Visual Surveillance Laboratory

Rate me:
Please Sign up or sign in to vote.
4.85/5 (45 votes)
6 Aug 2008Apache8 min read 147.6K   11K   241  
A description of surveillance systems
/*
 * Created by: efi efi.merdler@gmail.com
 * Created: Sunday, April 29, 2007
 */

using System;
using System.Collections.Generic;
using Zoombut.VisualSurveillanceLaboratory.SurveillanceSystem;

namespace Zoombut.VisualSurveillanceLaboratory.OutputSystem
{
	public interface IOutputSystem
	{
		/// <summary>
		/// Gets the name of the output system.
		/// </summary>
		/// <value>The name.</value>
		String Name
		{
			get;
		}
		/// <summary>
		/// If this out system is configurable then the configuration ability
		/// at the Visual Surveillance Workshop will be enabled.
		/// You should also implement GetConfigurationForm method if this method returns
		/// true.
		/// </summary>
		/// <returns>True if output system is configurable, false otherwise.</returns>
		bool IsConfigurable
		{
			get;
		}
		/// <summary>
		/// Gets a configuration form that allows for easy output system configuration.
		/// </summary>
		/// <returns>A configuration form that its result is fed back as args in GetOutput method.
		/// The form is disposed after use,therefore create a new form each time.
		/// The form must support the ShowDialog method and must return DialogResult.OK to indicate
		/// that there is new configuration data</returns>
		/// <exception cref="NotImplementedException">If this tracking system does not support configuration.</exception>
		ConfigurationForm ConfigurationForm
		{
			get;
		}

		/// <summary>
		/// Gets the output object after initialization.
		/// </summary>
		/// <param name="args">The args that are used to initialize the Output object.Can be null to indicate no configuration.</param>
		/// <returns>A process object.</returns>
		/// <exception cref="ArgumentException">args value contain wrong arguments.</exception>
		IOutput GetOutput(IDictionary<String, Object> args);

		/// <summary>
		/// Gets a description of this output system.
		/// </summary>
		/// <value>A description.</value>
		String Description
		{ get;
		}
	}
}

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Apache License, Version 2.0


Written By
Software Developer
Israel Israel
A computer science master student at Bar Ilan University under the supervision of Dr. Gal Kaminka.
Dealing mainly with trajectory mining.

Comments and Discussions