Open Inventor Release 2024.1.0
 
Loading...
Searching...
No Matches
SoJP2ImageRW Class Reference

VSG extension Class for encoding and decoding a JPEG2000 raster image More...

#include <Inventor/image/SoJP2ImageRW.h>

+ Inheritance diagram for SoJP2ImageRW:

Public Member Functions

virtual SoType getTypeId () const
 Returns the type identifier for this specific instance.
 
 SoJP2ImageRW ()
 Constructor.
 
virtual ~SoJP2ImageRW ()
 Destructor.
 
virtual SbBool open (SoRasterImageIO *rasterImageIO, OpenMode openMode)
 Opens the reader/writer in the specified open mode.
 
virtual SbBool write (SbRasterImage *rasterImage, unsigned int xPos=0, unsigned int yPos=0)
 Writes and encodes the given data in this specific format.
 
virtual SbBool read (SbRasterImage *rasterImage, SbBool infoOnly=FALSE)
 Read the current open image into rasterImage.
 
virtual SbBool readRegion (SbRasterImage *rasterImage, const SbBox2i32 &region)
 Read the specified region of current open image into rasterImage.
 
virtual SbBool isMultipleBufferInverted () const
 Returns the write direction when using multiple buffers.
 
virtual SoRasterImageRW::WriteCapability getWriteCapability () const
 Returns the write capability of the raster format.
 
virtual SoRasterImageRW::ReadCapability getReadCapability () const
 Returns the read capability of the raster format.
 
void setOutputQuality (float quality)
 Sets the output quality of the image, from 0.0 (lowest quality) to 1.0 (highest quality).
 
float getOutputQuality () const
 Returns the output quality.
 
- Public Member Functions inherited from SoRasterImageRW
virtual ~SoRasterImageRW ()
 Destructor.
 
virtual void close ()
 Closes the reader/writer.
 
virtual SbBool checkRead (SoRasterImageFile *imageFile)
 Checks if the specified file can be read.
 
virtual SbBool writeHeader (const SbVec2i32 &size)
 Writes and encodes the header for this specific format.
 
virtual SbBool writeFooter ()
 Writes and encodes the footer for this specific format.
 
virtual SbStringgetSuffixes (int &numSuffixes) const
 Returns the list of file suffixes supported.
 
virtual void enableMultipleWriting (SbBool state)
 Enable writing image with multiple calls to write method.
 
virtual SbBool isMultipleWritingEnabled () const
 Returns TRUE if multiple buffer writing is enabled.
 
virtual SoDEPRECATED SbBool writeHeader (SbVec2i32 &size)
 Writes and encodes the header for this specific format.
 
virtual SoDEPRECATED SbBool writeHeader (SbVec2s &size)
 Writes and encodes the header for this specific format.
 

Static Public Member Functions

static SoType getClassTypeId ()
 Returns the type identifier for this class.
 
- Static Public Member Functions inherited from SoRasterImageRW
static SoType getClassTypeId ()
 Returns the type identifier for this class.
 

Additional Inherited Members

- Public Types inherited from SoRasterImageRW
enum  WriteCapability {
  WRITE_SCANLINES ,
  WRITE_FULL_IMAGE ,
  WRITE_UNAVAILABLE
}
 Write Capability enumeration values. More...
 
enum  ReadCapability {
  READ_AVAILABLE ,
  READ_UNAVAILABLE
}
 Read Capability enumeration values. More...
 
enum  OpenMode {
  OPEN_READ ,
  OPEN_WRITE
}
 open Mode enumeration values. More...
 

Detailed Description

VSG extension Class for encoding and decoding a JPEG2000 raster image

This class is used for encoding and decoding a JPEG2000 raster image. This class also support reading of ECW and ECWP file format.

The writeCapability is WRITE_FULL_IMAGE and isMultipleBufferInverted is FALSE.

See SoRasterImageRW for more information and code examples.

SEE ALSO

SoRasterImageFile, SoRasterImageRW, SbRasterImage

Definition at line 53 of file SoJP2ImageRW.h.

Constructor & Destructor Documentation

◆ SoJP2ImageRW()

SoJP2ImageRW::SoJP2ImageRW ( )

Constructor.

◆ ~SoJP2ImageRW()

virtual SoJP2ImageRW::~SoJP2ImageRW ( )
virtual

Destructor.

Member Function Documentation

◆ getClassTypeId()

static SoType SoJP2ImageRW::getClassTypeId ( )
static

Returns the type identifier for this class.


◆ getOutputQuality()

float SoJP2ImageRW::getOutputQuality ( ) const

Returns the output quality.

◆ getReadCapability()

virtual SoRasterImageRW::ReadCapability SoJP2ImageRW::getReadCapability ( ) const
virtual

Returns the read capability of the raster format.

Reimplemented from SoRasterImageRW.

◆ getTypeId()

virtual SoType SoJP2ImageRW::getTypeId ( ) const
virtual

Returns the type identifier for this specific instance.

Implements SoRasterImageRW.

◆ getWriteCapability()

virtual SoRasterImageRW::WriteCapability SoJP2ImageRW::getWriteCapability ( ) const
virtual

Returns the write capability of the raster format.

Reimplemented from SoRasterImageRW.

◆ isMultipleBufferInverted()

virtual SbBool SoJP2ImageRW::isMultipleBufferInverted ( ) const
virtual

Returns the write direction when using multiple buffers.

Returns FALSE if buffers are written from top to bottom. Returns TRUE if buffers are written from bottom to top.

Reimplemented from SoRasterImageRW.

◆ open()

virtual SbBool SoJP2ImageRW::open ( SoRasterImageIO rasterImageIO,
OpenMode  openMode 
)
virtual

Opens the reader/writer in the specified open mode.

Returns true if successful.

Reimplemented from SoRasterImageRW.

◆ read()

virtual SbBool SoJP2ImageRW::read ( SbRasterImage rasterImage,
SbBool  infoOnly = FALSE 
)
virtual

Read the current open image into rasterImage.

Returns true if successful. Call the open() method before calling this method.

If infoOnly is TRUE, then the buffer will not be read; the parameter rasterImage will be set with raster size and raster number of components, the buffer will be NULL.

Warning
This function doesn't work with SoRasterImageIO containing only FILE*, but work fine with SoRasterImageIO with file name.

Implements SoRasterImageRW.

◆ readRegion()

virtual SbBool SoJP2ImageRW::readRegion ( SbRasterImage rasterImage,
const SbBox2i32 region 
)
virtual

Read the specified region of current open image into rasterImage.

Returns true if successful. Call the open() method before calling this method.

After calling this method successfully, the size of the SbRasterImage is the requested region size. The requested region may extend outside the source image. In this case, undefined pixels are set to zero. The region may be as small as a single pixel, e.g. (1,1,1,1), but xmin must be <= xmax and ymin <= ymax.

Warning
This function doesn't work with SoRasterImageIO containing only FILE*, but work fine with SoRasterImageIO with file name.

Reimplemented from SoRasterImageRW.

◆ setOutputQuality()

void SoJP2ImageRW::setOutputQuality ( float  quality)

Sets the output quality of the image, from 0.0 (lowest quality) to 1.0 (highest quality).

Default is 0.7

◆ write()

virtual SbBool SoJP2ImageRW::write ( SbRasterImage rasterImage,
unsigned int  xPos = 0,
unsigned int  yPos = 0 
)
virtual

Writes and encodes the given data in this specific format.

If you are using the multiple writing mode, then you can specify the offset (with xPos,yPos) you want to write to.

Implements SoRasterImageRW.


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