Mako 8.4.0 API
MakoCore SDK API Documentation
Loading...
Searching...
No Matches
IDOMCustomImage Class Referenceabstract

IDOMCustomImage represents a user-customizable image type that can be used to implement new image decompressors or to provide access to raw image data. Users provide implementations of a data storage type (to reference the data, store basic image parameters, and mediate access) and a frame type (to provide access to image data). More...

#include <edl/idomimageresource.h>

Inheritance diagram for IDOMCustomImage:
[legend]

Classes

class  Data
 Initialization data. More...
class  ICustomImageData
 Abstract class that references image data and provides image information. Must be implemented by users. All member functions must be reentrant; they may be called at unpredictable times across multiple threads. More...
class  ICustomImageFrame
 Abstract class for access to image data. Must be implemented by users. More...

Public Types

typedef std::shared_ptr< ICustomImageFrameICustomImageFramePtr
typedef std::shared_ptr< ICustomImageDataICustomImageDataPtr

Public Member Functions

virtual ICustomImageDataPtr getImageData () const =0
 Obtain a pointer to the custom image data.
IInputStreamPtr getStream () const override
 This image type does not have an underlying stream.
void setStream (const IInputStreamPtr &) override
 This image type does not have an underlying stream.
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.
virtual IImageFramePtr getImageFrame (IEDLClassFactory *factory)
 Fetch the image frame; convenience.
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.
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.
virtual eDOMImageType getImageType ()=0
 Retrieves the image type.
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).
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.
Public Member Functions inherited from IDOMResource
virtual uint64 getStreamLength () const =0
 Retrieves the stream length, if it is available.
virtual const EDLSysStringgetUri () const =0
 Retrieves the resource URI.
virtual void setUri (const EDLSysString &uri)=0
 Sets the resource URI.
Public Member Functions inherited from IEDLObject
virtual const CClassIDgetClassID () const =0
 Returns class ID of IEDLObject.
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.
virtual bool clone (IEDLObjectPtr &ptrObject, IEDLClassFactory *pFactory)
 Create a copy of EDLObject.
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.
virtual int32 getRefCount () const =0
 Retrieve the current reference count of the actual object pointed to.
Public Member Functions inherited from IDOMHashable
virtual ~IDOMHashable ()
 Virtual destructor.
virtual bool hash (uint64 &hash)=0
 Retrieve a hash for this object.
virtual uint64 hashE ()
 As hash(), but throws an exception if the operation fails.

Static Public Member Functions

static EDL_API IDOMCustomImagePtr create (IEDLClassFactory *pFactory, const ICustomImageDataPtr &imageData, eDOMImageType imageType=eDITUnknown)
 Simplified creator for a custom image.
static const CClassIDclassID ()
 Retrieves class id of IDOMCustomImage.

Additional Inherited Members

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

Detailed Description

IDOMCustomImage represents a user-customizable image type that can be used to implement new image decompressors or to provide access to raw image data. Users provide implementations of a data storage type (to reference the data, store basic image parameters, and mediate access) and a frame type (to provide access to image data).

Member Typedef Documentation

◆ ICustomImageDataPtr

◆ ICustomImageFramePtr

Member Function Documentation

◆ classID()

const CClassID & IDOMCustomImage::classID ( )
inlinestatic

Retrieves class id of IDOMCustomImage.

Returns
CClassID Class id of the element.

◆ create()

EDL_API IDOMCustomImagePtr IDOMCustomImage::create ( IEDLClassFactory * pFactory,
const ICustomImageDataPtr & imageData,
eDOMImageType imageType = eDITUnknown )
static

Simplified creator for a custom image.

Parameters
pFactoryThe EDL Class Factory.
imageDataThe custom image data.
imageTypeThe image type to advertise as. Most implementations will choose eDITUnknown, however setting the closest match may help output methods choose an appropriate compression method.
Returns
IDOMCustomImagePtr The custom image.

◆ getImageData()

virtual ICustomImageDataPtr IDOMCustomImage::getImageData ( ) const
pure virtual

Obtain a pointer to the custom image data.

Returns
ICustomImageDataPtr The custom image data. Never returns nullptr.

◆ getStream()

IInputStreamPtr IDOMCustomImage::getStream ( ) const
inlineoverridevirtual

This image type does not have an underlying stream.

Returns
IInputStreamPtr Always null.

Implements IDOMResource.

◆ setStream()

void IDOMCustomImage::setStream ( const IInputStreamPtr & )
inlineoverridevirtual

This image type does not have an underlying stream.

Implements IDOMResource.


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