L_DoubleTo2bFixed2bNumber

#include "ltkrn.h"
#include "ltclr.h"

L_LTCLR_API L_UINT32 L_DoubleTo2bFixed2bNumber(dNumber)

L_DOUBLE dNumber;

/* double value */

Converts a fraction number into a 2-bytes fixed, 2-bytes fraction format.

Parameter

Description

dNumber

A double fractional value to convert.

Returns

A 4-byte (2-bytes fixed, 2-bytes fraction) value that represents the value passed to the function.

Comments

This function is used for ICC profiles purposes. The returned value must be cast into one of the following types: L_IccS15Fixed16Number or L_IccU16Fixed16Number.

Each of these types is 4-bytes, divided into 2-bytes that contain the fixed part of the number, and 2-bytes that contain the fractional part of the number.

The (2b) found in the function name means (2-bytes).

Required DLLs and Libraries

LTCLR

For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application.

Platforms

Windows 95 / 98 / Me, Windows 2000 / XP.

See Also

Functions:

L_InitICCProfile, L_FreeICCProfile, L_LoadICCProfile, L_FillICCProfileStructure, L_FillICCProfileFromICCFile, L_InitICCHeader, L_SetICCCMMType, L_SetICCDeviceClass, L_SetICCColorSpace, L_SetICCConnectionSpace, L_SetICCPrimaryPlatform, L_SetICCFlags, L_SetICCDevManufacturer, L_SetICCDevModel, L_SetICCDeviceAttributes, L_SetICCRenderingIntent, L_SetICCCreator, L_SetICCDateTime, L_SetICCProfileId, L_2bFixed2bNumberToDouble, L_U8Fixed8NumberToDouble, L_DoubleToU8Fixed8Number, L_SetICCTagData, L_GetICCTagData, L_CreateICCTagData, L_DeleteICCTag, L_GenerateICCFile, L_GenerateICCPointer, L_GetICCTagTypeSig, L_FreeICCTagType, L_ConvertParametricCurveTypeToBuffer, L_ConvertCurveTypeToBuffer, L_ConvertCLUTToBuffer, L_GetParametricCurveNumberOfParameters

Topics:

Using ICC Profile Functions

 

ICC Profile Functions: Tags

Example

This example takes a double fractional value, and converts it into 2-bytes fixed, 2-bytes fraction value.

 L_IccU16Fixed16Number DoubleTo2bFixed2bNumberExample(L_DOUBLE dNumber, L_INT* nRet)
{
   *nRet = SUCCESS;
   return ((L_IccU16Fixed16Number) L_DoubleTo2bFixed2bNumber(dNumber));
}