using System;

namespace NAudio
{
	/// <summary>
	/// Manufacturer codes from mmreg.h
	/// </summary>
	public enum Manufacturers 
	{
		/// <summary>Microsoft Corporation</summary>
		Microsoft					= 1,
		/// <summary>Creative Labs, Inc</summary>
		Creative					= 2,
		/// <summary>Media Vision, Inc.</summary>
		Mediavision					= 3,
		/// <summary>Fujitsu Corp.</summary>
		Fujitsu						= 4,
		/// <summary>Artisoft, Inc.</summary>
		Artisoft					= 20,
		/// <summary>Turtle Beach, Inc.</summary>
		TurtleBeach					= 21,
		/// <summary>IBM Corporation</summary>
		Ibm							= 22,
		/// <summary>Vocaltec LTD.</summary>
		Vocaltec					= 23,
		/// <summary>Roland</summary>
		Roland						= 24,
		/// <summary>DSP Solutions, Inc.</summary>
		DspSolutions				= 25,
		/// <summary>NEC</summary>
		Nec							= 26,
		/// <summary>ATI</summary>
		Ati							= 27,
		/// <summary>Wang Laboratories, Inc</summary>
		Wanglabs					= 28,
		/// <summary>Tandy Corporation</summary>
		Tandy						= 29,
		/// <summary>Voyetra</summary>
		Voyetra						= 30,
		/// <summary>Antex Electronics Corporation</summary>
		Antex						= 31,
		/// <summary>ICL Personal Systems</summary>
		IclPS						= 32,
		/// <summary>Intel Corporation</summary>
		Intel						= 33,
		/// <summary>Advanced Gravis</summary>
		Gravis						= 34,
		/// <summary>Video Associates Labs, Inc.</summary>
		Val							= 35,
		/// <summary>InterActive Inc</summary>
		Interactive					= 36,
		/// <summary>Yamaha Corporation of America</summary>
		Yamaha						= 37,
		/// <summary>Everex Systems, Inc</summary>
		Everex						= 38,
		/// <summary>Echo Speech Corporation</summary>
		Echo						= 39,
		/// <summary>Sierra Semiconductor Corp</summary>
		Sierra						= 40,
		/// <summary>Computer Aided Technologies</summary>
		Cat							= 41,
		/// <summary>APPS Software International</summary>
		Apps						= 42,
		/// <summary>DSP Group, Inc</summary>
		DspGroup					= 43,
		/// <summary>microEngineering Labs</summary>
		Melabs						= 44,
		/// <summary>Computer Friends, Inc.</summary>
		ComputerFriends				= 45,
		/// <summary>ESS Technology</summary>
		Ess							= 46,
		/// <summary>Audio, Inc.</summary>
		Audiofile					= 47,
		/// <summary>Motorola, Inc.</summary>
		Motorola					= 48,
		/// <summary>Canopus, co., Ltd.</summary>
		Canopus						= 49,
		/// <summary>Seiko Epson Corporation</summary>
		Epson						= 50,
		/// <summary>Truevision</summary>
		Truevision					= 51,
		/// <summary>Aztech Labs, Inc.</summary>
		Aztech						= 52,
		/// <summary>Videologic</summary>
		Videologic					= 53,
		/// <summary>SCALACS</summary>
		Scalacs						= 54,
		/// <summary>Korg Inc.</summary>
		Korg						= 55,
		/// <summary>Audio Processing Technology</summary>
		Apt							= 56,
		/// <summary>Integrated Circuit Systems, Inc.</summary>
		Ics							= 57,
		/// <summary>Iterated Systems, Inc.</summary>
		Iteratedsys					= 58,
		/// <summary>Metheus</summary>
		Metheus						= 59,
		/// <summary>Logitech, Inc.</summary>
		Logitech					= 60,
		/// <summary>Winnov, Inc.</summary>
		Winnov						= 61,
		/// <summary>NCR Corporation</summary>
		Ncr							= 62,
		/// <summary>EXAN</summary>
		Exan						= 63,
		/// <summary>AST Research Inc.</summary>
		Ast							= 64,
		/// <summary>Willow Pond Corporation</summary>
		Willowpond					= 65,
		/// <summary>Sonic Foundry</summary>
		Sonicfoundry				= 66,
		/// <summary>Vitec Multimedia</summary>
		Vitec						= 67,
		/// <summary>MOSCOM Corporation</summary>
		Moscom						= 68,
		/// <summary>Silicon Soft, Inc.</summary>
		Siliconsoft					= 69,
		/// <summary>Supermac</summary>
		Supermac					= 73,
		/// <summary>Audio Processing Technology</summary>
		Audiopt						= 74,
		/// <summary>Speech Compression</summary>
		Speechcomp					= 76,
		/// <summary>Ahead, Inc.</summary>
		Ahead						= 77,
		/// <summary>Dolby Laboratories</summary>
		Dolby						= 78,
		/// <summary>OKI</summary>
		Oki							= 79,
		/// <summary>AuraVision Corporation</summary>
		Auravision					= 80,
		/// <summary>Ing C. Olivetti &amp; C., S.p.A.</summary>
		Olivetti					= 81,
		/// <summary>I/O Magic Corporation</summary>
		Iomagic						= 82,
		/// <summary>Matsushita Electric Industrial Co., LTD.</summary>
		Matsushita					= 83,
		/// <summary>Control Resources Limited</summary>
		Controlres					= 84,
		/// <summary>Xebec Multimedia Solutions Limited</summary>
		Xebec						= 85,
		/// <summary>New Media Corporation</summary>
		Newmedia					= 86,
		/// <summary>Natural MicroSystems</summary>
		Nms							= 87,
		/// <summary>Lyrrus Inc.</summary>
		Lyrrus						= 88,
		/// <summary>Compusic</summary>
		Compusic					= 89,
		/// <summary>OPTi Computers Inc.</summary>
		Opti						= 90,
		/// <summary>Adlib Accessories Inc.</summary>
		Adlacc						= 91,
		/// <summary>Compaq Computer Corp.</summary>
		Compaq						= 92,
		/// <summary>Dialogic Corporation</summary>
		Dialogic					= 93,
		/// <summary>InSoft, Inc.</summary>
		Insoft						= 94,
		/// <summary>M.P. Technologies, Inc.</summary>
		Mptus						= 95,
		/// <summary>Weitek</summary>
		Weitek						= 96,
		/// <summary>Lernout &amp; Hauspie</summary>
		LernoutAndHauspie			= 97,
		/// <summary>Quanta Computer Inc.</summary>
		Qciar						= 98,
		/// <summary>Apple Computer, Inc.</summary>
		Apple						= 99,
		/// <summary>Digital Equipment Corporation</summary>
		Digital						= 100,
		/// <summary>Mark of the Unicorn</summary>
		Motu						= 101,
		/// <summary>Workbit Corporation</summary>
		Workbit						= 102,
		/// <summary>Ositech Communications Inc.</summary>
		Ositech						= 103,
		/// <summary>miro Computer Products AG</summary>
		Miro						= 104,
		/// <summary>Cirrus Logic</summary>
		Cirruslogic					= 105,
		/// <summary>ISOLUTION  B.V.</summary>
		Isolution					= 106,
		/// <summary>Horizons Technology, Inc</summary>
		Horizons					= 107,
		/// <summary>Computer Concepts Ltd</summary>
		Concepts					= 108,
		/// <summary>Voice Technologies Group, Inc.</summary>
		Vtg							= 109,
		/// <summary>Radius</summary>
		Radius						= 110,
		/// <summary>Rockwell International</summary>
		Rockwell					= 111,
		/// <summary>Co. XYZ for testing</summary>
		Xyz							= 112,
		/// <summary>Opcode Systems</summary>
		Opcode						= 113,
		/// <summary>Voxware Inc</summary>
		Voxware						= 114,
		/// <summary>Northern Telecom Limited</summary>
		NorthernTelecom				= 115,
		/// <summary>APICOM</summary>
		Apicom						= 116,
		/// <summary>Grande Software</summary>
		Grande						= 117,
		/// <summary>ADDX</summary>
		Addx						= 118,
		/// <summary>Wildcat Canyon Software</summary>
		Wildcat						= 119,
		/// <summary>Rhetorex Inc</summary>
		Rhetorex					= 120,
		/// <summary>Brooktree Corporation</summary>
		Brooktree					= 121,
		/// <summary>ENSONIQ Corporation</summary>
		Ensoniq						= 125,
		/// <summary>FAST Multimedia AG</summary>
		Fast						= 126,
		/// <summary>NVidia Corporation</summary>
		Nvidia						= 127,
		/// <summary>OKSORI Co., Ltd.</summary>
		Oksori						= 128,
		/// <summary>DiAcoustics, Inc.</summary>
		Diacoustics					= 129,
		/// <summary>Gulbransen, Inc.</summary>
		Gulbransen					= 130,
		/// <summary>Kay Elemetrics, Inc.</summary>
		KayElemetrics				= 131,
		/// <summary>Crystal Semiconductor Corporation</summary>
		Crystal						= 132,
		/// <summary>Splash Studios</summary>
		SplashStudios				= 133,
		/// <summary>Quarterdeck Corporation</summary>
		Quarterdeck					= 134,
		/// <summary>TDK Corporation</summary>
		Tdk							= 135,
		/// <summary>Digital Audio Labs, Inc.</summary>
		DigitalAudioLabs			= 136,
		/// <summary>Seer Systems, Inc.</summary>
		Seersys						= 137,
		/// <summary>PictureTel Corporation</summary>
		Picturetel					= 138,
		/// <summary>AT&amp;T Microelectronics</summary>
		AttMicroelectronics			= 139,
		/// <summary>Osprey Technologies, Inc.</summary>
		Osprey						= 140,
		/// <summary>Mediatrix Peripherals</summary>
		Mediatrix					= 141,
		/// <summary>SounDesignS M.C.S. Ltd.</summary>
		Soundesigns					= 142,
		/// <summary>A.L. Digital Ltd.</summary>
		Aldigital					= 143,
		/// <summary>Spectrum Signal Processing, Inc.</summary>
		SpectrumSignalProcessing	= 144,
		/// <summary>Electronic Courseware Systems, Inc.</summary>
		Ecs							= 145,
		/// <summary>AMD</summary>
		Amd							= 146,
		/// <summary>Core Dynamics</summary>
		Coredynamics				= 147,
		/// <summary>CANAM Computers</summary>
		Canam						= 148,
		/// <summary>Softsound, Ltd.</summary>
		Softsound					= 149,
		/// <summary>Norris Communications, Inc.</summary>
		Norris						= 150,
		/// <summary>Danka Data Devices</summary>
		Ddd							= 151,
		/// <summary>EuPhonics</summary>
		Euphonics					= 152,
		/// <summary>Precept Software, Inc.</summary>
		Precept						= 153,
		/// <summary>Crystal Net Corporation</summary>
		CrystalNet					= 154,
		/// <summary>Chromatic Research, Inc</summary>
		Chromatic					= 155,
		/// <summary>Voice Information Systems, Inc</summary>
		Voiceinfo					= 156,
		/// <summary>Vienna Systems</summary>
		Viennasys					= 157,
		/// <summary>Connectix Corporation</summary>
		Connectix					= 158,
		/// <summary>Gadget Labs LLC</summary>
		Gadgetlabs					= 159,
		/// <summary>Frontier Design Group LLC</summary>
		Frontier					= 160,
		/// <summary>Viona Development GmbH</summary>
		Viona						= 161,
		/// <summary>Casio Computer Co., LTD</summary>
		Casio						= 162,
		/// <summary>Diamond Multimedia</summary>
		Diamondmm					= 163,
		/// <summary>S3</summary>
		S3							= 164,
		/// <summary>Fraunhofer</summary>
		FraunhoferIis				= 172,
													    
