more refactoring, compiles.
This commit is contained in:
@@ -3,8 +3,15 @@ use vulkano::device::Device;
|
||||
use vulkano::buffer::{CpuAccessibleBuffer, BufferUsage};
|
||||
use vulkano::pipeline::ComputePipeline;
|
||||
use vulkano::descriptor::pipeline_layout::PipelineLayout;
|
||||
use vulkano::descriptor::descriptor_set::PersistentDescriptorSet;
|
||||
use vulkano::descriptor::descriptor_set::{PersistentDescriptorSet, PersistentDescriptorSetBuf};
|
||||
use image::ImageBuffer;
|
||||
use image::Rgba;
|
||||
|
||||
#[derive(Clone, Debug, Default, PartialEq, Eq, Hash)]
|
||||
pub struct CompuBufferHandle {
|
||||
pub handle: u32,
|
||||
}
|
||||
|
||||
|
||||
#[derive(Clone)]
|
||||
pub struct CompuBuffers {
|
||||
@@ -63,9 +70,10 @@ impl CompuBuffers {
|
||||
|
||||
pub fn get_descriptor_set(&self, compute_pipeline: std::sync::Arc<ComputePipeline<PipelineLayout<shade_runner::layouts::ComputeLayout>>>)
|
||||
-> Arc<PersistentDescriptorSet<std::sync::Arc<ComputePipeline<PipelineLayout<shade_runner::layouts::ComputeLayout>>>, ((((),
|
||||
PersistentDescriptorSetBuf<std::sync::Arc<vulkano::buffer::cpu_access::CpuAccessibleBuffer<[u8]>>>),
|
||||
PersistentDescriptorSetBuf<std::sync::Arc<vulkano::buffer::cpu_access::CpuAccessibleBuffer<[u8]>>>),
|
||||
PersistentDescriptorSetBuf<std::sync::Arc<vulkano::buffer::cpu_access::CpuAccessibleBuffer<[u32]>>>)>> {
|
||||
PersistentDescriptorSetBuf<std::sync::Arc<vulkano::buffer::cpu_access::CpuAccessibleBuffer<[u8]>>>),
|
||||
PersistentDescriptorSetBuf<std::sync::Arc<vulkano::buffer::cpu_access::CpuAccessibleBuffer<[u8]>>>),
|
||||
PersistentDescriptorSetBuf<std::sync::Arc<vulkano::buffer::cpu_access::CpuAccessibleBuffer<[u32]>>>)>> {
|
||||
|
||||
Arc::new(PersistentDescriptorSet::start(compute_pipeline.clone(), 0)
|
||||
.add_buffer(self.io_buffers.get(0).unwrap().clone()).unwrap()
|
||||
.add_buffer(self.io_buffers.get(1).unwrap().clone()).unwrap()
|
||||
@@ -87,13 +95,12 @@ impl CompuBuffers {
|
||||
image::Rgba([r, g, b, a])
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Clone)]
|
||||
pub struct CompuBufferHandle {
|
||||
handle: u32,
|
||||
pub fn get_input_buffer(&self) -> Arc<CpuAccessibleBuffer<[u8]>> {
|
||||
self.io_buffers.get(0).unwrap().clone()
|
||||
}
|
||||
|
||||
pub fn get_output_buffer(&self) -> Arc<CpuAccessibleBuffer<[u8]>> {
|
||||
self.io_buffers.get(1).unwrap().clone()
|
||||
}
|
||||
}
|
||||
#[derive(Clone)]
|
||||
pub struct CompuKernelHandle {
|
||||
handle: u32,
|
||||
}
|
||||
Reference in New Issue
Block a user