package com.nativelibs4java.directx.d3d10;
import com.nativelibs4java.directx.d3d10.D3d10Library.D3D10_COUNTER_TYPE;
import com.nativelibs4java.directx.d3d10.D3d10Library.D3D10_PRIMITIVE_TOPOLOGY;
import com.nativelibs4java.directx.d3d10.D3d10Library.GUID;
import com.nativelibs4java.directx.d3d10.D3d10Library.RECT;
import org.bridj.Pointer;
import org.bridj.ValuedEnum;
import org.bridj.ann.CLong;
import org.bridj.ann.Library;
import org.bridj.ann.Virtual;
import org.bridj.cpp.com.IID;
/**
 * <i>native declaration : d3d10.h:1104</i><br>
 * This file was autogenerated by <a href="http://jnaerator.googlecode.com/">JNAerator</a>,<br>
 * a tool written by <a href="http://ochafik.free.fr/">Olivier Chafik</a> that <a href="http://code.google.com/p/jnaerator/wiki/CreditsAndLicense">uses a few opensource projects.</a>.<br>
 * For help, please visit <a href="http://nativelibs4java.googlecode.com/">NativeLibs4Java</a> or <a href="http://bridj.googlecode.com/">BridJ</a> .
 */
@IID("9B7E4C0F-342C-4106-A19F-4F2704F689F0") 
@Library("d3d10") 
public class ID3D10Device extends org.bridj.cpp.com.IUnknown {
	public ID3D10Device() {
		super();
	}
	public ID3D10Device(Pointer pointer) {
		super(pointer);
	}
	@Virtual(0) 
	public native void VSSetConstantBuffers(int StartSlot, int NumBuffers, Pointer<Pointer<ID3D10Buffer > > ppConstantBuffers);
	@Virtual(1) 
	public native void PSSetShaderResources(int StartSlot, int NumViews, Pointer<Pointer<ID3D10ShaderResourceView > > ppShaderResourceViews);
	@Virtual(2) 
	public native void PSSetShader(Pointer<ID3D10PixelShader > pPixelShader);
	@Virtual(3) 
	public native void PSSetSamplers(int StartSlot, int NumSamplers, Pointer<Pointer<ID3D10SamplerState > > ppSamplers);
	@Virtual(4) 
	public native void VSSetShader(Pointer<ID3D10VertexShader > pVertexShader);
	@Virtual(5) 
	public native void DrawIndexed(int IndexCount, int StartIndexLocation, int BaseVertexLocation);
	@Virtual(6) 
	public native void Draw(int VertexCount, int StartVertexLocation);
	@Virtual(7) 
	public native void PSSetConstantBuffers(int StartSlot, int NumBuffers, Pointer<Pointer<ID3D10Buffer > > ppConstantBuffers);
	@Virtual(8) 
	public native void IASetInputLayout(Pointer<ID3D10InputLayout > pInputLayout);
	@Virtual(9) 
	public native void IASetVertexBuffers(int StartSlot, int NumBuffers, Pointer<Pointer<ID3D10Buffer > > ppVertexBuffers, Pointer<Integer > pStrides, Pointer<Integer > pOffsets);
	@Virtual(11) 
	public native void DrawIndexedInstanced(int IndexCountPerInstance, int InstanceCount, int StartIndexLocation, int BaseVertexLocation, int StartInstanceLocation);
	@Virtual(12) 
	public native void DrawInstanced(int VertexCountPerInstance, int InstanceCount, int StartVertexLocation, int StartInstanceLocation);
	@Virtual(13) 
	public native void GSSetConstantBuffers(int StartSlot, int NumBuffers, Pointer<Pointer<ID3D10Buffer > > ppConstantBuffers);
	@Virtual(14) 
	public native void GSSetShader(Pointer<ID3D10GeometryShader > pShader);
	@Virtual(15) 
	public native void IASetPrimitiveTopology(ValuedEnum<D3D10_PRIMITIVE_TOPOLOGY > Topology);
	@Virtual(16) 
	public native void VSSetShaderResources(int StartSlot, int NumViews, Pointer<Pointer<ID3D10ShaderResourceView > > ppShaderResourceViews);
	@Virtual(17) 
	public native void VSSetSamplers(int StartSlot, int NumSamplers, Pointer<Pointer<ID3D10SamplerState > > ppSamplers);
	@Virtual(18) 
	public native void SetPredication(Pointer<ID3D10Predicate > pPredicate, int PredicateValue);
	@Virtual(19) 
	public native void GSSetShaderResources(int StartSlot, int NumViews, Pointer<Pointer<ID3D10ShaderResourceView > > ppShaderResourceViews);
	@Virtual(20) 
	public native void GSSetSamplers(int StartSlot, int NumSamplers, Pointer<Pointer<ID3D10SamplerState > > ppSamplers);
	@Virtual(21) 
	public native void OMSetRenderTargets(int NumViews, Pointer<Pointer<ID3D10RenderTargetView > > ppRenderTargetViews, Pointer<ID3D10DepthStencilView > pDepthStencilView);
	@Virtual(22) 
	public native void OMSetBlendState(Pointer<ID3D10BlendState > pBlendState, Pointer<Float > BlendFactor, int SampleMask);
	@Virtual(23) 
	public native void OMSetDepthStencilState(Pointer<ID3D10DepthStencilState > pDepthStencilState, int StencilRef);
	@Virtual(24) 
	public native void SOSetTargets(int NumBuffers, Pointer<Pointer<ID3D10Buffer > > ppSOTargets, Pointer<Integer > pOffsets);
	@Virtual(25) 
	public native void DrawAuto();
	@Virtual(26) 
	public native void RSSetState(Pointer<ID3D10RasterizerState > pRasterizerState);
	@Virtual(27) 
	public native void RSSetViewports(int NumViewports, Pointer<D3D10_VIEWPORT > pViewports);
	@Virtual(28) 
	public native void RSSetScissorRects(int NumRects, Pointer<RECT > pRects);
	@Virtual(29) 
	public native void CopySubresourceRegion(Pointer<ID3D10Resource > pDstResource, int DstSubresource, int DstX, int DstY, int DstZ, Pointer<ID3D10Resource > pSrcResource, int SrcSubresource, Pointer<D3D10_BOX > pSrcBox);
	@Virtual(30) 
	public native void CopyResource(Pointer<ID3D10Resource > pDstResource, Pointer<ID3D10Resource > pSrcResource);
	@Virtual(31) 
	public native void UpdateSubresource(Pointer<ID3D10Resource > pDstResource, int DstSubresource, Pointer<D3D10_BOX > pDstBox, Pointer<? > pSrcData, int SrcRowPitch, int SrcDepthPitch);
	@Virtual(32) 
	public native void ClearRenderTargetView(Pointer<ID3D10RenderTargetView > pRenderTargetView, Pointer<Float > ColorRGBA);
	@Virtual(33) 
	public native void ClearDepthStencilView(Pointer<ID3D10DepthStencilView > pDepthStencilView, int ClearFlags, float Depth, byte Stencil);
	@Virtual(34) 
	public native void GenerateMips(Pointer<ID3D10ShaderResourceView > pShaderResourceView);
	@Virtual(36) 
	public native void VSGetConstantBuffers(int StartSlot, int NumBuffers, Pointer<Pointer<ID3D10Buffer > > ppConstantBuffers);
	@Virtual(37) 
	public native void PSGetShaderResources(int StartSlot, int NumViews, Pointer<Pointer<ID3D10ShaderResourceView > > ppShaderResourceViews);
	@Virtual(38) 
	public native void PSGetShader(Pointer<Pointer<ID3D10PixelShader > > ppPixelShader);
	@Virtual(39) 
	public native void PSGetSamplers(int StartSlot, int NumSamplers, Pointer<Pointer<ID3D10SamplerState > > ppSamplers);
	@Virtual(40) 
	public native void VSGetShader(Pointer<Pointer<ID3D10VertexShader > > ppVertexShader);
	@Virtual(41) 
	public native void PSGetConstantBuffers(int StartSlot, int NumBuffers, Pointer<Pointer<ID3D10Buffer > > ppConstantBuffers);
	@Virtual(42) 
	public native void IAGetInputLayout(Pointer<Pointer<ID3D10InputLayout > > ppInputLayout);
	@Virtual(43) 
	public native void IAGetVertexBuffers(int StartSlot, int NumBuffers, Pointer<Pointer<ID3D10Buffer > > ppVertexBuffers, Pointer<Integer > pStrides, Pointer<Integer > pOffsets);
	@Virtual(44) 
	public native void IAGetIndexBuffer(Pointer<Pointer<ID3D10Buffer > > pIndexBuffer, Pointer<? > Format, Pointer<Integer > Offset);
	@Virtual(45) 
	public native void GSGetConstantBuffers(int StartSlot, int NumBuffers, Pointer<Pointer<ID3D10Buffer > > ppConstantBuffers);
	@Virtual(46) 
	public native void GSGetShader(Pointer<Pointer<ID3D10GeometryShader > > ppGeometryShader);
	@Virtual(47) 
	public native void IAGetPrimitiveTopology(Pointer<ValuedEnum<D3D10_PRIMITIVE_TOPOLOGY > > pTopology);
	@Virtual(48) 
	public native void VSGetShaderResources(int StartSlot, int NumViews, Pointer<Pointer<ID3D10ShaderResourceView > > ppShaderResourceViews);
	@Virtual(49) 
	public native void VSGetSamplers(int StartSlot, int NumSamplers, Pointer<Pointer<ID3D10SamplerState > > ppSamplers);
	@Virtual(50) 
	public native void GetPredication(Pointer<Pointer<ID3D10Predicate > > ppPredicate, Pointer<Integer > pPredicateValue);
	@Virtual(51) 
	public native void GSGetShaderResources(int StartSlot, int NumViews, Pointer<Pointer<ID3D10ShaderResourceView > > ppShaderResourceViews);
	@Virtual(52) 
	public native void GSGetSamplers(int StartSlot, int NumSamplers, Pointer<Pointer<ID3D10SamplerState > > ppSamplers);
	@Virtual(53) 
	public native void OMGetRenderTargets(int NumViews, Pointer<Pointer<ID3D10RenderTargetView > > ppRenderTargetViews, Pointer<Pointer<ID3D10DepthStencilView > > ppDepthStencilView);
	@Virtual(54) 
	public native void OMGetBlendState(Pointer<Pointer<ID3D10BlendState > > ppBlendState, Pointer<Float > BlendFactor, Pointer<Integer > pSampleMask);
	@Virtual(55) 
	public native void OMGetDepthStencilState(Pointer<Pointer<ID3D10DepthStencilState > > ppDepthStencilState, Pointer<Integer > pStencilRef);
	@Virtual(56) 
	public native void SOGetTargets(int NumBuffers, Pointer<Pointer<ID3D10Buffer > > ppSOTargets, Pointer<Integer > pOffsets);
	@Virtual(57) 
	public native void RSGetState(Pointer<Pointer<ID3D10RasterizerState > > ppRasterizerState);
	@Virtual(58) 
	public native void RSGetViewports(Pointer<Integer > NumViewports, Pointer<D3D10_VIEWPORT > pViewports);
	@Virtual(59) 
	public native void RSGetScissorRects(Pointer<Integer > NumRects, Pointer<RECT > pRects);
	@Virtual(60) 
	public native int GetDeviceRemovedReason();
	@Virtual(61) 
	public native int SetExceptionMode(int RaiseFlags);
	@Virtual(62) 
	public native int GetExceptionMode();
	@Virtual(63) 
	public native int GetPrivateData(Pointer<GUID > guid, Pointer<Integer > pDataSize, Pointer<? > pData);
	@Virtual(64) 
	public native int SetPrivateData(Pointer<GUID > guid, int DataSize, Pointer<? > pData);
	@Virtual(65) 
	public native int SetPrivateDataInterface(Pointer<GUID > guid, Pointer<com.nativelibs4java.directx.d3d10.D3d10Library.IUnknown > pData);
	@Virtual(66) 
	public native void ClearState();
	@Virtual(67) 
	public native void Flush();
	@Virtual(68) 
	public native int CreateBuffer(Pointer<D3D10_BUFFER_DESC > pDesc, Pointer<D3D10_SUBRESOURCE_DATA > pInitialData, Pointer<Pointer<ID3D10Buffer > > ppBuffer);
	@Virtual(69) 
	public native int CreateTexture1D(Pointer<D3D10_TEXTURE1D_DESC > pDesc, Pointer<D3D10_SUBRESOURCE_DATA > pInitialData, Pointer<Pointer<ID3D10Texture1D > > ppTexture1D);
	@Virtual(70) 
	public native int CreateTexture2D(Pointer<D3D10_TEXTURE2D_DESC > pDesc, Pointer<D3D10_SUBRESOURCE_DATA > pInitialData, Pointer<Pointer<ID3D10Texture2D > > ppTexture2D);
	@Virtual(71) 
	public native int CreateTexture3D(Pointer<D3D10_TEXTURE3D_DESC > pDesc, Pointer<D3D10_SUBRESOURCE_DATA > pInitialData, Pointer<Pointer<ID3D10Texture3D > > ppTexture3D);
	@Virtual(72) 
	public native int CreateShaderResourceView(Pointer<ID3D10Resource > pResource, Pointer<D3D10_SHADER_RESOURCE_VIEW_DESC > pDesc, Pointer<Pointer<ID3D10ShaderResourceView > > ppSRView);
	@Virtual(73) 
	public native int CreateRenderTargetView(Pointer<ID3D10Resource > pResource, Pointer<D3D10_RENDER_TARGET_VIEW_DESC > pDesc, Pointer<Pointer<ID3D10RenderTargetView > > ppRTView);
	@Virtual(74) 
	public native int CreateDepthStencilView(Pointer<ID3D10Resource > pResource, Pointer<D3D10_DEPTH_STENCIL_VIEW_DESC > pDesc, Pointer<Pointer<ID3D10DepthStencilView > > ppDepthStencilView);
	@Virtual(75) 
	public native int CreateInputLayout(Pointer<D3D10_INPUT_ELEMENT_DESC > pInputElementDescs, int NumElements, Pointer<? > pShaderBytecodeWithInputSignature, @CLong long BytecodeLength, Pointer<Pointer<ID3D10InputLayout > > ppInputLayout);
	@Virtual(76) 
	public native int CreateVertexShader(Pointer<? > pShaderBytecode, @CLong long BytecodeLength, Pointer<Pointer<ID3D10VertexShader > > ppVertexShader);
	@Virtual(77) 
	public native int CreateGeometryShader(Pointer<? > pShaderBytecode, @CLong long BytecodeLength, Pointer<Pointer<ID3D10GeometryShader > > ppGeometryShader);
	@Virtual(78) 
	public native int CreateGeometryShaderWithStreamOutput(Pointer<? > pShaderBytecode, @CLong long BytecodeLength, Pointer<D3D10_SO_DECLARATION_ENTRY > pSODeclaration, int NumEntries, int OutputStreamStride, Pointer<Pointer<ID3D10GeometryShader > > ppGeometryShader);
	@Virtual(79) 
	public native int CreatePixelShader(Pointer<? > pShaderBytecode, @CLong long BytecodeLength, Pointer<Pointer<ID3D10PixelShader > > ppPixelShader);
	@Virtual(80) 
	public native int CreateBlendState(Pointer<D3D10_BLEND_DESC > pBlendStateDesc, Pointer<Pointer<ID3D10BlendState > > ppBlendState);
	@Virtual(81) 
	public native int CreateDepthStencilState(Pointer<D3D10_DEPTH_STENCIL_DESC > pDepthStencilDesc, Pointer<Pointer<ID3D10DepthStencilState > > ppDepthStencilState);
	@Virtual(82) 
	public native int CreateRasterizerState(Pointer<D3D10_RASTERIZER_DESC > pRasterizerDesc, Pointer<Pointer<ID3D10RasterizerState > > ppRasterizerState);
	@Virtual(83) 
	public native int CreateSamplerState(Pointer<D3D10_SAMPLER_DESC > pSamplerDesc, Pointer<Pointer<ID3D10SamplerState > > ppSamplerState);
	@Virtual(84) 
	public native int CreateQuery(Pointer<D3D10_QUERY_DESC > pQueryDesc, Pointer<Pointer<ID3D10Query > > ppQuery);
	@Virtual(85) 
	public native int CreatePredicate(Pointer<D3D10_QUERY_DESC > pPredicateDesc, Pointer<Pointer<ID3D10Predicate > > ppPredicate);
	@Virtual(86) 
	public native int CreateCounter(Pointer<D3D10_COUNTER_DESC > pCounterDesc, Pointer<Pointer<ID3D10Counter > > ppCounter);
	@Virtual(89) 
	public native void CheckCounterInfo(Pointer<D3D10_COUNTER_INFO > pCounterInfo);
	@Virtual(90) 
	public native int CheckCounter(Pointer<D3D10_COUNTER_DESC > pDesc, Pointer<ValuedEnum<D3D10_COUNTER_TYPE > > pType, Pointer<Integer > pActiveCounters, Pointer<Byte > szName, Pointer<Integer > pNameLength, Pointer<Byte > szUnits, Pointer<Integer > pUnitsLength, Pointer<Byte > szDescription, Pointer<Integer > pDescriptionLength);
	@Virtual(91) 
	public native int GetCreationFlags();
	@Virtual(92) 
	public native int OpenSharedResource(Pointer<? > hResource, Pointer<GUID > ReturnedInterface, Pointer<Pointer<? > > ppResource);
	@Virtual(93) 
	public native void SetTextFilterSize(int Width, int Height);
	@Virtual(94) 
	public native void GetTextFilterSize(Pointer<Integer > pWidth, Pointer<Integer > pHeight);
}
