MPSImageCopyToMatrix(3)
NAME
MPSImageCopyToMatrix
SYNOPSIS
#import <MPSImageCopy.h>
Inherits MPSKernel.
Instance Methods
(nonnull instancetype) - initWithDevice:dataLayout:
(nullable instancetype) - initWithCoder:device:
(void) - encodeToCommandBuffer:sourceImage:destinationMatrix:
Properties
MTLOrigin destinationMatrixOrigin
NSUInteger destinationMatrixBatchIndex
MPSDataLayout dataLayout
Additional Inherited Members
Detailed Description
MPSImageCopy.h MetalPerformanceShaders.framework
Copyright:
Copyright (c) 2017 Apple Inc. All rights reserved.
MetalPerformanceShaders histogram filters
The MPSImageCopyToMatrix copies image data to a MPSMatrix. The image
data is stored in a row of a matrix. The dataLayout specifies the order
in which the feature channels in the MPSImage get stored in the matrix.
If MPSImage stores a batch of images, the images are copied into
multiple rows, one row per image.
The number of elements in a row in the matrix must be >= image width *
image height * number of featureChannels in the image.
Method Documentation
- (void) encodeToCommandBuffer: (nonnull id< MTLCommandBuffer >)
commandBuffer(nonnull MPSImage *) sourceImage(nonnull MPSMatrix *)
destinationMatrix
Encode a kernel that copies a MPSImage to a MPSMatrix into a command
buffer using a MTLComputeCommandEncoder. The kernel copies feature
channels from sourceImage to the buffer associated with
destinationMatrix. The kernel will not begin to execute until after the
command buffer has been enqueued and committed.
NOTE: The destinationMatrix.dataType must match the feature channel
data type in sourceImage.
Parameters:
commandBuffer A valid MTLCommandBuffer.
sourceImage A valid MPSImage describing the image to copy from.
destinationMatrix A valid MPSMatrix or MPSTemporaryMatrix object
describing the matrix to copy to.
- (nullable instancetype) initWithCoder: (NSCoder *__nonnull)
aDecoder(nonnull id< MTLDevice >) device
NSSecureCoding compatability While the standard
NSSecureCoding/NSCoding method -initWithCoder: should work, since the
file can't know which device your data is allocated on, we have to
guess and may guess incorrectly. To avoid that problem, use
initWithCoder:device instead.
Parameters:
aDecoder The NSCoder subclass with your serialized MPSKernel
device The MTLDevice on which to make the MPSKernel
Returns:
A new MPSKernel object, or nil if failure.
Reimplemented from MPSKernel.
- (nonnull instancetype) initWithDevice: (nonnull id< MTLDevice >)
device(MPSDataLayout) dataLayout
Initialize a MPSMatrixCopy object on a device
Parameters:
device The device the kernel will run on
dataLayout The data layout
Returns:
A valid MPSMatrixCopy object or nil, if failure.
Property Documentation
- dataLayout [read], [nonatomic], [assign]
The data layout to use Returns the data layout. When copying from a
MPSImage to a MPSMatrix, this describes the order in which the image
values are stored in the buffer associated with the MPSMatrix. Default:
MPSDataLayoutFeatureChannelsxHeightxWidth
- destinationMatrixBatchIndex [read], [write], [nonatomic], [assign]
The index of the destination matrix in the batch. This property is
modifiable and defaults to 0 at initialization time.
- destinationMatrixOrigin [read], [write], [nonatomic], [assign]
The origin, relative to [0, 0] in the destination matrix, at which to
start writing results. This property is modifiable and defaults to [0,
0] at initialization time. If a different origin is desired then this
should be modified prior to encoding the kernel. The z value must be 0.
Author
Generated automatically by Doxygen for
MetalPerformanceShaders.framework from the source code.
Version MetalPerformanceShaders-Thu2Jul 13 2017 MPSImageCopyToMatrix(3)
Mac OS X 10.12.6 - Generated Mon Oct 30 16:14:35 CDT 2017