![]() |
Adobe Photoshop SDK |
|
FormatRecord Struct ReferenceThis structure is passed to the plug-in module through the parameter block.
More...
|
Data Fields | |
int32 | serialNumber |
DEPRECATED - Formerly the host serial number. | |
TestAbortProc | abortProc |
A pointer to the TestAbortProc callback. | |
ProgressProc | progressProc |
A pointer the the ProgressProc callback. | |
int32 | maxData |
The maximum number of bytes Photoshop can free up for a plug-in to use. | |
int32 | minDataBytes |
The minimum bytes needed in the data fork space to write the file. | |
int32 | maxDataBytes |
The maximum bytes allocated in the data fork space to write the file. | |
int32 | minRsrcBytes |
The minimum bytes needed in resource fork space to write the file. | |
int32 | maxRsrcBytes |
The maximum bytes allocated in resource fork space to write the file. | |
intptr_t | dataFork |
The reference number for the data fork of the file to be read during the read sequence or written during the write sequence. | |
intptr_t | rsrcFork |
The reference number for the resource fork of the file to be read during the read sequence or written during the write sequence. | |
FSSpec * | fileSpec |
Full file specification. | |
int16 | imageMode |
This is nil under Mac 64, since FSSpecs are not supported. The mode of the image being imported (grayscale, RGB Color, and so on). | |
Point | imageSize |
DEPRECATED, use FormatRecord::imageSize32 . | |
int16 | depth |
The resolution of the image in bits per pixel per plane. | |
int16 | planes |
The number of channels in the image. | |
Fixed | imageHRes |
The horizontal resolution of the image in terms of pixels per inch. | |
Fixed | imageVRes |
The vertical resolution of the image in terms of pixels per inch. | |
LookUpTable | redLUT |
The image's red color table. | |
LookUpTable | greenLUT |
The image's green color table. | |
LookUpTable | blueLUT |
The image's blue color table. | |
void * | data |
The buffer where image data is or will be stored. | |
Rect | theRect |
DEPRECATED, use FormatRecord::theRect32 . | |
int16 | loPlane |
The first plane covered by the buffer specified in data. | |
int16 | hiPlane |
The first and last planes covered by the buffer specified in FormatRecord::data . | |
int16 | colBytes |
The offset in bytes between columns of data in the buffer. | |
int32 | rowBytes |
The offset in bytes between rows of data in the buffer. | |
int32 | planeBytes |
The offset in bytes between planes of data in the buffers. | |
PlaneMap | planeMap |
Maps plug-in plane (channel) numbers to host plane numbers. | |
Boolean | canTranspose |
Indicates whether the host supports transposing images during or after reading or before or during writing. | |
Boolean | needTranspose |
Indicates whether the plug-in needs the image transposed. | |
OSType | hostSig |
The signature of the host, provided by the host. | |
HostProc | hostProc |
A pointer to a host-defined callback procedure. | |
int16 | hostModes |
The image modes supported by the host. | |
Handle | revertInfo |
Information kept with the document for reverting or saving; where possible this handle should be used to avoid bringing up an options dialog. | |
NewPIHandleProc | hostNewHdl |
A pointer to the NewPIHandleProc callback. | |
DisposePIHandleProc | hostDisposeHdl |
A pointer to the DisposePIHandleProc callback. | |
Handle | imageRsrcData |
A handle to a block of data to be stored in the file as image resource data. | |
int32 | imageRsrcSize |
The size of the handle imageRsrcData . | |
PlugInMonitor | monitor |
Monitor setup information for the host. | |
void * | platformData |
A pointer to platform specific data. | |
BufferProcs * | bufferProcs |
A pointer to the Buffer suite if it is supported by the host, otherwise NULL. | |
ResourceProcs * | resourceProcs |
A pointer to the Pseudo-Resource suite if it is supported by the host, otherwise NULL. | |
ProcessEventProc | processEvent |
A pointer to the ProcessEventProc callback if it is supported by the host, otherwise NULL. | |
DisplayPixelsProc | displayPixels |
A pointer to the DisplayPixelsProc callback if it is supported by the host, otherwise NULL. | |
HandleProcs * | handleProcs |
A pointer to the Handle callback suite if it is supported by the host, otherwise NULL. | |
New in 3.0 | |
OSType | fileType |
file type for filtering | |
ColorServicesProc | colorServices |
A pointer to the ColorServices callback if it is supported by the host, otherwise NULL. | |
AdvanceStateProc | advanceState |
A pointer to the AdvanceState callback. | |
New in 3.0.4 | |
PropertyProcs * | propertyProcs |
Property callback suite. | |
ImageServicesProcs * | imageServicesProcs |
Image Services callback suite. | |
int16 | tileWidth |
The width of the tiles provided by the host. | |
int16 | tileHeight |
The height of the tiles provided by the host. | |
Point | tileOrigin |
The origin point of the tiling system. | |
New in 4.0 | |
PIDescriptorParameters * | descriptorParameters |
Descriptor callback suite. | |
Str255 * | errorString |
An error reporting string to return to Photoshop. | |
New in 5.0 | |
int32 | maxValue |
Used for read with 16-bit depth only. | |
SPBasicSuite * | sSPBasic |
PICA basic suite. | |
void * | plugInRef |
Plug-in reference used by PICA. | |
int32 | transparentIndex |
If IndexedColor, and < 256, this is the index of the transparent color (for GIF). | |
Handle | iCCprofileData |
Handle containing the ICC profile for the image; NULL if none. | |
int32 | iCCprofileSize |
Size of iCCprofileData . | |
int32 | canUseICCProfiles |
Indicates if the host uses ICC Profiles. | |
New in 5.5 | |
int32 | lutCount |
Number of entries in the indexed color table. | |
New in 6.0 | |
int32 | preferredColorModes |
A bitmask indicating which color modes are preferred by the host This will be zero if not set. | |
int32 | convertMode |
Indicates whether the host supports conversion after reading; 0 if it does not, -1 if it does. | |
VPoint | preferredSize |
The preferred size for the image; 0,0 if not set. | |
int32 | imageIndex |
The index of the image; 0 if not set. | |
int32 | transparencyPlane |
Index of the plane containing transparency information. | |
int32 | transparencyMatting |
Transparency matting information; 0: no matte, 1: black matte, 2: gray matte, 3: white matte When reading files, indicates how the transparency data should be interpreted with respect to color matting. | |
New in 7.0 | |
ChannelPortProcs * | channelPortProcs |
Suite for passing pixels through channel ports. | |
ReadImageDocumentDesc * | documentInfo |
The document info for the document being written. | |
Boolean | openForPreview |
Indicates whether the document is open for preview. | |
New in 8.0 | |
int32 | browserRotation |
Rotation or flip applied to the image. | |
int32 | HostSupports32BitCoordinates |
Indicates whether the host supports 32 bit plug-in API. | |
int32 | PluginUsing32BitCoordinates |
Indicates whether the plug-in is using the 32-bit fields; set to nonzero by the plug-in if it is. | |
VPoint | imageSize32 |
Size of image in 32 bit coordinates, replaces FormatRecord::imageSize . | |
VRect | theRect32 |
Rectangle being returned in 32 bit coordinates, replaces FormatRecord::theRect . | |
uint32 | requestedFileProperty |
Set to a valid format file property to request the value for that property. | |
uint32 | filePropertyValue |
The requested property value is returned in this field. | |
uint32 | fileCount |
Count of files for bulk settings selector. | |
Handle | xmp |
XMP handle for read and write, only valid when using formatSelectorXMPRead and formatSelectorXMPWrite. | |
int32 | supportsSkipFile |
Indicates whether the formatSkipFile error code is supported. | |
New in 9.0 | |
Boolean | extractQuickThumbnail |
When this flag is set, Read protocol should return an extracted thumbnail without reading the entire file. | |
Boolean | hostInSecondaryThread |
Indicates if the host calling this from a non-UI thread. | |
uint32 | bulkMask |
Tells the plug-in which features of the bulkFlags array are supported. | |
uint32 * | bulkFlags |
Pointer to an array of fileCount 32-bit flags, used for two way information transfer when using the bulk settings and bulk open APIs. | |
uint32 | presetCount |
Number of settings presets found. | |
Handle | presetNames |
Handle holding array of UTF-8 encoded preset name handles. | |
Handle | presetData |
Handle holding array of XMP preset data handles. | |
uint32 | settingsChecksum |
Checksum of raw conversion settings. | |
SPPlatformFileSpecificationW * | fileSpec2 |
Unicode/FSRef replacement for fileSpec. | |
New in 10.0 | |
uint32 | layerData |
On read: Set by plugin in Start to tell host how many layers are in the document. | |
uint16 * | layerName |
A utf16 encoded string that contains the name of the layer On read, this should be set by the plugin before leaving ReadLayerFinish On write, this will be set by the host before calling WriteLayerStart. | |
void * | renderRecord |
Data for Plugin Rendered Layers. | |
Handle * | bulkParams |
Pointer to an array of handles used to pass parameter blocks between the bulk settings and bulk open calls and the corresponding open calls. | |
Boolean | openAsSmartObject |
Set this to true and the new document will be placed as a smart object. | |
New in 11.0 | |
PIDescriptorParameters * | layerMetaData |
For per-layer meta data. | |
uint16 * | finalSpec |
A utf16 encoded string that contains the location of the final file. | |
Boolean | isTextLayer |
On read: Set by plug-in to indiate that this layer is a text layer, plug-in must also set textDescriptor On write: Set by host to indiate that this layer is a text layer, host must also set textDescriptor. | |
PIDescriptorHandle * | textDescriptor |
On read: Set by plug-in to describe the text, only valid if isTextLayer is true On write: Set by host to describe the text, only valid if isTextLayer is true. | |
Boolean | isGroupDivider |
On read: Set by plug-in to tell that this is a divider On write: Set by host to indicate that this is a group divider If true the type is either start or end, see isGroupStart. | |
Boolean | isGroupStart |
On read: Set by plug-in to tell that this is a group start layer (true) or end (false) On write: Set by host to indicate that this is a group start layer (true) or end (false) Only valid if isGroupDivider is true. | |
Boolean | isVisible |
On read: Set by plug-in to tell that this is a visible layer On write: Set by host to indicate that this is a visible layer. | |
Boolean | isLocked |
On read: Set by plug-in to tell that this is a locked layer On write: Set by host to indicate that this is a locked layer. | |
PIType | blendMode |
Layer blend mode, as 4 character keys. | |
unsigned8 | opacity |
Layer opacity; range from 0 to 255, where opaque = 255. | |
Reserved Space for Expansion | |
char | reserved [18] |
Reserved for future use. |
See Plug-in Entry Point for an explanation of how the host calls a plug-in.
DEPRECATED - Formerly the host serial number.
The host now reports zero for the serialNumber
. Plug-ins should use the Property Suite Callbacks through the propertyProcs field and specify propSerialString2
to get the serial string.
A pointer to the TestAbortProc
callback.
A pointer the the ProgressProc
callback.
int32 FormatRecord::maxData |
The maximum number of bytes Photoshop can free up for a plug-in to use.
The plug-in can reduce this value during in the handlers for the Format prepare selectors. The continue
handlers should process the image in pieces no larger than maxData
, less the size of any large tables or scratch areas it has allocated.
The minimum bytes needed in the data fork space to write the file.
The plug-in should set this during the estimate sequence of selector calls. See formatSelectorEstimateStart.
The maximum bytes allocated in the data fork space to write the file.
The plug-in should set this during the estimate sequence of selector calls. See formatSelectorEstimateStart.
The minimum bytes needed in resource fork space to write the file.
The plug-in should set this during the estimate sequence of selector calls.
The maximum bytes allocated in resource fork space to write the file.
The plug-in should set this during the estimate sequence of selector calls.
intptr_t FormatRecord::dataFork |
The reference number for the data fork of the file to be read during the read sequence or written during the write sequence.
During the options and estimate selector sequences, this field is undefined. In Windows, this is the file handle of the file returned by OpenFile()
.
intptr_t FormatRecord::rsrcFork |
The reference number for the resource fork of the file to be read during the read sequence or written during the write sequence.
During the options and estimate selector sequences, this field is undefined. In Windows, this field is undefined.
FSSpec* FormatRecord::fileSpec |
Full file specification.
This is an array when using the formatSelectorBulkSettings. See fileSpec2.
int16 FormatRecord::imageMode |
This is nil under Mac 64, since FSSpecs are not supported. The mode of the image being imported (grayscale, RGB Color, and so on).
use fileSpec2 instead, which is supported on all platforms The plug-in should set this field during the formatSelectorReadStart handler. Photoshop sets this field before it calls formatSelectorOptionsStart, formatSelectorEstimateStart, or formatSelectorWriteStart.
See Image Modes for possible values.
Point FormatRecord::imageSize |
DEPRECATED, use FormatRecord::imageSize32
.
The size of the image.
int16 FormatRecord::depth |
The resolution of the image in bits per pixel per plane.
The plug-in should set this field in the formatSelectorReadStart handler. Valid settings are 1, 8, 16, and 32.
int16 FormatRecord::planes |
The number of channels in the image.
For example, if an RGB image without alpha channels is being returned, this field should be set to 3. The plug-in should set this field in the formatSelectorReadStart handler. Photoshop sets this field before it calls formatSelectorOptionsStart, formatSelectorEstimateStart, or formatSelectorWriteStart.
Because of the implementation of the plane map, Format and Import modules should never try to work with more than 16 planes at a time. Doing so yields unpredictable results.
Fixed FormatRecord::imageHRes |
The horizontal resolution of the image in terms of pixels per inch.
This is a fixed point number (16 binary digits). Photoshop initializes this field to 72 pixels per inch. The plug-in should set this field in the formatSelectorReadStart handler. Photoshop sets this field before it calls formatSelectorOptionsStart, formatSelectorEstimateStart, or formatSelectorWriteStart.
Fixed FormatRecord::imageVRes |
The vertical resolution of the image in terms of pixels per inch.
This is a fixed point number (16 binary digits). Photoshop initializes this field to 72 pixels per inch. The plug-in should set this field in the formatSelectorReadStart handler. Photoshop sets this field before it calls formatSelectorOptionsStart, formatSelectorEstimateStart, or formatSelectorWriteStart.
imageVRes
field. Plug-ins should set both imageHRes
and imageVRes
anyway in case future versions of Photoshop support non-square pixels. The image's red color table.
If an indexed color mode image is being returned, the plug-in should set this field in the formatSelectorReadStart handler. If an indexed color document is being written, Photoshop sets these fields before it calls formatSelectorOptionsStart, formatSelectorEstimateStart, or formatSelectorWriteStart.
The image's green color table.
If an indexed color mode image is being returned, the plug-in should set this field in the formatSelectorReadStart handler. If an indexed color document is being written, Photoshop sets these fields before it calls formatSelectorOptionsStart, formatSelectorEstimateStart, or formatSelectorWriteStart.
The image's blue color table.
If an indexed color mode image is being returned, the plug-in should set this field in the formatSelectorReadStart handler. If an indexed color document is being written, Photoshop sets these fields before it calls formatSelectorOptionsStart, formatSelectorEstimateStart, or formatSelectorWriteStart.
void* FormatRecord::data |
The buffer where image data is or will be stored.
The plug-in should return a pointer to this buffer in the start and continue handlers. After the entire image has been processed, the continue selector handlers should set this field to NULL.
The plug-in is responsible for freeing any memory pointed to by this field.
DEPRECATED, use FormatRecord::theRect32
.
int16 FormatRecord::loPlane |
The first plane covered by the buffer specified in data.
The start and continue selector handlers should set this field. For example, if interleaved RGB data is being used, it should be set to 0.
int16 FormatRecord::hiPlane |
The first and last planes covered by the buffer specified in FormatRecord::data
.
The start and continue selector handlers should set this field. For example, if interleaved RGB data is being used, it should be set to 2.
int16 FormatRecord::colBytes |
The offset in bytes between columns of data in the buffer.
The start and continue selector handlers should set this field. This is usually 1 for non-interleaved data, or hiPlane-loPlane+1
for interleaved data.
int32 FormatRecord::rowBytes |
The offset in bytes between rows of data in the buffer.
The start and continue selector handlers should set this field.
int32 FormatRecord::planeBytes |
The offset in bytes between planes of data in the buffers.
The start and continue selector handlers should set this field. This field is ignored if loPlane=hiPlane
. It should be set to 1 for interleaved data.
Maps plug-in plane (channel) numbers to host plane numbers.
The host initializes it to a linear map: planeMap
[i]=i. The plug-in may change this mapping if it sees the data in a different order.
For example, Photoshop stores RGB images with an alpha channel in the order RGBA, whereas most frame buffers store the data in ARGB order. To work with the data in this order, the plug-in should set planeMap
[0]=3, planeMap
[1]=0, planeMap
[2]=1, and planeMap
[3]=2.
Boolean FormatRecord::canTranspose |
Indicates whether the host supports transposing images during or after reading or before or during writing.
When TRUE, the host supports transposing. Photoshop always sets this field to TRUE.
Boolean FormatRecord::needTranspose |
Indicates whether the plug-in needs the image transposed.
Initialized by the host to FALSE. If the plug-in wishes to transpose the image, and canTranspose=TRUE
, it should set this field to TRUE in the start selector handlers.
OSType FormatRecord::hostSig |
The signature of the host, provided by the host.
The signature for Photoshop is signature is 8BIM.
A pointer to a host-defined callback procedure.
May be NULL.
int16 FormatRecord::hostModes |
The image modes supported by the host.
If the corresponding bit is 1, (where LSB = bit 0), the mode is supported. This field can be used by plug-ins to disable reading unsupported file formats. See Image Modes for supported current modes.
Handle FormatRecord::revertInfo |
Information kept with the document for reverting or saving; where possible this handle should be used to avoid bringing up an options dialog.
Photoshop sets this field to NULL when a format for a file is first created. If this field is defined on a formatSelectorReadStart call, then treat the call as a revert and don’B query the user. If it is NULL on the formatSelectorReadStart
call, then query the user as appropriate and set up this field to store a handle containing the information necessary to read the file without querying the user for additional parameters (essential for reverting the file) and if possible to write the file without querying the user. The contents of this field are sticky to a document and are duplicated when we duplicate the image format information for a document. On all options selector calls, make sure revertInfo
contains enough information to revert the document.
Photoshop disposes of this field when it disposes of the document, hence, the plug-in must call on Photoshop to allocate the data as well using the FormatRecord::hostNewHdl
and FormatRecord::hostDisposeHdl
callbacks or the callbacks provided in the Handle Suite Callbacks.
A pointer to the NewPIHandleProc
callback.
A pointer to the DisposePIHandleProc
callback.
Handle FormatRecord::imageRsrcData |
A handle to a block of data to be stored in the file as image resource data.
Photoshop documents can have other properties associated with them besides pixel data. For example, documents typically contain page setup information and pen tool paths.
Photoshop supports this through a block of data known as the image resources for a file. Format plug-in modules can store and retrieve this information if the file format definition allows for a place to put such an arbitrary block of data (e.g., a TIFF tag or a PicComment).
Since this handle is allocated before the write sequence of selector calls begins, plug-ins must add any resources they want saved to the document during the options or estimate sequences. Since Photoshop does not always call the options sequence, the best time to add resources is during the estimate sequence. This field is checked after each call to formatSelectorRead and formatSelectorContinue. As soon as this field is not NULL, Photoshop parses the handle as a block of image resource data for the current document.
The size of the handle imageRsrcData
.
It is only relevant during the estimate sequence when it is provided instead of the actual resource data.
Monitor setup information for the host.
A pointer to platform specific data.
Not used under Mac OS. See PlatformData in PITypes.h.
A pointer to the Buffer suite if it is supported by the host, otherwise NULL.
A pointer to the Pseudo-Resource suite if it is supported by the host, otherwise NULL.
A pointer to the ProcessEventProc
callback if it is supported by the host, otherwise NULL.
A pointer to the DisplayPixelsProc
callback if it is supported by the host, otherwise NULL.
A pointer to the Handle callback suite if it is supported by the host, otherwise NULL.
OSType FormatRecord::fileType |
file type for filtering
A pointer to the ColorServices callback if it is supported by the host, otherwise NULL.
A pointer to the AdvanceState
callback.
Valid from continue selector handlers. The advanceState
callback allows you to drive the interaction through the inner formatSelectorOptionsContinue loop without actually returning from the plug-in. If it returns an error, then the plug-in generally should treat this as an error formatSelectorOptionsContinue and pass it on when it returns.
Property callback suite.
The plug-in needs to dispose of the handle returned for complex properties. The plug-in also maintains ownership of handles for set properties.
Image Services callback suite.
int16 FormatRecord::tileWidth |
The width of the tiles provided by the host.
This is the best unit to work with, if possible. Zero if not set.
int16 FormatRecord::tileHeight |
The height of the tiles provided by the host.
This is the best unit to work with, if possible. Zero if not set.
Point FormatRecord::tileOrigin |
The origin point of the tiling system.
Descriptor callback suite.
Str255* FormatRecord::errorString |
An error reporting string to return to Photoshop.
If the plug-in returns with result=errReportString then this string is displayed as: "Cannot complete operation because " + errorString
.
int32 FormatRecord::maxValue |
Used for read with 16-bit depth only.
SPBasicSuite* FormatRecord::sSPBasic |
PICA basic suite.
Provides the mechanism to access all PICA suites.
void* FormatRecord::plugInRef |
Plug-in reference used by PICA.
If IndexedColor, and < 256, this is the index of the transparent color (for GIF).
]
Handle FormatRecord::iCCprofileData |
Handle containing the ICC profile for the image; NULL if none.
For reads:
The handle must be allocated using the Photoshop handle suite. Photoshop uses the data after the Finish call and then frees the handle.
For writes:
Photoshop allocates the handle using Photoshop's handle suite The handle is unlocked while calling the plug-in The handle is valid from Start to Finish Photoshop frees the handle after Finish.
Size of iCCprofileData
.
Indicates if the host uses ICC Profiles.
Non-zero if the host can accept or export ICC profiles. If this is zero, don't set or dereference iCCprofileData
.
int32 FormatRecord::lutCount |
Number of entries in the indexed color table.
This should include the transparent index if any. Plug-ins should pad out the color table with black for backward compatibility.
A bitmask indicating which color modes are preferred by the host This will be zero if not set.
The plug-in is free to ignore the hint (though it is wise to obey the hostModes information). This is an int32 rather than an int16 to allow for future expansion.
Indicates whether the host supports conversion after reading; 0 if it does not, -1 if it does.
The plug-in can set this field to the index of a color mode and this is treated by the host as a request to automatically convert to that mode. Hosts can ignore this request but they will make the host+plug-in combination appear broken.
The preferred size for the image; 0,0 if not set.
This is a hint about how big an image the wants. This field uses 32-bit coordinates rather than 16-bit coordinates, to allow for future expansion.
int32 FormatRecord::imageIndex |
The index of the image; 0 if not set.
One indicates the first image, etc. Currently only used for PDF Image extractor.
Index of the plane containing transparency information.
When writing files:
Set to zero by hosts that do not support transparency or there is no transparency. Set to the index of the plane containing transparency information if the host does support transparency. Any alpha channels after this index are pushed down by one. The interpretation of zero is chosen for compatibility with old hosts, but it also means that the transparency plane is never the first plane.
When reading files:
This is set to zero by hosts that do not support transparency. This is set to -1 by hosts that support transparency. The plug-in should set it to the index of the plane containing transparency information if there is one.
Transparency matting information; 0: no matte, 1: black matte, 2: gray matte, 3: white matte When reading files, indicates how the transparency data should be interpreted with respect to color matting.
When writing, set by the plug-in to indicate whether the host should be premultiplied with a chosen color. The default value is no matting (unassociated).
Suite for passing pixels through channel ports.
The document info for the document being written.
Boolean FormatRecord::openForPreview |
Indicates whether the document is open for preview.
Set by the host, the plug-in should make the smallest previewable size if it can.
Rotation or flip applied to the image.
When reading files, this field lets the plug-in know what rotation and/or flip is applied to the image after opening. This lets the plug-in display any preview images correctly. Lowest two bits are number of 90 degree CW rotations. See Bit masks for the browserRotation field for other flags. This field is also used when requesting a value for the PIFmtPRotate property and when calling the formatSelectorLosslessRotate selector.
Indicates whether the host supports 32 bit plug-in API.
Indicates whether the plug-in is using the 32-bit fields; set to nonzero by the plug-in if it is.
Size of image in 32 bit coordinates, replaces FormatRecord::imageSize
.
The plug-in should should set this field in the formatSelectorReadStart handler to inform Photoshop of the width and height of the image in pixels. Photoshop sets this field before it calls formatSelectorOptionsStart, formatSelectorEstimateStart, or formatSelectorWriteStart.
Rectangle being returned in 32 bit coordinates, replaces FormatRecord::theRect
.
The area of the image covered by the buffer specified in FormatRecord::data
. The plug-in should set this field.
Set to a valid format file property to request the value for that property.
The requested property value is returned in this field.
uint32 FormatRecord::fileCount |
Count of files for bulk settings selector.
Handle FormatRecord::xmp |
XMP handle for read and write, only valid when using formatSelectorXMPRead and formatSelectorXMPWrite.
formatSelectorXMPWrite
Photoshop frees the handle.
Indicates whether the formatSkipFile
error code is supported.
This error code tells the host to skip this file when processing multiple files.
When this flag is set, Read protocol should return an extracted thumbnail without reading the entire file.
Indicates if the host calling this from a non-UI thread.
Set to TRUE, if so.
uint32 FormatRecord::bulkMask |
Tells the plug-in which features of the bulkFlags array are supported.
uint32* FormatRecord::bulkFlags |
Pointer to an array of fileCount 32-bit flags, used for two way information transfer when using the bulk settings and bulk open APIs.
uint32 FormatRecord::presetCount |
Number of settings presets found.
Handle FormatRecord::presetNames |
Handle holding array of UTF-8 encoded preset name handles.
Handle FormatRecord::presetData |
Handle holding array of XMP preset data handles.
Checksum of raw conversion settings.
SPPlatformFileSpecificationW* FormatRecord::fileSpec2 |
Unicode/FSRef replacement for fileSpec.
uint32 FormatRecord::layerData |
On read: Set by plugin in Start to tell host how many layers are in the document.
Set by the host prior to calling ReadLayerStart to tell the plugin which layer it is requesting data for.
On write: Set by host prior to calling Start to tell plugin how many layers are in the document. Set by the host prior to calling WriteLayerStart to tell the plugin which layer it is sending data for.
uint16* FormatRecord::layerName |
A utf16 encoded string that contains the name of the layer On read, this should be set by the plugin before leaving ReadLayerFinish On write, this will be set by the host before calling WriteLayerStart.
Data for Plugin Rendered Layers.
Handle* FormatRecord::bulkParams |
Pointer to an array of handles used to pass parameter blocks between the bulk settings and bulk open calls and the corresponding open calls.
Before calling the bulk settings or bulk open call, the host should initialize this field to a pointer to a list of "fileCount" NULL Handles.
During the bulk settings or bulk open call, if the plug-in decides to request that a file be opened it may allocate a handle to hold some parameters for that file, and set the bulkParams array entry to that handle.
When the host then opens the requested files using open calls, it should pass back the parameter block in this same file. (Since only open file is being opened at a time, this is just a pointer to a single handle during this phase).
The host is required to free all the parameter block handles.
Boolean FormatRecord::openAsSmartObject |
Set this to true and the new document will be placed as a smart object.
For per-layer meta data.
uint16* FormatRecord::finalSpec |
A utf16 encoded string that contains the location of the final file.
Use this for reference only. This will give you the parent folder and the name of the final file. Read and write via the fileSpec2 only and not this value.
Boolean FormatRecord::isTextLayer |
On read: Set by plug-in to indiate that this layer is a text layer, plug-in must also set textDescriptor On write: Set by host to indiate that this layer is a text layer, host must also set textDescriptor.
On read: Set by plug-in to describe the text, only valid if isTextLayer is true On write: Set by host to describe the text, only valid if isTextLayer is true.
Boolean FormatRecord::isGroupDivider |
On read: Set by plug-in to tell that this is a divider On write: Set by host to indicate that this is a group divider If true the type is either start or end, see isGroupStart.
Boolean FormatRecord::isGroupStart |
On read: Set by plug-in to tell that this is a group start layer (true) or end (false) On write: Set by host to indicate that this is a group start layer (true) or end (false) Only valid if isGroupDivider is true.
Boolean FormatRecord::isVisible |
On read: Set by plug-in to tell that this is a visible layer On write: Set by host to indicate that this is a visible layer.
Boolean FormatRecord::isLocked |
On read: Set by plug-in to tell that this is a locked layer On write: Set by host to indicate that this is a locked layer.
Layer blend mode, as 4 character keys.
unsigned8 FormatRecord::opacity |
Layer opacity; range from 0 to 255, where opaque = 255.
char FormatRecord::reserved[18] |
Reserved for future use.
Set to zero.