> ## Name

> cgCreateSamplerState - create a sampler state definition

> ## Synopsis

>     #include <Cg/cg.h>

>     CGstate cgCreateSamplerState( CGcontext context,
>                                   const char * name,
>                                   CGtype type );

> ## Parameters

> context
>   The context in which to define the new sampler state.
> name
>   The name of the new sampler state.
> type
>   The type of the new sampler state.

> ## Return Values

> Returns a handle to the newly created CGstate.

> Returns NULL if there is an error.

> ## Description

> cgCreateSamplerState adds a new sampler state definition to the context. When an effect file is added to the context, all state in sampler_state blocks must have already been defined via a call to cgCreateSamplerState or cgCreateArraySamplerState.

> Applications will typically call cgSetStateCallbacks shortly after creating a new state with cgCreateSamplerState.

> ## Examples

> to-be-written

> ## Errors

> CG_INVALID_CONTEXT_HANDLE_ERROR is generated if context is not a valid context.

> CG_INVALID_PARAMETER_ERROR is generated if name is NULL or not a valid identifier, or if type is not a simple scalar, vector, or matrix-type. Array-typed state should be created with cgCreateArrayState.

> ## History

> cgCreateSamplerState was introduced in Cg 1.4.

> ## See Also

> cgCreateArraySamplerState, cgGetStateName, cgGetStateType, cgIsState, cgCreateSamplerStateAssignment, cgGLRegisterStates