mirror of
https://github.com/Kbz-8/Pulse.git
synced 2026-01-11 15:33:34 +00:00
adding device selection, buffer creation and pipeline creation to Metal backend
This commit is contained in:
29
Sources/Backends/Metal/MetalBuffer.h
git.filemode.normal_file
29
Sources/Backends/Metal/MetalBuffer.h
git.filemode.normal_file
@@ -0,0 +1,29 @@
|
||||
// Copyright (C) 2025 kanel
|
||||
// This file is part of "Pulse"
|
||||
// For conditions of distribution and use, see copyright notice in LICENSE
|
||||
|
||||
#include <Pulse.h>
|
||||
|
||||
#ifdef PULSE_ENABLE_METAL_BACKEND
|
||||
|
||||
#ifndef PULSE_METAL_BUFFER_H_
|
||||
#define PULSE_METAL_BUFFER_H_
|
||||
|
||||
#include <Metal/Metal.h>
|
||||
#include "Metal.h"
|
||||
|
||||
typedef struct MetalBuffer
|
||||
{
|
||||
id<MTLBuffer> buffer;
|
||||
} MetalBuffer;
|
||||
|
||||
PulseBuffer MetalCreateBuffer(PulseDevice device, const PulseBufferCreateInfo* create_infos);
|
||||
bool MetalMapBuffer(PulseBuffer buffer, PulseMapMode mode, void** data);
|
||||
void MetalUnmapBuffer(PulseBuffer buffer);
|
||||
bool MetalCopyBufferToBuffer(PulseCommandList cmd, const PulseBufferRegion* src, const PulseBufferRegion* dst);
|
||||
bool MetalCopyBufferToImage(PulseCommandList cmd, const PulseBufferRegion* src, const PulseImageRegion* dst);
|
||||
void MetalDestroyBuffer(PulseDevice device, PulseBuffer buffer);
|
||||
|
||||
#endif // PULSE_METAL_BUFFER_H_
|
||||
|
||||
#endif // PULSE_ENABLE_METAL_BACKEND
|
||||
Reference in New Issue
Block a user