iipsrv  1.1
iipsrv is an advanced high-performance feature-rich image server for web-based streamed viewing and zooming of ultra high-resolution images
KakaduImage Class Reference

Image class for Kakadu JPEG2000 Images: Inherits from IIPImage. Uses the Kakadu library. More...

#include <KakaduImage.h>

Inheritance diagram for KakaduImage:
IIPImage

Public Types

enum  KDU_READMODE { KDU_FAST, KDU_FUSSY, KDU_RESILIENT }
 Read-mode types. More...
 

Public Member Functions

 KakaduImage ()
 Constructor.
 
 KakaduImage (const std::string &path)
 Constructor. More...
 
 KakaduImage (const KakaduImage &image)
 Copy Constructor. More...
 
 KakaduImage (const IIPImage &image)
 Constructor from IIPImage object. More...
 
KakaduImageoperator= (KakaduImage image)
 Assignment Operator. More...
 
 ~KakaduImage ()
 Destructor.
 
void openImage ()
 Overloaded function for opening a TIFF image.
 
void loadImageInfo (int x, int y)
 Overloaded function for loading TIFF image information. More...
 
void closeImage ()
 Overloaded function for closing a JPEG2000 image.
 
bool regionDecoding ()
 Return whether this image type directly handles region decoding.
 
RawTile getTile (int x, int y, unsigned int r, int l, unsigned int t)
 Overloaded function for getting a particular tile. More...
 
RawTile getRegion (int ha, int va, unsigned int r, int l, int x, int y, unsigned int w, unsigned int h)
 Overloaded function for returning a region for a given angle and resolution. More...
 
- Public Member Functions inherited from IIPImage
 IIPImage ()
 Default Constructor.
 
 IIPImage (const std::string &s)
 Constructer taking the image path as parameter. More...
 
 IIPImage (const IIPImage &image)
 Copy Constructor taking reference to another IIPImage object. More...
 
virtual ~IIPImage ()
 Virtual Destructor.
 
void Initialise ()
 Test the image and initialise some parameters.
 
void swap (IIPImage &a, IIPImage &b)
 Swap function. More...
 
std::list< int > getVerticalViewsList ()
 Return a list of available vertical angles.
 
std::list< int > getHorizontalViewsList ()
 Return a list of horizontal angles.
 
const std::string & getImagePath ()
 Return the image path.
 
const std::string getFileName (int x, int y)
 Return the full file path for a particular horizontal and vertical angle. More...
 
ImageFormat getImageFormat ()
 Get the image format.
 
void updateTimestamp (const std::string &s)
 Get the image timestamp. More...
 
const std::string getTimestamp ()
 Get a HTTP RFC 1123 formatted timestamp.
 
bool set ()
 Check whether this object has been initialised.
 
void setFileSystemPrefix (const std::string &prefix)
 Set a file system prefix for added security.
 
void setFileNamePattern (const std::string &pattern)
 Set the file name pattern used in image sequences.
 
unsigned int getNumResolutions ()
 Return the number of available resolutions in the image.
 
unsigned int getNumBitsPerPixel ()
 Return the number of bits per pixel for this image.
 
unsigned int getNumChannels ()
 Return the number of channels for this image.
 
float getMinValue (int n=0)
 Return the minimum sample value for each channel. More...
 
float getMaxValue (int n=0)
 Return the minimum sample value for each channel. More...
 
SampleType getSampleType ()
 Return the sample format type.
 
unsigned int getImageWidth (int n=0)
 Return the image width in pixels for a given resolution. More...
 
unsigned int getImageHeight (int n=0)
 Return the image height in pixels for a given resolution. More...
 
unsigned int getTileHeight ()
 Return the base tile height in pixels for a given resolution.
 
unsigned int getTileWidth ()
 Return the base tile width in pixels.
 
ColourSpaces getColourSpace ()
 Return the colour space for this image.
 
const std::string & getMetadata (const std::string &index)
 Return image metadata. More...
 
