/// ****************************************************************************
/// @file   
/// @author Dr.Neeton
/// @date   200X/X/X - 2014/03/07
/// 
/// @brief  シェーダー用キーワード関連
/// 
/// ****************************************************************************

#include "CPL_DX_Shader_Keywords.h"



namespace CPL {
namespace DX {
namespace Shader {

#define CPL_DX_SHADER_STRINGS_KEYWORDS( name, key )\
  CodeStrings::css32 CodeKeywords::name( #key " " );

#define CPL_DX_SHADER_STRINGS_KEYWORDS2( name1, name2, key )\
  CodeStrings::css32 CodeKeywords::name1( #key " " );\
  CodeStrings::css32 CodeKeywords::name2( #key " " );


// reserved words
CPL_DX_SHADER_STRINGS_KEYWORDS( auto_, auto )
CPL_DX_SHADER_STRINGS_KEYWORDS( case_, case )
CPL_DX_SHADER_STRINGS_KEYWORDS( catch_, catch )
CPL_DX_SHADER_STRINGS_KEYWORDS( char_, char )
CPL_DX_SHADER_STRINGS_KEYWORDS( class_, class )
CPL_DX_SHADER_STRINGS_KEYWORDS( const_cast_, const_cast )
CPL_DX_SHADER_STRINGS_KEYWORDS( default_, default )
CPL_DX_SHADER_STRINGS_KEYWORDS( delete_, delete )
CPL_DX_SHADER_STRINGS_KEYWORDS( dynamic_cast_, dynamic_cast )
CPL_DX_SHADER_STRINGS_KEYWORDS( enum_, enum )
CPL_DX_SHADER_STRINGS_KEYWORDS( explicit_, explicit )
CPL_DX_SHADER_STRINGS_KEYWORDS( friend_, friend )
CPL_DX_SHADER_STRINGS_KEYWORDS( goto_, goto )
CPL_DX_SHADER_STRINGS_KEYWORDS( long_, long )
CPL_DX_SHADER_STRINGS_KEYWORDS( mutable_, mutable )
CPL_DX_SHADER_STRINGS_KEYWORDS( new_, new )
CPL_DX_SHADER_STRINGS_KEYWORDS( operator_, operator )
CPL_DX_SHADER_STRINGS_KEYWORDS( private_, private )
CPL_DX_SHADER_STRINGS_KEYWORDS( protected_, protected )
CPL_DX_SHADER_STRINGS_KEYWORDS( public_, public )
CPL_DX_SHADER_STRINGS_KEYWORDS( reinterpret_cast_, reinterpret_cast )
CPL_DX_SHADER_STRINGS_KEYWORDS( short_, short )
CPL_DX_SHADER_STRINGS_KEYWORDS( signed_, signed )
CPL_DX_SHADER_STRINGS_KEYWORDS( sizeof_, sizeof )
CPL_DX_SHADER_STRINGS_KEYWORDS( static_cast_, static_cast )
CPL_DX_SHADER_STRINGS_KEYWORDS( template_, template )
CPL_DX_SHADER_STRINGS_KEYWORDS( this_, this )
CPL_DX_SHADER_STRINGS_KEYWORDS( throw_, throw )
CPL_DX_SHADER_STRINGS_KEYWORDS( try_, try )
CPL_DX_SHADER_STRINGS_KEYWORDS( typename_, typename )
CPL_DX_SHADER_STRINGS_KEYWORDS( union_, union )
CPL_DX_SHADER_STRINGS_KEYWORDS( unsigned_, unsigned )
CPL_DX_SHADER_STRINGS_KEYWORDS( using_, using )
CPL_DX_SHADER_STRINGS_KEYWORDS( virtual_, virtual )

// keywords
CPL_DX_SHADER_STRINGS_KEYWORDS2( if_, If, if )
CPL_DX_SHADER_STRINGS_KEYWORDS2( else_, Else, else )
CPL_DX_SHADER_STRINGS_KEYWORDS2( for_, For, for )
CPL_DX_SHADER_STRINGS_KEYWORDS2( while_, While, while )
CPL_DX_SHADER_STRINGS_KEYWORDS2( do_, Do, do )
CPL_DX_SHADER_STRINGS_KEYWORDS2( in_, In, in )
CPL_DX_SHADER_STRINGS_KEYWORDS2( out_, Out, out )
CPL_DX_SHADER_STRINGS_KEYWORDS2( inout_, Inout, inout )
CPL_DX_SHADER_STRINGS_KEYWORDS2( void_, Void, void )
CPL_DX_SHADER_STRINGS_KEYWORDS2( bool_, Bool, bool )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int_, Int, int )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int1_, Int1, int1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int2_, Int2, int2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int3_, Int3, int3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int4_, Int4, int4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint_, Uint, uint )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint1_, Uint1, uint1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint2_, Uint2, uint2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint3_, Uint3, uint3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint4_, Uint4, uint4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float_, Float, float )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float1_, Float1, float1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float2_, Float2, float2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float3_, Float3, float3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float4_, Float4, float4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double_, Double, double )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double1_, Double1, double1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double2_, Double2, double2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double3_, Double3, double3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double4_, Double4, double4 )
CPL_DX_SHADER_STRINGS_KEYWORDS( texture_, texture )
CPL_DX_SHADER_STRINGS_KEYWORDS( texture1_, texture1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( cbuffer_, CBuffer, cbuffer )
CPL_DX_SHADER_STRINGS_KEYWORDS2( tbuffer_, TBuffer, tbuffer )
CPL_DX_SHADER_STRINGS_KEYWORDS2( break_, Break, break )
//CPL_DX_SHADER_STRINGS_KEYWORDS2( class_, Class, class )
CPL_DX_SHADER_STRINGS_KEYWORDS2( compile_, Compile, compile )
CPL_DX_SHADER_STRINGS_KEYWORDS2( const_, Const, const )
CPL_DX_SHADER_STRINGS_KEYWORDS2( continue_, Continue, continue )
CPL_DX_SHADER_STRINGS_KEYWORDS2( depthstencilstate_, DepthStencilState, DepthStencilState )
CPL_DX_SHADER_STRINGS_KEYWORDS2( depthstencilview_, DepthStencilView, DepthStencilView )
CPL_DX_SHADER_STRINGS_KEYWORDS2( discard_, Discard, discard )
CPL_DX_SHADER_STRINGS_KEYWORDS2( extern_, Extern, extern )
CPL_DX_SHADER_STRINGS_KEYWORDS2( false_, False, false )
CPL_DX_SHADER_STRINGS_KEYWORDS2( true_, True, true )
CPL_DX_SHADER_STRINGS_KEYWORDS2( geometryshader_, GeometryShader, GeometryShader )
CPL_DX_SHADER_STRINGS_KEYWORDS2( inline_, Inline, inline )
CPL_DX_SHADER_STRINGS_KEYWORDS2( interface_, Interface_, interface )
CPL_DX_SHADER_STRINGS_KEYWORDS2( namespace_, Namespace, namespace )
CPL_DX_SHADER_STRINGS_KEYWORDS2( nointerpolation_, Nointerpolation, nointerpolation )
CPL_DX_SHADER_STRINGS_KEYWORDS2( pass_, Pass, pass )
CPL_DX_SHADER_STRINGS_KEYWORDS2( pixelshader_, PixelShader, PixelShader )
CPL_DX_SHADER_STRINGS_KEYWORDS2( precise_, Precise, precise )
CPL_DX_SHADER_STRINGS_KEYWORDS2( rasterizerstate_, RasterizerState, RasterizerState )
CPL_DX_SHADER_STRINGS_KEYWORDS2( rendertargetview_, RenderTargetView, RenderTargetView )
CPL_DX_SHADER_STRINGS_KEYWORDS2( return_, Return, return )
CPL_DX_SHADER_STRINGS_KEYWORDS2( register_, Register, register )
CPL_DX_SHADER_STRINGS_KEYWORDS2( sampler_, Sampler, sampler )
CPL_DX_SHADER_STRINGS_KEYWORDS2( sampler1d_, Sampler1D, sampler1D )
CPL_DX_SHADER_STRINGS_KEYWORDS2( sampler2d_, Sampler2D, sampler2D )
CPL_DX_SHADER_STRINGS_KEYWORDS2( sampler3d_, Sampler3D, sampler3D )
CPL_DX_SHADER_STRINGS_KEYWORDS2( samplercube_, SamplerCUBE, SamplerCUBE )
CPL_DX_SHADER_STRINGS_KEYWORDS2( sampler_state_, SamplerState, SamplerState )
CPL_DX_SHADER_STRINGS_KEYWORDS2( samplercomparisonstate_, SamplerComparisonState, SamplerComparisonState )
CPL_DX_SHADER_STRINGS_KEYWORDS2( shared_, Shared, shared )
CPL_DX_SHADER_STRINGS_KEYWORDS2( stateblock_, Stateblock, stateblock )
CPL_DX_SHADER_STRINGS_KEYWORDS2( stateblock_state_, Stateblock_state, stateblock_state )
CPL_DX_SHADER_STRINGS_KEYWORDS2( static_, Static, static )
CPL_DX_SHADER_STRINGS_KEYWORDS2( string_, String, string )
CPL_DX_SHADER_STRINGS_KEYWORDS2( struct_, Struct, struct )
CPL_DX_SHADER_STRINGS_KEYWORDS2( switch_, Switch, switch )
CPL_DX_SHADER_STRINGS_KEYWORDS2( technique_, Technique, technique )
CPL_DX_SHADER_STRINGS_KEYWORDS2( technique10_, Technique10, technique10 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( texture1d_, Texture1D, Texture1D )
CPL_DX_SHADER_STRINGS_KEYWORDS2( texture1darray_, Texture1DArray, Texture1DArray )
CPL_DX_SHADER_STRINGS_KEYWORDS2( texture2d_, Texture2D, Texture2D )
CPL_DX_SHADER_STRINGS_KEYWORDS2( texture2darray_, Texture2DArray, Texture2DArray )
CPL_DX_SHADER_STRINGS_KEYWORDS2( texture2dms_, Texture2DMS, Texture2DMS )
CPL_DX_SHADER_STRINGS_KEYWORDS2( texture2dmsarray_, Texture2DMSArray, Texture2DMSArray )
CPL_DX_SHADER_STRINGS_KEYWORDS2( texture3d_, Texture3D, Texture3D )
CPL_DX_SHADER_STRINGS_KEYWORDS2( texturecube_, TextureCube, TextureCube )
CPL_DX_SHADER_STRINGS_KEYWORDS2( texturecubearray_, TextureCubeArray, TextureCubeArray )
CPL_DX_SHADER_STRINGS_KEYWORDS2( typedef_, Typedef, typedef )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uniform_, Uniform, uniform )
CPL_DX_SHADER_STRINGS_KEYWORDS2( vector_, Vector, vector )
CPL_DX_SHADER_STRINGS_KEYWORDS2( vertexshader_, VertexShader, VertexShader )
CPL_DX_SHADER_STRINGS_KEYWORDS2( volatile_, Volatile, volatile )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int1x1_, Int1x1, int1x1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int1x2_, Int1x2, int1x2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int1x3_, Int1x3, int1x3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int1x4_, Int1x4, int1x4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int2x1_, Int2x1, int2x1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int2x2_, Int2x2, int2x2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int2x3_, Int2x3, int2x3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int2x4_, Int2x4, int2x4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int3x1_, Int3x1, int3x1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int3x2_, Int3x2, int3x2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int3x3_, Int3x3, int3x3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int3x4_, Int3x4, int3x4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int4x1_, Int4x1, int4x1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int4x2_, Int4x2, int4x2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int4x3_, Int4x3, int4x3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( int4x4_, Int4x4, int4x4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint1x1_, Uint1x1, uint1x1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint1x2_, Uint1x2, uint1x2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint1x3_, Uint1x3, uint1x3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint1x4_, Uint1x4, uint1x4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint2x1_, Uint2x1, uint2x1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint2x2_, Uint2x2, uint2x2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint2x3_, Uint2x3, uint2x3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint2x4_, Uint2x4, uint2x4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint3x1_, Uint3x1, uint3x1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint3x2_, Uint3x2, uint3x2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint3x3_, Uint3x3, uint3x3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint3x4_, Uint3x4, uint3x4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint4x1_, Uint4x1, uint4x1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint4x2_, Uint4x2, uint4x2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint4x3_, Uint4x3, uint4x3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( uint4x4_, Uint4x4, uint4x4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float1x1_, Float1x1, float1x1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float1x2_, Float1x2, float1x2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float1x3_, Float1x3, float1x3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float1x4_, Float1x4, float1x4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float2x1_, Float2x1, float2x1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float2x2_, Float2x2, float2x2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float2x3_, Float2x3, float2x3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float2x4_, Float2x4, float2x4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float3x1_, Float3x1, float3x1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float3x2_, Float3x2, float3x2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float3x3_, Float3x3, float3x3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float3x4_, Float3x4, float3x4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float4x1_, Float4x1, float4x1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float4x2_, Float4x2, float4x2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float4x3_, Float4x3, float4x3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( float4x4_, Float4x4, float4x4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double1x1_, Double1x1, double1x1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double1x2_, Double1x2, double1x2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double1x3_, Double1x3, double1x3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double1x4_, Double1x4, double1x4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double2x1_, Double2x1, double2x1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double2x2_, Double2x2, double2x2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double2x3_, Double2x3, double2x3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double2x4_, Double2x4, double2x4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double3x1_, Double3x1, double3x1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double3x2_, Double3x2, double3x2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double3x3_, Double3x3, double3x3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double3x4_, Double3x4, double3x4 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double4x1_, Double4x1, double4x1 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double4x2_, Double4x2, double4x2 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double4x3_, Double4x3, double4x3 )
CPL_DX_SHADER_STRINGS_KEYWORDS2( double4x4_, Double4x4, double4x4 )

// other words
CPL_DX_SHADER_STRINGS_KEYWORDS( Yn, \n )
CodeStrings::css16 CodeKeywords::Ends(";\n");

// variable name
//CodeStrings::css  CodeKeywords::vn_g_Texture     ( "g_Texture"      ); // 配列にできないみたいなので、g_Texture0,g_Texture1...の形式をとる
//CodeStrings::css  CodeKeywords::vn_g_Sampler     ( "g_Sampler"      ); // 配列
//CodeStrings::css  CodeKeywords::vn_g_LightPos    ( "g_LightPos"     ); // 配列
//CodeStrings::css  CodeKeywords::vn_g_LightNormal ( "g_LightNormal"  ); // 配列
//CodeStrings::css  CodeKeywords::vn_g_LightAmbient( "g_LightAmbient" );
//CodeStrings::css  CodeKeywords::vn_g_LightDiffuse( "g_LightDiffuse" ); // 配列
//CodeStrings::css  CodeKeywords::vn_g_LightPower  ( "g_LightPower"   ); // 配列
//CodeStrings::css  CodeKeywords::vn_g_LightTheta  ( "g_LightTheta"   ); // 配列
//CodeStrings::css  CodeKeywords::vn_g_LightPhi    ( "g_LightPhi"     ); // 配列
//CodeStrings::css  CodeKeywords::vn_g_LightType   ( "g_LightType"    ); // 配列
//CodeStrings::css  CodeKeywords::vn_g_EyePos      ( "g_EyePos"       ); //
//CodeStrings::css  CodeKeywords::vn_g_LookPos     ( "g_LookPos"      ); //
//CodeStrings::css  CodeKeywords::vn_g_MtrlColor   ( "g_MtrlColor"    );
//CodeStrings::css  CodeKeywords::vn_g_MtrlDiffuse ( "g_MtrlDiffuse"  ); //
//CodeStrings::css  CodeKeywords::vn_g_MtrlSpecular( "g_MtrlSpecular" ); //
//CodeStrings::css  CodeKeywords::vn_g_MtrlEmissive( "g_MtrlEmissive" ); //
//CodeStrings::css  CodeKeywords::vn_g_ViewProjMtx ( "g_ViewProjMtx"  );
//CodeStrings::css  CodeKeywords::vn_g_MtxProj     ( "g_ProjMtx"      );
//CodeStrings::css  CodeKeywords::vn_g_MtxView     ( "g_ViewMtx"      );
//CodeStrings::css  CodeKeywords::vn_g_MtxWorld    ( "g_WorldMtx"     ); // 配列
//
//CodeStrings::css  CodeKeywords::vn_l_Matrix   ( "Matrix"    );
//CodeStrings::css  CodeKeywords::vn_l_VtxPos   ( "VtxPos"    );
//CodeStrings::css  CodeKeywords::vn_l_VtxNormal( "VtxNormal" );
//CodeStrings::css  CodeKeywords::vn_l_Color    ( "Color"     );
//
//CodeStrings::css  CodeKeywords::vn_in_VtxPos       ( "in_VtxPos"        );
//CodeStrings::css  CodeKeywords::vn_in_VtxPosT      ( "in_VtxPosT"       );
//CodeStrings::css  CodeKeywords::vn_in_VtxNormal    ( "in_VtxNormal"     );
//CodeStrings::css  CodeKeywords::vn_in_VtxColor     ( "in_VtxColor"      );
//CodeStrings::css  CodeKeywords::vn_in_VtxBWeight   ( "in_VtxBWeight"    );
//CodeStrings::css  CodeKeywords::vn_in_VtxBIndex    ( "in_VtxBIndex"     );
//CodeStrings::css  CodeKeywords::vn_in_VtxPSize     ( "in_VtxPSize"      );
//CodeStrings::css  CodeKeywords::vn_in_VtxTexCoord  ( "in_VtxTexCoord"   );
//CodeStrings::css  CodeKeywords::vn_in_VtxTangent   ( "in_VtxTangent"    );
//CodeStrings::css  CodeKeywords::vn_in_VtxBiNormal  ( "in_VtxBiNormal"   );
//CodeStrings::css  CodeKeywords::vn_in_VtxTessFactor( "in_VtxTessFactor" );
//CodeStrings::css  CodeKeywords::vn_in_Mtx          ( "in_matrix"        );
//CodeStrings::css  CodeKeywords::vn_in_BIdx0        ( "in_BIdx0"         );
//CodeStrings::css  CodeKeywords::vn_in_BW0          ( "in_BW0"           );
//CodeStrings::css  CodeKeywords::vn_in_BIdx1        ( "in_BIdx1"         );
//CodeStrings::css  CodeKeywords::vn_in_Color        ( "in_Color"         );
//CodeStrings::css  CodeKeywords::vn_in_TexCoord     ( "in_TexCoord"      );
//CodeStrings::css  CodeKeywords::vn_in_VPos         ( "in_VPos"          );
//CodeStrings::css  CodeKeywords::vn_in_VFace        ( "in_VFace"         );
//CodeStrings::css  CodeKeywords::vn_in_AmbientColor ( "in_AmbientColor"  );
//CodeStrings::css  CodeKeywords::vn_in_LightPos     ( "in_LightPos"      );
//CodeStrings::css  CodeKeywords::vn_in_LightNormal  ( "in_LightNormal"   );
//CodeStrings::css  CodeKeywords::vn_in_LightDiffuse ( "in_LightDiffuse"  );
//CodeStrings::css  CodeKeywords::vn_in_LightPower   ( "in_LightPower"    );
//CodeStrings::css  CodeKeywords::vn_in_LightTheta   ( "in_LightTheta"    );
//CodeStrings::css  CodeKeywords::vn_in_LightPhi     ( "in_LightPhi"      );
//
//CodeStrings::css  CodeKeywords::vn_out_Color   ( "out_Color"      );
//CodeStrings::css  CodeKeywords::vn_out_ScPos   ( "out_screen_pos" );
//CodeStrings::css  CodeKeywords::vn_out_Mtx     ( "out_Mtx"        );
//CodeStrings::css  CodeKeywords::vn_out_VtxColor( "out_VtxColor"   );
//CodeStrings::css  CodeKeywords::vn_out_PSize   ( "out_PSize"      );
//CodeStrings::css  CodeKeywords::vn_out_Fog     ( "out_Fog"        );
//CodeStrings::css  CodeKeywords::vn_out_TexCoord( "out_TexCoord"   );
//CodeStrings::css  CodeKeywords::vn_out_Depth   ( "out_Depth"      );
//
//CodeStrings::css  CodeKeywords::vn_io_VtxPos   ( "io_vtx_pos"   );
//CodeStrings::css  CodeKeywords::vn_io_VtxNormal( "io_VtxNormal" );
//CodeStrings::css  CodeKeywords::vn_io_Mtx      ( "io_Matrix"    );
//CodeStrings::css  CodeKeywords::vn_io_Color    ( "io_Color"     );

// semantics
CodeStrings::css32  CodeKeywords::POSITION    ( "POSITION"     );
CodeStrings::css32  CodeKeywords::POSITIONT   ( "POSITIONT"    );
CodeStrings::css32  CodeKeywords::BLENDWEIGHT ( "BLENDWEIGHT"  );
CodeStrings::css32  CodeKeywords::BLENDINDICES( "BLENDINDICES" );
CodeStrings::css32  CodeKeywords::NORMAL      ( "NORMAL"       );
CodeStrings::css32  CodeKeywords::PSIZE       ( "PSIZE"        );
CodeStrings::css32  CodeKeywords::COLOR       ( "COLOR"        );
CodeStrings::css32  CodeKeywords::TEXCOORD    ( "TEXCOORD"     );
CodeStrings::css32  CodeKeywords::TANGENT     ( "TANGENT"      );
CodeStrings::css32  CodeKeywords::BINORMAL    ( "BINORMAL"     );
CodeStrings::css32  CodeKeywords::TESSFACTOR  ( "TESSFACTOR"   );
CodeStrings::css32  CodeKeywords::FOG         ( "FOG"          );
CodeStrings::css32  CodeKeywords::VPOS        ( "VPOS"         );
CodeStrings::css32  CodeKeywords::VFACE       ( "VFACE"        );
CodeStrings::css32  CodeKeywords::DEPTH       ( "DEPTH"        );
CodeStrings::css32  CodeKeywords::SV_ClipDistance          ( "SV_ClipDistance"           );
CodeStrings::css32  CodeKeywords::SV_CullDistance          ( "SV_CullDistance"           );
CodeStrings::css32  CodeKeywords::SV_Coverage              ( "SV_Coverage"               );
CodeStrings::css32  CodeKeywords::SV_Depth                 ( "SV_Depth"                  );
CodeStrings::css32  CodeKeywords::SV_IsFrontFace           ( "SV_IsFrontFace"            );
CodeStrings::css32  CodeKeywords::SV_Position              ( "SV_Position"               );
CodeStrings::css32  CodeKeywords::SV_RenderTargetArrayIndex( "SV_RenderTargetArrayIndex" );
CodeStrings::css32  CodeKeywords::SV_SampleIndex           ( "SV_SampleIndex"            );
CodeStrings::css32  CodeKeywords::SV_Target                ( "SV_Target"                 );
CodeStrings::css32  CodeKeywords::SV_ViewportArrayIndex    ( "SV_ViewportArrayIndex"     );
CodeStrings::css32  CodeKeywords::SV_InstanceID            ( "SV_InstanceID"             );
CodeStrings::css32  CodeKeywords::SV_PrimitiveID           ( "SV_PrimitiveID"            );
CodeStrings::css32  CodeKeywords::SV_VertexID              ( "SV_VertexID"               );


} // namespace Shader
} // namespace DX
} // namespace CPL