		/*
		public static String GetName(int manufacturerId) {
			switch(manufacturerId) {
			case Gravis:			return "Advanced Gravis Computer Technology, Ltd.";
			case Antex:				return "Antex Electronics Corporation";
			case Apps:				return "APPS Software";
			case Artisoft:			return "Artisoft, Inc.";
			case Ast:				return "AST Research, Inc.";
			case Ati:				return "ATI Technologies, Inc.";
			case Audiofile:			return "Audio, Inc.";
			case Apt:				return "Audio Processing Technology";
			case Audiopt:			return "Audio Processing Technology";
			case Auravision:		return "Auravision Corporation";
			case Aztech:			return "Aztech Labs, Inc.";
			case Canopus:			return "Canopus, Co., Ltd.";
			case Compusic:			return "Compusic";
			case Cat:				return "Computer Aided Technology, Inc.";
			case ComputerFriends:	return "Computer Friends, Inc.";
			case Controlres:		return "Control Resources Corporation"; 
			case Creative:			return "Creative Labs, Inc.";
			case Dialogic:			return "Dialogic Corporation";
			case Dolby:				return "Dolby Laboratories, Inc.";
			case DspGroup:			return "DSP Group, Inc.";
			case DspSolutions:		return "DSP Solutions, Inc.";
			case Echo:				return "Echo Speech Corporation";
			case Ess:				return "ESS Technology, Inc.";
			case Everex:			return "Everex Systems, Inc.";
			case Exan:				return "EXAN, Ltd.";
			case Fujitsu:			return "Fujitsu, Ltd.";
			case Iomagic:			return "I/O Magic Corporation";
			case IclPS:				return "ICL Personal Systems";
			case Olivetti:			return "Ing. C. Olivetti & C., S.p.A.";
			case Ics:				return "Integrated Circuit Systems, Inc.";
			case Intel:				return "Intel Corporation";
			case Interactive:		return "InterActive, Inc.";
			case Ibm:				return "International Business Machines";
			case Iteratedsys:		return "Iterated Systems, Inc.";
			case Logitech:			return "Logitech, Inc.";
			case Lyrrus:			return "Lyrrus, Inc.";
			case Matsushita:		return "Matsushita Electric Corporation of America";
			case Mediavision:		return "Media Vision, Inc.";
			case Metheus:			return "Metheus Corporation";
			case Melabs:			return "microEngineering Labs";
			case Microsoft:			return "Microsoft Corporation";
			case Moscom:			return "MOSCOM Corporation";
			case Motorola:			return "Motorola, Inc.";
			case Nms:				return "Natural MicroSystems Corporation";
			case Ncr:				return "NCR Corporation";
			case Nec:				return "NEC Corporation";
			case Newmedia:			return "New Media Corporation";
			case Oki:				return "OKI";
			case Opti:				return "OPTi, Inc.";
			case Roland:			return "Roland Corporation";
			case Scalacs:			return "SCALACS";
			case Epson:				return "Seiko Epson Corporation, Inc.";
			case Sierra:			return "Sierra Semiconductor Corporation";
			case Siliconsoft:		return "Silicon Software, Inc.";
			case Sonicfoundry:		return "Sonic Foundry";
			case Speechcomp:		return "Speech Compression";
			case Supermac:			return "Supermac Technology, Inc.";
			case Tandy:				return "Tandy Corporation";
			case Korg:				return "Toshihiko Okuhura, Korg, Inc.";
			case Truevision:		return "Truevision, Inc.";
			case TurtleBeach:		return "Turtle Beach Systems";
			case Val:				return "Video Associates Labs, Inc.";
			case Videologic:		return "VideoLogic, Inc.";
			case Vitec:				return "Visual Information Technologies, Inc.";
			case Vocaltec:			return "VocalTec, Inc.";
			case Voyetra:			return "Voyetra Technologies";
			case Wanglabs:			return "Wang Laboratories";
			case Willowpond:		return "Willow Pond Corporation";
			case Winnov:			return "Winnov, LP";
			case Xebec:				return "Xebec Multimedia Solutions Limited";
			case Yamaha:			return "Yamaha Corporation of America";
			default:				return String.Format("Unknown Manufacturer ({0})",manufacturerId);
			}			
		}
		**/
	}
}