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
OpenJPEGImage Class Reference

#include <OpenJPEGImage.h>

Inheritance diagram for OpenJPEGImage:
IIPImage

Public Member Functions

 OpenJPEGImage ()
 Constructor.
 
 OpenJPEGImage (const std::string &path)
 Constructor. More...
 
 OpenJPEGImage (const OpenJPEGImage &image)
 Copy Constructor. More...
 
 OpenJPEGImage (const IIPImage &image)
 Copy Constructor. More...
 
 ~OpenJPEGImage ()
 Destructor.
 
void openImage ()
 Overloaded function for opening a TIFF image. More...
 
void loadImageInfo (int x, int y)
 Overloaded function for loading JP2 image information. More...
 
void closeImage ()
 Overloaded function for closing a JP2 image. More...
 
bool regionDecoding ()
 Return whether this image type directly handles region decoding. More...
 
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 res, int layers, int x, int y, unsigned int w, unsigned int h)
 Overloaded function for returning a region from image. 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 bool regionDecoding ()
 Return whether this image type directly handles region decoding. 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.
 
virtual void openImage ()
 Open the image: Overloaded by child class. More...
 
virtual void loadImageInfo (int x, int y)
 Load information about the image eg. number of channels, tile size etc. More...
 
virtual void closeImage ()
 Close the image: Overloaded by child class. More...
 
virtual RawTile getTile (int h, int v, unsigned int r, int l, unsigned int t)
 Return an individual tile for a given angle and resolution. More...
 
virtual RawTile getRegion (int ha, int va, unsigned int r, int layers, int x, int y, unsigned int w, unsigned int h)
 Return a region for a given angle and resolution. More...
 
IIPImageoperator= (IIPImage image)
 Assignment operator. More...
 

Additional Inherited Members

- 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.
 
- 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 JPEG 2000 Images: Inherits from IIPImage. Uses the OpenJPEG library.

Constructor & Destructor Documentation

◆ OpenJPEGImage() [1/3]

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

Constructor.

Parameters
pathimage path

References IIPImage::tile_width, and IIPImage::virtual_levels.

◆ OpenJPEGImage() [2/3]

OpenJPEGImage::OpenJPEGImage ( const OpenJPEGImage image)
inline

Copy Constructor.

Parameters
imageOpenJPEG object

◆ OpenJPEGImage() [3/3]

OpenJPEGImage::OpenJPEGImage ( const IIPImage image)
inline

Copy Constructor.

Parameters
imageIIPImage object

References IIPImage::tile_width, and IIPImage::virtual_levels.

Member Function Documentation

◆ closeImage()

void OpenJPEGImage::closeImage ( )
virtual

Overloaded function for closing a JP2 image.

Reimplemented from IIPImage.

Referenced by ~OpenJPEGImage().

◆ getRegion()

RawTile OpenJPEGImage::getRegion ( int  ha,
int  va,
unsigned int  res,
int  layers,
int  x,
int  y,
unsigned int  w,
unsigned int  h 
)
virtual

Overloaded function for returning a region from image.

Parameters
hahorizontal angle
vavertical angle
resresolution
layersnumber of quality layers to decode
xx coordinate
yy coordinate
wwidth of region
hheight of region
Returns
a RawTile object

Reimplemented from IIPImage.

◆ getTile()

RawTile OpenJPEGImage::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 OpenJPEGImage::loadImageInfo ( int  x,
int  y 
)
virtual

Overloaded function for loading JP2 image information.

Parameters
xhorizontal sequence angle
yvertical sequence angle

Reimplemented from IIPImage.

◆ openImage()

void OpenJPEGImage::openImage ( )
virtual

Overloaded function for opening a TIFF image.

Reimplemented from IIPImage.

◆ regionDecoding()

bool OpenJPEGImage::regionDecoding ( )
inlinevirtual

Return whether this image type directly handles region decoding.

Reimplemented from IIPImage.


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