MHEG5  15.3.0
source/glue/src/glue_ulong.c File Reference
#include "glue_ulong.h"

Functions

U64BIT ULONG_Add (U64BIT variable, U64BIT value)
 Add a value to a unsigned 64 bit variable.
U64BIT ULONG_Add32 (U64BIT variable, U32BIT value)
 Add a 32-bit value to a unsigned 64 bit variable.
U64BIT ULONG_Sub (U64BIT variable, U64BIT value)
 Subtract a value from a unsigned 64 bit variable. It is the responsibility of the caller to make sure the value does not overflow.
U64BIT ULONG_Sub32 (U64BIT variable, U32BIT value)
 Subtract a 32-bit value from a unsigned 64 bit variable. It is the responsibility of the caller to make sure the value does not overflow.
U64BIT ULONG_Mul32 (U64BIT variable, U32BIT value)
 Multiply a unsigned 64 bit variable by a 32-bit value.
U64BIT ULONG_Div32 (U64BIT variable, U32BIT value)
 Divide a unsigned 64 bit variable by a 24-bit value. NOTE: This function will produce invalid values if the divisor requires more than 24 bits (larger than 16777215).
U64BIT ULONG_ShiftLeft (U64BIT variable, U32BIT value)
 Shift bits left on unsigned 64 bit variable by a 32-bit value.
U64BIT ULONG_ShiftRight (U64BIT variable, U32BIT value)
 Shift bits right on unsigned 64 bit variable by a 32-bit value.
U32BIT ULONG_Mod32 (U64BIT variable, U32BIT value)
 Find the remainer after dividing a unsigned 64 bit variable by a 24-bit value. NOTE: This function will produce invalid values if the divisor requires more than 24 bits (larger than 16777215).
S32BIT ULONG_Compare (U64BIT first, U64BIT second)
 Compare two variables, returning a value that indicates the result of the comparison.
S32BIT ULONG_Compare32 (U64BIT variable, U32BIT value)
 Compare a variable with a 32-bit value, returning a value that indicates the result of the comparison.
U64BIT ULONG_Atoi (char *str)
 Convert a string to a unsigned 64 bit. Only the numeric part of the string is converted (up to the first non-digit character). The string value should be less than 2**64-1.
void ULONG_Itoa (U64BIT variable, char *str)
 Convert a unsigned 64 bit to a string. The string should be able to hold at least 21 characters, as the largest unsigned 64 bit is 18446744073709551615 (2**64-1).

Detailed Description

Date:
20/12/2012
Author:
Adam Sturtridge

Function Documentation

U64BIT ULONG_Add ( U64BIT  variable,
U64BIT  value 
)

Add a value to a unsigned 64 bit variable.

Parameters:
variableUnsigned 64 bit
valueValue to add
Returns:
resulting value
U64BIT ULONG_Add32 ( U64BIT  variable,
U32BIT  value 
)

Add a 32-bit value to a unsigned 64 bit variable.

Parameters:
variableUnsigned 64 bit
valueValue to add (32 bit)
Returns:
resulting value
U64BIT ULONG_Atoi ( char *  str)

Convert a string to a unsigned 64 bit. Only the numeric part of the string is converted (up to the first non-digit character). The string value should be less than 2**64-1.

Convert a string to unsigned 64 bit. Only the numeric part of the string is converted (up to the first non-digit character). The string value should be less than 2**64-1.

Parameters:
strString value
Returns:
Unsigned 64 bit
S32BIT ULONG_Compare ( U64BIT  first,
U64BIT  second 
)

Compare two variables, returning a value that indicates the result of the comparison.

Parameters:
firstFirst unsigned 64 bit to compare
secondSecond unsigned 64 bit to compare
Returns:
0 if the variables are equal, negative if the first variable is smaller than the second variable, and positive if the first variable is larger than the secodd variable
S32BIT ULONG_Compare32 ( U64BIT  variable,
U32BIT  value 
)

Compare a variable with a 32-bit value, returning a value that indicates the result of the comparison.

Parameters:
variableUnsigned 64 bit to compare
value32-bit value to compare to
Returns:
0 if the variables are equal, negative if the first variable is smaller than the second variable, and positive if the first variable is larger than the second variable
U64BIT ULONG_Div32 ( U64BIT  variable,
U32BIT  value 
)

Divide a unsigned 64 bit variable by a 24-bit value. NOTE: This function will produce invalid values if the divisor requires more than 24 bits (larger than 16777215).

Parameters:
variableUnsigned 64 bit
valueValue to divide by (24 bit)
Returns:
Nothing
void ULONG_Itoa ( U64BIT  variable,
char *  str 
)

Convert a unsigned 64 bit to a string. The string should be able to hold at least 21 characters, as the largest unsigned 64 bit is 18446744073709551615 (2**64-1).

Convert unsigned 64 bit to a string. The string should be able to hold at least 21 characters, as the largest unsigned 64 bit is 18446744073709551615 (2**64-1).

Parameters:
variableUnsigned 64 bit
strBuffer for string value (at least 22 bytes)
Returns:
Nothing
U32BIT ULONG_Mod32 ( U64BIT  variable,
U32BIT  value 
)

Find the remainer after dividing a unsigned 64 bit variable by a 24-bit value. NOTE: This function will produce invalid values if the divisor requires more than 24 bits (larger than 16777215).

Parameters:
variableUnsigned 64 bit
valueValue to divide by (24 bit)
Returns:
The variable modulo the value
U64BIT ULONG_Mul32 ( U64BIT  variable,
U32BIT  value 
)

Multiply a unsigned 64 bit variable by a 32-bit value.

Parameters:
variableUnsigned 64 bit
valueValue to multiply by (32 bit)
Returns:
Nothing
U64BIT ULONG_ShiftLeft ( U64BIT  variable,
U32BIT  value 
)

Shift bits left on unsigned 64 bit variable by a 32-bit value.

Parameters:
variableUnsigned 64 bit
valueValue to shift by (32 bit)
Returns:
Nothing
U64BIT ULONG_ShiftRight ( U64BIT  variable,
U32BIT  value 
)

Shift bits right on unsigned 64 bit variable by a 32-bit value.

Parameters:
variableUnsigned 64 bit
valueValue to shift by (32 bit)
Returns:
Nothing
U64BIT ULONG_Sub ( U64BIT  variable,
U64BIT  value 
)

Subtract a value from a unsigned 64 bit variable. It is the responsibility of the caller to make sure the value does not overflow.

Parameters:
variableUnsigned 64 bit
valueValue to subtract
Returns:
Nothing
U64BIT ULONG_Sub32 ( U64BIT  variable,
U32BIT  value 
)

Subtract a 32-bit value from a unsigned 64 bit variable. It is the responsibility of the caller to make sure the value does not overflow.

Parameters:
variableUnsigned 64 bit
valueValue to subtract (32 bit)
Returns:
Nothing
 All Data Structures Files Functions Variables Typedefs Defines