virtual void Load (const std::string &module)
 Load the appropriate codec module for this image type. More...
 
virtual const std::string getDescription ()
 Return codec description: Overloaded by child class.
 
IIPImageoperator= (IIPImage image)
 Assignment operator. More...
 

Public Attributes

KDU_READMODE kdu_readmode
 Read-mode.
 
- Public Attributes inherited from IIPImage
std::vector< unsigned int > image_widths
 The image pixel dimensions.
 
std::vector< unsigned int > image_heights
 
unsigned int tile_width
 The base tile pixel dimensions.
 
unsigned int tile_height
 
ColourSpaces colourspace
 The colour space of the image.
 
unsigned int numResolutions
 The number of available resolutions in this image.
 
unsigned int bpc
 The bits per channel for this image.
 
unsigned int channels
 The number of channels for this image.
 
SampleType sampleType
 The sample format type (fixed or floating point)
 
std::vector< float > min
 The min and max sample value for each channel.
 
std::vector< float > max
 
unsigned int quality_layers
 Quality layers.
 
bool isSet
 Indicate whether we have opened and initialised some parameters for this image.
 
int currentX
 If we have an image sequence, the current X and Y position.
 
int currentY
 
std::vector< unsigned int > histogram
 Image histogram.
 
std::map< const std::string, std::string > metadata
 STL map to hold string metadata.
 
time_t timestamp
 Image modification timestamp.
 

Additional Inherited Members

- Protected Attributes inherited from IIPImage
std::vector< int > lut
 LUT.
 
unsigned int virtual_levels
 Number of resolution levels that don't physically exist in file.
 
ImageFormat format
 Return the image format e.g. tif.
 

Detailed Description

Image class for Kakadu JPEG2000 Images: Inherits from IIPImage. Uses the Kakadu library.

Member Enumeration Documentation

◆ KDU_READMODE

Read-mode types.

Enumerator
KDU_FAST 

Default fast mode.

KDU_FUSSY 

Fussy mode.

KDU_RESILIENT 

Reslient mode for damaged JP2 streams.

Constructor & Destructor Documentation

◆ KakaduImage() [1/3]

KakaduImage::KakaduImage ( const std::string &  path)
inline

Constructor.

Parameters
pathimage path

◆ KakaduImage() [2/3]

KakaduImage::KakaduImage ( const KakaduImage image)
inline

Copy Constructor.

Parameters
imageKakadu object

◆ KakaduImage() [3/3]

KakaduImage::KakaduImage ( const IIPImage image)
inline

Constructor from IIPImage object.

Parameters
imageIIPImage object

Member Function Documentation

◆ getRegion()

RawTile KakaduImage::getRegion ( int  ha,
int  va,
unsigned int  r,
int  l,
int  x,
int  y,
unsigned int  w,
unsigned int  h 
)
virtual

Overloaded function for returning a region for a given angle and resolution.

Return a RawTile object: Overloaded by child class.

Parameters
hahorizontal angle
vavertical angle
rresolution
lnumber of quality layers to decode
xx coordinate
yy coordinate
wwidth of region
hheight of region
Returns
RawTile image

Reimplemented from IIPImage.

◆ getTile()

RawTile KakaduImage::getTile ( int  x,
int  y,
unsigned int  r,
int  l,
unsigned int  t 
)
virtual

Overloaded function for getting a particular tile.

Parameters
xhorizontal sequence angle
yvertical sequence angle
rresolution
lnumber of quality layers to decode
ttile number

Reimplemented from IIPImage.

◆ loadImageInfo()

void KakaduImage::loadImageInfo ( int  x,
int  y 
)
virtual

Overloaded function for loading TIFF image information.

Parameters
xhorizontal sequence angle
yvertical sequence angle

Reimplemented from IIPImage.

◆ operator=()

KakaduImage& KakaduImage::operator= ( KakaduImage  image)
inline

Assignment Operator.

Parameters
imageobject

References IIPImage::operator=().


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