ExportRecord Struct Reference

This structure is passed to the Export plug-in module main() through the pluginParamBlock. More...

#include <PIExport.h>

Data Fields

int32 serialNumber
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.
int16 imageMode
 The mode of the image being exported (grayscale, RGB Color, etc.).
Point imageSize
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 red color table, user only when an indexed color or duotone mode image is being processed.
LookUpTable greenLUT
 The green color table, user only when an indexed color or duotone mode image is being processed.
LookUpTable blueLUT
 The blue color table, user only when an indexed color or duotone mode image is being processed.
Rect theRect
int16 loPlane
 The exportSelectorStart and exportSelectorContinue handlers should set these fields to the first plane to process next.
int16 hiPlane
 The exportSelectorStart and exportSelectorContinue handlers should set these fields to the last plane to process next.
void * data
 A pointer to the requested image data.
int32 rowBytes
 The offset between rows for the requested image data.
Str255 filename
 The name of the file the image was read from.
int16 vRefNum
Boolean dirty
 If the plug-in is used to save an image into a file, it should set this field to TRUE to prompt the user to save any unsaved changes when the image is eventually closed.
Rect selectBBox
OSType hostSig
 The signature of the host, provided by the plug-in host.
HostProc hostProc
 If not NULL, a pointer to a host-defined callback procedure.
Handle duotoneInfo
 When exporting a duotone mode image, the host allocates a handle and fills it with the duotone information.
int16 thePlane
 The currently selected channel;
or -1 if a composite color channel;
or -2 if some other combination of channels.
PlugInMonitor monitor
 The monitor setup information for the host.
void * platformData
 A pointer to platform specific data.
BufferProcsbufferProcs
 Buffer callback suite.
ResourceProcsresourceProcs
 Pseudo-Resource callback suite.
ProcessEventProc processEvent
 ProcessEvent callback.
DisplayPixelsProc displayPixels
 DisplayPixels callback.
HandleProcshandleProcs
 Handle callback suite.
ColorServicesProc colorServices
 ColorServices callback suite.
GetPropertyProc getPropertyObsolete
AdvanceStateProc advanceState
 Allows the plug-in to drive the interaction through the inner ExportSelectorContinue loop without actually returning from the plug-in.
int16 layerPlanes
 For documents with transparency, contains the number of planes of data possibly governed by a transparency mask for the current target layer.
int16 transparencyMask
 For documents with transparency, contains 1 or 0 indicating whether the data is governed by a transparency mask.
int16 layerMasks
 For documents with transparency, contains the number of layer masks (currently 1 or 0) for which 255 = fully opaque.
int16 invertedLayerMasks
 For documents with transparency, contains the number of layer masks (currently 1 or 0) for which 255 = fully transparent.
int16 nonLayerPlanes
 For documents with transparency, contains the number of planes of non-layer data, e.g., flat data or alpha channels.
ImageServicesProcsimageServicesProcs
 Image Services callback suite.
int16 tileWidth
 The width of the tiles.
int16 tileHeight
 The height of the tiles.
Point tileOrigin
 The origin point of the tiling system.
PropertyProcspropertyProcs
 Property callback suite.
PIDescriptorParametersdescriptorParameters
 Descriptor suite.
Str255 * errorString
 An error reporting string the plug-in can return to the host.
ChannelPortProcschannelPortProcs
 Channel Ports callback suite.
ReadImageDocumentDescdocumentInfo
 The Channel Ports document information for the document being filtered.
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.
int32 iCCprofileSize
 Size of profile.
int32 canUseICCProfiles
 Non-zero if the host can accept or export ICC profiles .
int32 lutCount
 Number of entries in the indexed color table.
int32 HostSupports32BitCoordinates
 Set by the host if the host supports 32 bit plug-in API.
int32 PluginUsing32BitCoordinates
 Set to nonzero by the plug-in if it is using the 32 bit fields.
VPoint imageSize32
 Size of image in 32 bit coordinates.
VRect theRect32
 Rectangle being returned in 32 bit coordinates.
VRect selectBBox32
 The bounding box of the current selection returned in 32 bit coordinates.
Reserved Space for Expansion
char reserved [106]
 Reserved for future use.

Detailed Description

This structure is passed to the Export plug-in module main() through the pluginParamBlock.

See Plug-in Entry Point for an explanation of how the host calls a plug-in.


Field Documentation

Deprecated:
  • Formerly the host serial number.

The host now reports zero for the serialNumber. Plug-ins should use the Property Suite Callbacks through the ExportRecord::propertyProcs callback and specify the property 'propSerialString2' to get the serial string.

A pointer to the TestAbortProc callback.

A pointer the the ProgressProc callback.

The maximum number of bytes Photoshop can free up for a plug-in to use.

You can reduce this value during in your exportSelectorPrepare handler. The exportSelectorContinue handler should process the image in pieces no larger than maxData, less the size of any large tables or scratch areas it has allocated.

The mode of the image being exported (grayscale, RGB Color, etc.).

See Image Modes for values. Your exportSelectorStart handler should return an exportBadMode error if it is unable to process this mode of image.

Deprecated:
Use ExportRecord::imageSize32.

The width and height of the image in pixels. See ExportRecord::imageSize32 for large document support.

The resolution of the image in bits per pixel per plane.

The only possible settings are 1, 8, 16, and 32.

