Mako 7.3.0 API
IDOMTIFFImage Class Referenceabstract

IDOMTIFFImage interface. More...

#include <idomimageresource.h>

Inheritance diagram for IDOMTIFFImage:

Classes

class  Data
 Initialization data. More...
 

Public Types

enum  eTIFFCompression { }
 Available TIFF compression schemes. More...
 
enum  eTIFFPrediction
 Available TIFF prediction schemes.
 

Public Member Functions

virtual uint16 getImageIndex () const =0
 Get the image index of this TIFF to use. More...
 
- Public Member Functions inherited from IDOMImage
virtual IImageDecoderPtr createImageDecoder (IEDLClassFactory *factory, const IDOMImagePropertiesPtr &imageProperties)=0
 Creates a properly initialized image decoder object that reads from an inputstream that is specific to that image format. More...
 
virtual IImageFramePtr getImageFrame (IEDLClassFactory *factory)
 Fetch the image frame; convenience. More...
 
virtual IImageEncoderPtr createImageEncoder (const ISessionPtr &session, const IOutputStreamPtr &imageDest, const IDOMImagePropertiesPtr &imageProperties)=0
 Creates a properly initialized image encoder object that writes to an outputstream that is specific to that image format. More...
 
virtual IDOMImagePropertiesPtr getImageProperties ()=0
 Returns an object that stores the properties for this image object. The properties can then be inspected (or more added) by clients that need to manipulate the image resource. More...
 
virtual eDOMImageType getImageType ()=0
 Retrieves the image type. More...
 
virtual bool getIsRendered ()=0
 Determine if the image is as a result of rendering. This is indicated if the image type is eDITRendered or if the image explicitly notes this is the case (such as for IDOMPDFImage). More...
 
virtual IDOMImagePtr getImageWithSubstitutedColorSpace (IEDLClassFactory *factory, const IDOMColorSpacePtr &colorSpace)
 Obtain an image that is the same as this image, but with the colorspace substituted for another. More...
 
- Public Member Functions inherited from IDOMResource
virtual IInputStreamPtr getStream () const =0
 Retrieves the resource stream. More...
 
virtual void setStream (const IInputStreamPtr &stream)=0
 Sets the resource stream for the node. More...
 
virtual uint64 getStreamLength () const =0
 Retrieves the stream length, if it is available. More...
 
virtual const EDLSysString & getUri () const =0
 Retrieves the resource URI. More...
 
virtual void setUri (const EDLSysString &uri)=0
 Sets the resource URI. More...
 
- Public Member Functions inherited from IEDLObject
virtual const CClassIDgetClassID () const =0
 Returns class ID of IEDLObject. More...
 
virtual bool init (CClassParams *pData)
 The init() method is called to perform any post-construction initialization of an IEDLObject that has been created by the EDL class factory, before it is actually returned by the factory. More...
 
virtual bool clone (IEDLObjectPtr &ptrObject, IEDLClassFactory *pFactory)
 Create a copy of EDLObject. More...
 
- Public Member Functions inherited from IRCObject
virtual void addRef () const =0
 Increases the reference count of the actual object pointed to. This would take place during an assignment or copying.
 
virtual bool decRef () const =0
 Decreases the reference count of the actual object pointed to. When the reference count falls to Zero, it deletes the actual object pointed to. More...
 
virtual int32 getRefCount () const =0
 Retrieve the current reference count of the actual object pointed to. More...
 
- Public Member Functions inherited from IDOMHashable
virtual ~IDOMHashable ()
 Virtual destructor.
 
virtual bool hash (uint64 &hash)=0
 Retrieve a hash for this object. More...
 
virtual uint64 hashE ()
 As hash(), but throws an exception if the operation fails. More...
 

Static Public Member Functions

static EDL_API IDOMTIFFImagePtr create (IEDLClassFactory *pFactory, const IInputStreamPtr &stream, uint16 imageIndex=0, bool allowMultiChannel=false)
 Create a TIFF Image resource with the given TIFF stream. More...
 
static EDL_API IDOMImagePtr createWriterAndImage (const ISessionPtr &session, IImageFrameWriterPtr &frame, const IDOMColorSpacePtr &colorSpace, uint32 width, uint32 height, uint8 bitsPerComponent=8, double xResolution=96.0, double yResolution=96.0, eTIFFCompression compresssionType=eTCAuto, eTIFFPrediction predictionType=eTPNone, eImageExtraChannelType extraChannel=eIECNone, bool bigTiff=false, const IInputStreamPtr &inStream=IInputStreamPtr(), const IOutputStreamPtr &outStream=IOutputStreamPtr())
 Create an IDOMTIFFImage and frame that can be used to populate same. More...
 
static EDL_API void encode (const ISessionPtr &pSession, const IDOMImagePtr &image, const IOutputStreamPtr &stream, eTIFFCompression scheme=eTCAuto, eTIFFPrediction predictionType=eTPNone, bool bigTiff=false)
 Encode an image as a TIFF stream, returning the stream. This routine may convert the image samples into a form that may be encoded as TIFF if required, such as by converting to a supported color space. More...
 
static EDL_API void encode (const ISessionPtr &pSession, const IImageFramePtr &frame, const IOutputStreamPtr &stream, eTIFFCompression scheme=eTCAuto, eTIFFPrediction predictionType=eTPNone, bool bigTiff=false)
 Encode the contents of an IImageFrame as a TIFF stream, returning the stream. This routine may convert the image samples into a form that may be encoded as TIFF if required, such as by converting to a supported color space. More...
 
static const CClassIDclassID ()
 Retrieves class id of IDOMTIFFImage. More...
 

