mlib_ImageDataTypeConvert man page on SunOS

Man page or keyword search:  
man Server   20652 pages
apropos Keyword Search (all sections)
Output format
SunOS logo
[printable version]

mlib_ImageDataTypeConvert(mediaLib Library Funmlib_ImageDataTypeConvert(3MLIB)

NAME
       mlib_ImageDataTypeConvert - data type conversion

SYNOPSIS
       cc [ flag... ] file... -lmlib [ library... ]
       #include <mlib.h>

       mlib_status mlib_ImageDataTypeConvert(mlib_image *dst, const mlib_image *src);

DESCRIPTION
       The  mlib_ImageDataTypeConvert()	 function  converts between data types
       MLIB_BIT, MLIB_BYTE, MLIB_SHORT, MLIB_USHORT, MLIB_INT, MLIB_FLOAT, and
       MLIB_DOUBLE.

       The  input and output data images must have the same width, height, and
       number of channels. Conversion to a smaller  pixel  format  clamps  the
       source value to the dynamic range of the destination pixel.

       See  the following table for available variations of the data type con‐
       version function.

       Source Type   Dest. Type				   Action
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_BYTE     MLIB_BIT	   (x > 0) ? 1 : 0
       MLIB_SHORT    MLIB_BIT	   (x > 0) ? 1 : 0
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_USHORT   MLIB_BIT	   (x > 0) ? 1 : 0
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_INT	     MLIB_BIT	   (x > 0) ? 1 : 0
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_FLOAT    MLIB_BIT	   (x > 0) ? 1 : 0
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_DOUBLE   MLIB_BIT	   (x > 0) ? 1 : 0
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_BIT	     MLIB_BYTE	   (x == 1) ? 1 : 0
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_SHORT    MLIB_BYTE	   (mlib_u8)clamp(x, 0, 255)
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_USHORT   MLIB_BYTE	   (mlib_u8)clamp(x, 0, 255)
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_INT	     MLIB_BYTE	   (mlib_u8)clamp(x, 0, 255)
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_FLOAT    MLIB_BYTE	   (mlib_u8)clamp(x, 0, 255)
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_DOUBLE   MLIB_BYTE	   (mlib_u8)clamp(x, 0, 255)
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_BIT	     MLIB_SHORT	   (x == 1) ? 1 : 0
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_BYTE     MLIB_SHORT	   (mlib_s16)x
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_USHORT   MLIB_SHORT	   (mlib_s16)clamp(x, -32768, 32767)
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_INT	     MLIB_SHORT	   (mlib_s16)clamp(x, -32768, 32767)
       ────────────────────────────────────────────────────────────────────────────────────

       MLIB_FLOAT    MLIB_SHORT	   (mlib_s16)clamp(x, -32768, 32767)
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_DOUBLE   MLIB_SHORT	   (mlib_s16)clamp(x, -32768, 32767)
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_BIT	     MLIB_USHORT   (x == 1) ? 1 : 0
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_BYTE     MLIB_USHORT   (mlib_u16)x
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_SHORT    MLIB_USHORT   (mlib_u16)clamp(x, 0, 65535)
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_INT	     MLIB_USHORT   (mlib_u16)clamp(x, 0, 65535)
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_FLOAT    MLIB_USHORT   (mlib_u16)clamp(x, 0, 65535)
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_DOUBLE   MLIB_USHORT   (mlib_u16)clamp(x, 0, 65535)
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_BIT	     MLIB_INT	   (x == 1) ? 1 : 0
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_BYTE     MLIB_INT	   (mlib_s32)x
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_SHORT    MLIB_INT	   (mlib_s32)x
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_USHORT   MLIB_INT	   (mlib_s32)x
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_FLOAT    MLIB_INT	   (mlib_s32)clamp(x, -2147483647-1, 2147483647)
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_DOUBLE   MLIB_INT	   (mlib_s32)clamp(x, -2147483647-1, 2147483647)
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_BIT	     MLIB_FLOAT	   (x == 1) ? 1.0 : 0.0
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_BYTE     MLIB_FLOAT	   (mlib_f32)x
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_SHORT    MLIB_FLOAT	   (mlib_f32)x
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_USHORT   MLIB_FLOAT	   (mlib_f32)x
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_INT	     MLIB_FLOAT	   (mlib_f32)x
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_DOUBLE   MLIB_FLOAT	   (mlib_f32)x
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_BIT	     MLIB_DOUBLE   (x == 1) ? 1.0 : 0.0
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_BYTE     MLIB_DOUBLE   (mlib_d64)x
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_SHORT    MLIB_DOUBLE   (mlib_d64)x
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_USHORT   MLIB_DOUBLE   (mlib_d64)x
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_INT	     MLIB_DOUBLE   (mlib_d64)x
       ────────────────────────────────────────────────────────────────────────────────────
       MLIB_FLOAT    MLIB_DOUBLE   (mlib_d64)x

       The actions are defined in C-style pseudo-code. All type	 casts	follow
       the  rules  of  standard	 C. clamp() can be defined as a macro: #define
       clamp(x, low, high) (((x) < (low)) ? (low) : (((x) > (high)) ? (high) :
       (x)))

PARAMETERS
       The function takes the following arguments:

       dst    Pointer to destination image.

       src    Pointer to source image.

RETURN VALUES
       The  function  returns MLIB_SUCCESS if successful. Otherwise it returns
       MLIB_FAILURE.

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       ┌─────────────────────────────┬─────────────────────────────┐
       │      ATTRIBUTE TYPE	     │	    ATTRIBUTE VALUE	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Interface Stability	     │Committed			   │
       ├─────────────────────────────┼─────────────────────────────┤
       │MT-Level		     │MT-Safe			   │
       └─────────────────────────────┴─────────────────────────────┘

SEE ALSO
       mlib_ImageReformat(3MLIB), attributes(5)

SunOS 5.10			  2 Mar 2007  mlib_ImageDataTypeConvert(3MLIB)
[top]

List of man pages available for SunOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net