The number of channels in the image.

For example, if an RGB image without alpha channels is being processed, this field is set to 3.

The horizontal resolution of the image in terms of pixels per inch.

These are fixed point 16-binary digit numbers.

The vertical resolution of the image in terms of pixels per inch.

These are fixed point 16-binary digit numbers.

The red color table, user only when an indexed color or duotone mode image is being processed.

The green color table, user only when an indexed color or duotone mode image is being processed.

The blue color table, user only when an indexed color or duotone mode image is being processed.

Deprecated:
Use ExportRecord::theRect32.

The exportSelectorStart and exportSelectorContinue handlers should set this field to request a piece of the image for processing. It should be set to an empty rectangle when complete. See ExportRecord::theRect32 for large document support.

The exportSelectorStart and exportSelectorContinue handlers should set these fields to the first plane to process next.

The exportSelectorStart and exportSelectorContinue handlers should set these fields to the last plane to process next.

A pointer to the requested image data.

If more than one plane has been requested (see loPlane and hiPlane), the data is interleaved.

The offset between rows for the requested image data.

The name of the file the image was read from.

File-exporting modules should use this field as the default name for saving.

If the plug-in is used to save an image into a file, it should set this field to TRUE to prompt the user to save any unsaved changes when the image is eventually closed.

If the plug-in module outputs to a printer or other hardware device, it should set this to FALSE. This is initialized as TRUE. It does not reflect whether other unsaved changes have been made.

Deprecated:
Use ExportRecord::selectBBox32.

The bounding box of the current selection. If there is no current selection, this is an empty rectangle. See ExportRecord::selectBBox32 below for large document support.

The signature of the host, provided by the plug-in host.

The Photoshop signature is 8BIM.

If not NULL, a pointer to a host-defined callback procedure.

When exporting a duotone mode image, the host allocates a handle and fills it with the duotone information.

The format of the information is the same as that required by Import modules, and should be treated as a black box by plug-ins.

The currently selected channel;
or -1 if a composite color channel;
or -2 if some other combination of channels.

The monitor setup information for the host.

A pointer to platform specific data.

Not used under the Mac OS. See PlatformData in PITypes.h.

Buffer callback suite.

Pseudo-Resource callback suite.

Handle callback suite.

ColorServices callback suite.

Deprecated:
Property suite.

This direct callback has been replaced by ExportRecord::propertyProcs, but is maintained here for backwards compatibility.

Allows the plug-in to drive the interaction through the inner ExportSelectorContinue loop without actually returning from the plug-in.

The advanceState callback can be called from either exportSelectorStart or exportSelectorContinue.

If it returns an error, then the plug-in generally should treat this as a continue error and pass it on when it returns.

For documents with transparency, contains the number of planes of data possibly governed by a transparency mask for the current target layer.

For documents with transparency, contains 1 or 0 indicating whether the data is governed by a transparency mask.

For documents with transparency, contains the number of layer masks (currently 1 or 0) for which 255 = fully opaque.

In Photoshop 3.0.4+, layer masks are not visible to Export modules (i.e. the value is 0) since they are layer properties rather than document properties.

For documents with transparency, contains the number of layer masks (currently 1 or 0) for which 255 = fully transparent.

In Photoshop 3.0.4+, layer masks are not visible to Export modules (i.e. the value is 0) since they are layer properties rather than document properties.

For documents with transparency, contains the number of planes of non-layer data, e.g., flat data or alpha channels.

The planes are arranged in that order. Thus, an RGB image with an alpha channel and a layer mask on the current target layer would appear as: red, green, blue, transparency, layer mask, alpha channel.

Image Services callback suite.

The width of the tiles.

The host sets the width and height of the tiles. This is the best size for the plug-in to work with, if possible. If zero, assume the host has not set the value.

The height of the tiles.

The host sets the width and height of the tiles. This is the best size for the plug-in to work with, if possible. If zero, assume the host has not set the value.

The origin point of the tiling system.

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.

An error reporting string the plug-in can return to the host.

If the plug-in returns with result=errReportString then the string stored here is be displayed as: "Cannot complete operation because " + errorString

Channel Ports callback suite.

The Channel Ports document information for the document being filtered.

SPBasicSuite* ExportRecord::sSPBasic

PICA basic suite.

The method by which all PICA suites are accessed.

Plug-in reference used by PICA.

If IndexedColor, and < 256, this is the index of the transparent color (for GIF).

]

Handle containing the ICC profile for the image.

(NULL if none.) Photoshop allocates the handle using the Photoshop handle suite. The handle is unlocked while calling the plug-in. The handle is valid from ExportSelectorStart to ExportSelectorFinish Photoshop frees the handle after ExportSelectorFinish.

Size of profile.

Non-zero if the host can accept or export ICC profiles .

If this is zero, the plug-in should not set or dereference iCCprofileData.

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.

Set by the host if the host supports 32 bit plug-in API.

Set to nonzero by the plug-in if it is using the 32 bit fields.

Size of image in 32 bit coordinates.

Replaces ExportRecord::imageSize

Rectangle being returned in 32 bit coordinates.

Replaces ExportRecord::theRect

The bounding box of the current selection returned in 32 bit coordinates.

If there is no current selection, this is an empty rectangle. Replaces ExportRecord::selectBBox.

Reserved for future use.

Set to zero


The documentation for this struct was generated from the following file: