Generated from ./inc/complib/cl_byteswap.h with ROBODoc v4.99.17 on Sun Mar 04 2007 18:17:52

[Modules] Component Library/Byte Swapping

[top][parent][index]

NAME

       Byte Swapping

DESCRIPTION

       The byte swapping functions and macros allow swapping bytes from network
       byte order to host byte order.

       All data transmitted between systems should be in network byte order.
       In order to utilize such data, it must be converted to host byte order
       before use.

SEE ALSO

       Functions:
               cl_ntoh16, cl_hton16, cl_ntoh32, cl_hton32, cl_ntoh64, cl_hton64,
               cl_ntoh

       Macros:
               CL_NTOH16, CL_HTON16, CL_NTOH32, CL_HTON32, CL_NTOH64, CL_HTON64

[Definitions] Component Library: Byte Swapping/CL_HTON16

[top][index]

NAME

       CL_HTON16

DESCRIPTION

       The CL_HTON16 macro converts a 16-bit value from host byte order to
       network byte order.  The CL_HTON16 macro will cause constant values to be
       swapped by the pre-processor.  For variables, CL_HTON16 is less efficient
       than the cl_hton16 function.

SYNOPSIS

*       CL_HTON16( val );

PARAMETERS

       val
               [in] 16-bit value to swap from host byte order to network byte order.

RESULT

       Value of val converted to network byte order.

NOTES

       This macro is analogous to CL_NTOH16.

SEE ALSO

       Byte Swapping, CL_NTOH16, CL_HTON32, CL_HTON64,
       cl_hton16, cl_hton32, cl_hton64, cl_ntoh

[Functions] Component Library: Byte Swapping/cl_hton16

[top][index]

NAME

       cl_hton16

DESCRIPTION

       The cl_hton16 function converts a 16-bit value from host byte order to
       network byte order.

SYNOPSIS

*       uint16_t
*       cl_hton16(
*               IN      const uint16_t  val );

PARAMETERS

       val
               [in] Value to swap from host byte order to network byte order .

RETURN VALUE

       Value of val converted to network byte order.

NOTES

       This function is analogous to cl_ntoh16.

SEE ALSO

       Byte Swapping, cl_ntoh16, cl_hton32, cl_hton64, cl_ntoh

[Definitions] Component Library: Byte Swapping/CL_HTON32

[top][index]

NAME

       CL_HTON32

DESCRIPTION

       The CL_HTON32 macro converts a 32-bit value from host byte order to
       network byte order.  The CL_HTON32 macro will cause constant values to be
       swapped by the pre-processor.  For variables, CL_HTON32 is less efficient
       than the cl_hton32 function.

SYNOPSIS

*       CL_HTON32( val );

PARAMETERS

       val
               [in] 32-bit value to swap from host byte order to network byte order.

RESULT

       Value of val converted to network byte order.

NOTES

       This macro is analogous to CL_NTOH32.

SEE ALSO

       Byte Swapping, CL_NTOH32, CL_HTON16, CL_HTON64,
       cl_hton16, cl_hton32, cl_hton64, cl_ntoh

[Functions] Component Library: Byte Swapping/cl_hton32

[top][index]

NAME

       cl_hton32

DESCRIPTION

       The cl_hton32 function converts a 32-bit value from host byte order to
       network byte order.

SYNOPSIS

*       uint32_t
*       cl_hton32(
*               IN      const uint32_t  val );

PARAMETERS

       val
               [in] Value to swap from host byte order to network byte order .

RETURN VALUE

       Value of val converted to network byte order.

NOTES

       This function is analogous to cl_ntoh32.

SEE ALSO

       Byte Swapping, cl_ntoh32, cl_hton16, cl_hton64, cl_ntoh

[Definitions] Component Library: Byte Swapping/CL_HTON64

[top][index]

NAME

       CL_HTON64

DESCRIPTION

       The CL_HTON64 macro converts a 64-bit value from host byte order to
       network byte order.  The CL_HTON64 macro will cause constant values to be
       swapped by the pre-processor.  For variables, CL_HTON64 is less efficient
       than the cl_hton64 function.

SYNOPSIS

*       CL_HTON64( val );

PARAMETERS

       val
               [in] 64-bit value to swap from host byte order to network byte order.

RESULT

       Value of val converted to network byte order.

NOTES

       This macro is analogous to CL_NTOH64.

SEE ALSO

       Byte Swapping, CL_NTOH64, CL_HTON16, CL_HTON32,
       cl_hton16, cl_hton32, cl_hton64, cl_ntoh

[Functions] Component Library: Byte Swapping/cl_hton64

[top][index]

NAME

       cl_hton64

DESCRIPTION

       The cl_hton64 function converts a 64-bit value from host byte order to
       network byte order.

SYNOPSIS

*       uint64_t
*       cl_hton64(
*               IN      const uint64_t  val );

PARAMETERS

       val
               [in] Value to swap from host byte order to network byte order .

RETURN VALUE

       Value of val converted to network byte order.

NOTES

       This function is analogous to cl_ntoh64.

SEE ALSO

       Byte Swapping, cl_ntoh64, cl_hton16, cl_hton32, cl_ntoh

[Functions] Component Library: Byte Swapping/cl_ntoh

[top][index]

NAME

       cl_ntoh

DESCRIPTION

       The cl_ntoh function converts a value from network byte order to
       host byte order.

SYNOPSIS