Additional Inherited Members

- Protected Member Functions inherited from IRCObject
virtual ~IRCObject ()
 Virtual destructor.
 

Detailed Description

IDOMTIFFImage interface.

Member Enumeration Documentation

◆ eTIFFCompression

Available TIFF compression schemes.

Enumerator
eTCNone 

Choose an appropriate scheme for the incoming image.

Member Function Documentation

◆ classID()

static const CClassID& IDOMTIFFImage::classID ( )
inlinestatic

Retrieves class id of IDOMTIFFImage.

Returns
CClassID Class id of the element

◆ create()

static EDL_API IDOMTIFFImagePtr IDOMTIFFImage::create ( IEDLClassFactory pFactory,
const IInputStreamPtr &  stream,
uint16  imageIndex = 0,
bool  allowMultiChannel = false 
)
static

Create a TIFF Image resource with the given TIFF stream.

Parameters
pFactoryThe EDL Class factory to use.
streamThe stream containing the TIFF image.
imageIndexFor multi-image TIFF files, the index of the image to use, with 0 being the first image in the TIFF file.
allowMultiChannelIf true, the TIFF decoder will allow Separated (CMYK) tiff files containing extra color samples. If found, a DeviceN color space will be used. Note however that this DeviceN color space will not likely be useful out of the box, and some external knowledge of the color channels may be required. Please contact GlobalGraphics support if you have specialised needs.
Returns
IDOMTIFFImagePtr The new image.

◆ createWriterAndImage()

static EDL_API IDOMImagePtr IDOMTIFFImage::createWriterAndImage ( const ISessionPtr &  session,
IImageFrameWriterPtr &  frame,
const IDOMColorSpacePtr &  colorSpace,
uint32  width,
uint32  height,
uint8  bitsPerComponent = 8,
double  xResolution = 96.0,
double  yResolution = 96.0,
eTIFFCompression  compresssionType = eTCAuto,
eTIFFPrediction  predictionType = eTPNone,
eImageExtraChannelType  extraChannel = eIECNone,
bool  bigTiff = false,
const IInputStreamPtr &  inStream = IInputStreamPtr(),
const IOutputStreamPtr &  outStream = IOutputStreamPtr() 
)
static

Create an IDOMTIFFImage and frame that can be used to populate same.

Parameters
sessionThe session to use
frameOn exit, this is populated with a frame ready to receive image data via frame->writeScanLine(). Use frame->flushData() to complete the encoding process.
colorSpaceThe color space to use. Must be compatible with the TIFF format.
widthThe width of the image, in pixels.
heightThe height of the image, in pixels.
bitsPerComponentThe bits per component to use. Must be compatible with the TIFF format.
xResolutionThe x resolution, in pixels-per-inch.
yResolutionThe y resolution, in pixels-per-inch.
extraChannelThe type of extra channel, if provided. Must be either eIECAlpha or eIECNone for TIFF.
compresssionTypeThe type of compression to use.
predictionTypeThe type of prediction to use. Ignored if the predictor is not compatible with the compressor.
bigTiffWhether or not to use the bigTIFF extensions
inStreamOptional. The first in a pair of streams used to read and write the raw image data if an external stream is desired. If NULL, a temporary store stream will be created. If non NULL, outStream must also be provided.
outStreamOptional. The second in a pair of streams used to read and write the raw image data if an external stream is desired. If NULL, a temporary store stream will be created. If non NULL, inStream must also be provided.
Returns
IDOMImagePtr The resulting image. Not valid until the frame is flushed.

◆ encode() [1/2]

static EDL_API void IDOMTIFFImage::encode ( const ISessionPtr &  pSession,
const IDOMImagePtr &  image,
const IOutputStreamPtr &  stream,
eTIFFCompression  scheme = eTCAuto,
eTIFFPrediction  predictionType = eTPNone,
bool  bigTiff = false 
)
static

Encode an image as a TIFF stream, returning the stream. This routine may convert the image samples into a form that may be encoded as TIFF if required, such as by converting to a supported color space.

Parameters
pSessionThe relevant EDL session
imageThe image to be encoded
schemeThe TIFF compression scheme to be used.
predictionTypeThe type of prediction to use. Ignored if the predictor is not compatible with the compressor.
bigTiffIf true, use bigtff format, allowing for very large images. Not all TIFF-consuming software will support this format.
streamThe stream to use to store the image data. For best performance, this should be a random-access stream (IRAStream).

◆ encode() [2/2]

static EDL_API void IDOMTIFFImage::encode ( const ISessionPtr &  pSession,
const IImageFramePtr &  frame,
const IOutputStreamPtr &  stream,
eTIFFCompression  scheme = eTCAuto,
eTIFFPrediction  predictionType = eTPNone,
bool  bigTiff = false 
)
static

Encode the contents of an IImageFrame as a TIFF stream, returning the stream. This routine may convert the image samples into a form that may be encoded as TIFF if required, such as by converting to a supported color space.

Parameters
pSessionThe relevant EDL session
frameThe frame providing the source image data
schemeThe TIFF compression scheme to be used.
predictionTypeThe type of prediction to use. Ignored if the predictor is not compatible with the compressor.
bigTiffIf true, use bigtff format, allowing for very large images. Not all TIFF-consuming software will support this format.
streamThe stream to use to store the image data. For best performance, this should be a random-access stream (IRAStream).

◆ getImageIndex()

virtual uint16 IDOMTIFFImage::getImageIndex ( ) const
pure virtual

Get the image index of this TIFF to use.

TIFF files may contain multiple images; this member returns the index (beginning at 0) of the image that will be used from the TIFF file.

Returns
uint16 The image index

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