//! \file RzChromaSDKDefines.h
//! \brief Definitions of global and static variables.

#ifndef _RZSCHROMADKDEFINES_H_
#define _RZSCHROMADKDEFINES_H_

#pragma once

#ifndef GUID_DEFINED
#include <Guiddef.h>
#endif

namespace ChromaSDK
{
	// Keyboards
	//! Razer Blackwidow Chroma device.
	// {2EA1BB63-CA28-428D-9F06-196B88330BBB}
	static const GUID BLACKWIDOW_CHROMA =
	{ 0x2ea1bb63, 0xca28, 0x428d,{ 0x9f, 0x06, 0x19, 0x6b, 0x88, 0x33, 0x0b, 0xbb } };

	//! Razer Blackwidow Chroma Tournament Edition device.
	// {ED1C1B82-BFBE-418F-B49D-D03F05B149DF}
	static const GUID BLACKWIDOW_CHROMA_TE =
	{ 0xed1c1b82, 0xbfbe, 0x418f,{ 0xb4, 0x9d, 0xd0, 0x3f, 0x5, 0xb1, 0x49, 0xdf } };

	//! Razer Deathstalker device.
	// {18C5AD9B-4326-4828-92C4-2669A66D2283}
	static const GUID DEATHSTALKER_CHROMA =
	{ 0x18c5ad9b, 0x4326, 0x4828,{ 0x92, 0xc4, 0x26, 0x69, 0xa6, 0x6d, 0x22, 0x83 } };

	//! Overwatch Keyboard.
	// {872AB2A9-7959-4478-9FED-15F6186E72E4}
	static const GUID OVERWATCH_KEYBOARD =
	{ 0x872ab2a9, 0x7959, 0x4478,{ 0x9f, 0xed, 0x15, 0xf6, 0x18, 0x6e, 0x72, 0xe4 } };

	//! Razer Blackwidow X Chroma device.
	// {5AF60076-ADE9-43D4-B574-52599293B554}
	static const GUID BLACKWIDOW_X_CHROMA =
	{ 0x5af60076, 0xade9, 0x43d4,{ 0xb5, 0x74, 0x52, 0x59, 0x92, 0x93, 0xb5, 0x54 } };

	//! Razer Blackwidow X TE Chroma device.
	// {2D84DD51-3290-4AAC-9A89-D8AFDE38B57C}
	static const GUID BLACKWIDOW_X_TE_CHROMA =
	{ 0x2d84dd51, 0x3290, 0x4aac,{ 0x9a, 0x89, 0xd8, 0xaf, 0xde, 0x38, 0xb5, 0x7c } };

	//! Razer Ornata Chroma
	// {803378C1-CC48-4970-8539-D828CC1D420A}
	static const GUID ORNATA_CHROMA =
	{ 0x803378c1, 0xcc48, 0x4970,{ 0x85, 0x39, 0xd8, 0x28, 0xcc, 0x1d, 0x42, 0xa } };

	//! Razer Blade Stealth.
	// {C83BDFE8-E7FC-40E0-99DB-872E23F19891}
	static const GUID BLADE_STEALTH =
	{ 0xc83bdfe8, 0xe7fc, 0x40e0,{ 0x99, 0xdb, 0x87, 0x2e, 0x23, 0xf1, 0x98, 0x91 } };

	//! Razer Blade
	// {F2BEDFAF-A0FE-4651-9D41-B6CE603A3DDD}
	static const GUID BLADE =
	{ 0xf2bedfaf, 0xa0fe, 0x4651,{ 0x9d, 0x41, 0xb6, 0xce, 0x60, 0x3a, 0x3d, 0xdd } };


	// Mice
	//! Razer Deathadder Chroma device.
	// {AEC50D91-B1F1-452F-8E16-7B73F376FDF3}
	static const GUID DEATHADDER_CHROMA =
	{ 0xaec50d91, 0xb1f1, 0x452f,{ 0x8e, 0x16, 0x7b, 0x73, 0xf3, 0x76, 0xfd, 0xf3 } };

	//! Razer Mamba Chroma Tournament Edition device.
	// {7EC00450-E0EE-4289-89D5-0D879C19061A}
	static const GUID MAMBA_CHROMA_TE =
	{ 0x7ec00450, 0xe0ee, 0x4289,{ 0x89, 0xd5, 0xd, 0x87, 0x9c, 0x19, 0x6, 0x1a } };

	//! Razer Diamondback device.
	// {FF8A5929-4512-4257-8D59-C647BF9935D0}
	static const GUID DIAMONDBACK_CHROMA =
	{ 0xff8a5929, 0x4512, 0x4257,{ 0x8d, 0x59, 0xc6, 0x47, 0xbf, 0x99, 0x35, 0xd0 } };

	//! Razer Mamba device.
	// {D527CBDC-EB0A-483A-9E89-66D50463EC6C}
	static const GUID MAMBA_CHROMA =
	{ 0xd527cbdc, 0xeb0a, 0x483a,{ 0x9e, 0x89, 0x66, 0xd5, 0x4, 0x63, 0xec, 0x6c } };

	//! Razer Naga Epic device.
	// {D714C50B-7158-4368-B99C-601ACB985E98}
	static const GUID NAGA_EPIC_CHROMA =
	{ 0xd714c50b, 0x7158, 0x4368,{ 0xb9, 0x9c, 0x60, 0x1a, 0xcb, 0x98, 0x5e, 0x98 } };

	//! Razer Naga device.
	// {F1876328-6CA4-46AE-BE04-BE812B414433}
	static const GUID NAGA_CHROMA =
	{ 0xf1876328, 0x6ca4, 0x46ae,{ 0xbe, 0x4, 0xbe, 0x81, 0x2b, 0x41, 0x44, 0x33 } };

	//! Razer Orochi Chroma device.
	// {52C15681-4ECE-4DD9-8A52-A1418459EB34}
	static const GUID OROCHI_CHROMA =
	{ 0x52c15681, 0x4ece, 0x4dd9,{ 0x8a, 0x52, 0xa1, 0x41, 0x84, 0x59, 0xeb, 0x34 } };

	//! Razer Naga Hex Chroma device.
	// {195D70F5-F285-4CFF-99F2-B8C0E9658DB4}
	static const GUID NAGA_HEX_CHROMA =
	{ 0x195d70f5, 0xf285, 0x4cff,{ 0x99, 0xf2, 0xb8, 0xc0, 0xe9, 0x65, 0x8d, 0xb4 } };


	// Headsets
	//! Razer Kraken 7.1 Chroma device.
	// {CD1E09A5-D5E6-4A6C-A93B-E6D9BF1D2092}
	static const GUID KRAKEN71_CHROMA =
	{ 0xcd1e09a5, 0xd5e6, 0x4a6c,{ 0xa9, 0x3b, 0xe6, 0xd9, 0xbf, 0x1d, 0x20, 0x92 } };

	//! Razer ManO'War device.
	// {DF3164D7-5408-4A0E-8A7F-A7412F26BEBF}
	static const GUID MANOWAR_CHROMA =
	{ 0xdf3164d7, 0x5408, 0x4a0e,{ 0x8a, 0x7f, 0xa7, 0x41, 0x2f, 0x26, 0xbe, 0xbf } };


	// Mouse mat
	//! Razer Firefly device.
	// {80F95A94-73D2-48CA-AE9A-0986789A9AF2}
	static const GUID FIREFLY_CHROMA =
	{ 0x80f95a94, 0x73d2, 0x48ca,{ 0xae, 0x9a, 0x9, 0x86, 0x78, 0x9a, 0x9a, 0xf2 } };


	// Keypads
	//! Razer Tartarus device.
	// {00F0545C-E180-4AD1-8E8A-419061CE505E}
	static const GUID TARTARUS_CHROMA =
	{ 0xf0545c, 0xe180, 0x4ad1,{ 0x8e, 0x8a, 0x41, 0x90, 0x61, 0xce, 0x50, 0x5e } };

	//! Razer Orbweaver device.
	// {9D24B0AB-0162-466C-9640-7A924AA4D9FD}
	static const GUID ORBWEAVER_CHROMA =
	{ 0x9d24b0ab, 0x162, 0x466c,{ 0x96, 0x40, 0x7a, 0x92, 0x4a, 0xa4, 0xd9, 0xfd } };


	// Systems
	// {35F6F18D-1AE5-436C-A575-AB44A127903A}
	static const GUID LENOVO_Y900 =
	{ 0x35f6f18d, 0x1ae5, 0x436c,{ 0xa5, 0x75, 0xab, 0x44, 0xa1, 0x27, 0x90, 0x3a } };

	// {47DB1FA7-6B9B-4EE6-B6F4-4071A3B2053B}
	static const GUID LENOVO_Y27 =
	{ 0x47db1fa7, 0x6b9b, 0x4ee6,{ 0xb6, 0xf4, 0x40, 0x71, 0xa3, 0xb2, 0x5, 0x3b } };


	// Accessories
	// {0201203B-62F3-4C50-83DD-598BABD208E0}
	static const GUID CORE_CHROMA =
	{ 0x201203b, 0x62f3, 0x4c50,{ 0x83, 0xdd, 0x59, 0x8b, 0xab, 0xd2, 0x8, 0xe0 } };


}

#endif
