summaryrefslogtreecommitdiffstats
path: root/Whisper/D3D/Binder.h
blob: bf7ffb219150f49c940c039bade41def821e4f63 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#pragma once
#include "device.h"

namespace DirectCompute
{
	class Binder
	{
		uint8_t maxSrv = 0;
		uint8_t maxUav = 0;

	public:
		Binder() = default;
		Binder( const Binder& ) = delete;

		void bind( ID3D11ShaderResourceView* srv0, ID3D11UnorderedAccessView* uav0 );
		void bind( ID3D11ShaderResourceView* srv0, ID3D11ShaderResourceView* srv1, ID3D11UnorderedAccessView* uav0 );
		void bind( std::initializer_list<ID3D11ShaderResourceView*> srvs, std::initializer_list<ID3D11UnorderedAccessView*> uavs );
		void bind( ID3D11UnorderedAccessView* uav0 );
		~Binder();
	};
}