1 /* 2 * Copyright 2020 Google LLC 3 * 4 * Use of this source code is governed by a BSD-style license that can be 5 * found in the LICENSE file. 6 */ 7 8 #ifndef GrD3DPipelineStateDataManager_DEFINED 9 #define GrD3DPipelineStateDataManager_DEFINED 10 11 #include "src/gpu/ganesh/GrUniformDataManager.h" 12 13 #include "include/gpu/d3d/GrD3DTypes.h" 14 #include "src/gpu/ganesh/GrSPIRVUniformHandler.h" 15 16 class GrD3DConstantRingBuffer; 17 class GrD3DGpu; 18 19 class GrD3DPipelineStateDataManager : public GrUniformDataManager { 20 public: 21 typedef GrSPIRVUniformHandler::UniformInfoArray UniformInfoArray; 22 23 GrD3DPipelineStateDataManager(const UniformInfoArray&, 24 uint32_t uniformSize); 25 26 D3D12_GPU_VIRTUAL_ADDRESS uploadConstants(GrD3DGpu* gpu); 27 28 private: 29 D3D12_GPU_VIRTUAL_ADDRESS fConstantBufferAddress; 30 31 using INHERITED = GrUniformDataManager; 32 }; 33 34 #endif 35