CL_INLINE void CL_API
cl_ntoh(
        OUT     char* const                     p_dest,
        IN      const char* const       p_src,
        IN      const uint8_t           size )
{
#if CPU_LE
        uint8_t i;
        char    temp;

        if( p_src == p_dest )
        {
                /* Swap in place if source and destination are the same. */
                for( i = 0; i < size / 2; i++ )
                {
                        temp = p_dest[i];
                        p_dest[i] = p_src[size - 1 - i];
                        p_dest[size - 1 - i] = temp;
                }
        }
        else
        {
                for( i = 0; i < size; i++ )
                        p_dest[i] = p_src[size - 1 - i];
        }
#else
        /*
         * If the source and destination are not the same, copy the source to
         * the destination.
         */
        if( p_src != p_dest )
                cl_memcpy( p_dest, p_src, size );
#endif
}

PARAMETERS

       p_dest
               [in] Pointer to a byte array to contain the converted value of p_src.

       p_src
               [in] Pointer to a byte array to be converted from network byte
               ordering.

       size
               [in] Number of bytes to swap.p_dest

RETURN VALUE

       This function does not return a value.

NOTES

       cl_ntoh can perform in place swapping if both p_src and p_dest point to
       the same buffer.

SEE ALSO

       Byte Swapping, cl_ntoh16, cl_ntoh32, cl_ntoh64

[Definitions] Component Library: Byte Swapping/CL_NTOH16

[top][index]

NAME

       CL_NTOH16

DESCRIPTION

       The CL_NTOH16 macro converts a 16-bit value from network byte order to
       host byte order.  The CL_NTOH16 macro will cause constant values to be
       swapped by the pre-processor.  For variables, CL_NTOH16 is less efficient
       than the cl_ntoh16 function.

SYNOPSIS

*       CL_NTOH16( val );

PARAMETERS

       val
               [in] 16-bit value to swap from network byte order to host byte order.

RESULT

       Value of val converted to host byte order.

NOTES

       This macro is analogous to CL_HTON16.

SEE ALSO

       Byte Swapping, CL_HTON16, CL_NTOH32, CL_NTOH64,
       cl_ntoh16, cl_ntoh32, cl_ntoh64, cl_ntoh

[Functions] Component Library: Byte Swapping/cl_ntoh16

[top][index]

NAME

       cl_ntoh16

DESCRIPTION

       The cl_ntoh16 function converts a 16-bit value from network byte order to
       host byte order.

SYNOPSIS

*       uint16_t
*       cl_ntoh16(
*               IN      const uint16_t  val );

PARAMETERS

       val
               [in] Value to swap from network byte order to host byte order.

RETURN VALUE

       Value of val converted to host byte order.

NOTES

       This function is analogous to cl_hton16.

SEE ALSO

       Byte Swapping, cl_hton16, cl_ntoh32, cl_ntoh64, cl_ntoh

[Functions] Component Library: Byte Swapping/cl_ntoh32

[top][index]

NAME

       cl_ntoh32

DESCRIPTION

       The cl_ntoh32 function converts a 32-bit value from network byte order to
       host byte order.

SYNOPSIS

*       uint32_t
*       cl_ntoh32(
*               IN      const uint32_t  val );

PARAMETERS

       val
               [in] Value to swap from network byte order to host byte order.

RETURN VALUE

       Value of val converted in host byte order.

NOTES

       This function is analogous to cl_hton32.

SEE ALSO

       Byte Swapping, cl_hton32, cl_ntoh16, cl_ntoh64, cl_ntoh

[Definitions] Component Library: Byte Swapping/CL_NTOH32

[top][index]

NAME

       CL_NTOH32

DESCRIPTION

       The CL_NTOH32 macro converts a 32-bit value from network byte order to
       host byte order.  The CL_NTOH32 macro will cause constant values to be
       swapped by the pre-processor.  For variables, CL_NTOH32 is less efficient
       than the cl_ntoh32 function.

SYNOPSIS

*       CL_NTOH32( val );

PARAMETERS

       val
               [in] 32-bit value to swap from network byte order to host byte order.

RESULT

       Value of val converted to host byte order.

NOTES

       This macro is analogous to CL_HTON32.

SEE ALSO

       Byte Swapping, CL_HTON32, CL_NTOH16, CL_NTOH64,
       cl_ntoh16, cl_ntoh32, cl_ntoh64, cl_ntoh

[Definitions] Component Library: Byte Swapping/CL_NTOH64

[top][index]

NAME

       CL_NTOH64

DESCRIPTION

       The CL_NTOH64 macro converts a 64-bit value from network byte order to
       host byte order.  The CL_NTOH64 macro will cause constant values to be
       swapped by the pre-processor.  For variables, CL_NTOH64 is less efficient
       than the cl_ntoh64 function.

SYNOPSIS

*       CL_NTOH64( val );

PARAMETERS

       val
               [in] 64-bit value to swap from network byte order to host byte order.

RESULT

       Value of val converted to host byte order.

NOTES

       This macro is analogous to CL_HTON64.

SEE ALSO

       Byte Swapping, CL_HTON64, CL_NTOH16, CL_NTOH32,
       cl_ntoh16, cl_ntoh32, cl_ntoh64, cl_ntoh

[Functions] Component Library: Byte Swapping/cl_ntoh64

[top][index]

NAME

       cl_ntoh64

DESCRIPTION

       The cl_ntoh64 function converts a 64-bit value from network byte order to
       host byte order.

SYNOPSIS

*       uint64_t
*       cl_ntoh64(
*               IN      const uint64_t  val );

PARAMETERS

       val
               [in] Value to swap from network byte order to host byte order.

RETURN VALUE

       Value of val converted in host byte order.

NOTES

       This function is analogous to cl_hton64.

SEE ALSO

       Byte Swapping, cl_hton64, cl_ntoh16, cl_ntoh32, cl_ntoh