@class NSString, NSError, MPSPredicate; @protocol MTLDevice, MTLCommandBuffer, MPSHeapProvider, MTLLogContainer, MTLCommandQueue, MTLBuffer; @interface MPSCommandBuffer : NSObject { id _currentDispatchBuffer; unsigned long long _offsetToCurrentFree; void *_mpsDevice; } @property struct MPSCommandBufferDescriptor { unsigned long long encoderCount; unsigned long long producedValues; } mpsCommandBufferDescriptor; @property (readonly, retain, nonatomic) id commandBuffer; @property (readonly, retain, nonatomic) id rootCommandBuffer; @property (retain, nonatomic) MPSPredicate *predicate; @property (retain, nonatomic) id heapProvider; @property (readonly) id device; @property (readonly) id commandQueue; @property (readonly) BOOL retainedReferences; @property (readonly) unsigned long long errorOptions; @property (copy) NSString *label; @property (readonly) double kernelStartTime; @property (readonly) double kernelEndTime; @property (readonly) id logs; @property (readonly) double GPUStartTime; @property (readonly) double GPUEndTime; @property (readonly) unsigned long long status; @property (readonly) NSError *error; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (id)commandBufferFromCommandQueue:(id)a0; + (id)commandBufferWithCommandBuffer:(id)a0; - (id)computeCommandEncoderWithDispatchType:(unsigned long long)a0; - (void)dealloc; - (id)forwardingTargetForSelector:(SEL)a0; - (id)initWithCommandBuffer:(id)a0; - (BOOL)respondsToSelector:(SEL)a0; - (void)commitAndContinue; - (id)dispatchBufferWithOffset:(unsigned long long *)a0; - (void)prefetchHeapForWorkloadSize:(unsigned long long)a0; @end