PicoWAN SDK Documentation
Functions
utils.h File Reference

Various handy functions. More...

#include <stdint.h>

Go to the source code of this file.

Functions

uint16_t utils_read16_le (const uint8_t *buf)
 Reads data as little-endian half-word. More...
 
uint32_t utils_read32_le (const uint8_t *buf)
 Reads data as little-endian word. More...
 
uint32_t utils_read32_be (const uint8_t *buf)
 Reads data as big-endian word. More...
 
void utils_write16_le (uint8_t *buf, uint16_t v)
 Writes data as little-endian half-word. More...
 
void utils_write32_le (uint8_t *buf, uint32_t v)
 Writes data as little-endian word. More...
 
void utils_write32_be (uint8_t *buf, uint32_t v)
 Writes data as big-endian word. More...
 
void utils_memcpy_r (uint8_t *dst, const uint8_t *src, uint16_t size)
 Copies a memory area in reverse order. More...
 

Detailed Description

Various handy functions.

Copyright (c) 2018, Archos S.A. All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' AND AND EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ARCHOS S.A. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Function Documentation

void utils_memcpy_r ( uint8_t *  dst,
const uint8_t *  src,
uint16_t  size 
)

Copies a memory area in reverse order.

The function copies a memory area in reverse order (last byte of the source area copied to the first byte of the destination area).

Parameters
dstdestination pointer.
srcsource pointer.
sizesize of the memory area to copy.
uint16_t utils_read16_le ( const uint8_t *  buf)

Reads data as little-endian half-word.

Parameters
bufpointer to the data to read.
Return values
uint16_tread half-word.
uint32_t utils_read32_be ( const uint8_t *  buf)

Reads data as big-endian word.

Parameters
bufpointer to the data to read.
Return values
uint32_tread word.
uint32_t utils_read32_le ( const uint8_t *  buf)

Reads data as little-endian word.

Parameters
bufpointer to the data to read.
Return values
uint32_tread word.
void utils_write16_le ( uint8_t *  buf,
uint16_t  v 
)

Writes data as little-endian half-word.

Parameters
bufpointer to the memory area where the data will be written.
vhalf-word to write.
void utils_write32_be ( uint8_t *  buf,
uint32_t  v 
)

Writes data as big-endian word.

Parameters
bufpointer to the memory area where the data will be written.
vword to write.
void utils_write32_le ( uint8_t *  buf,
uint32_t  v 
)

Writes data as little-endian word.

Parameters
bufpointer to the memory area where the data will be written.
vword to write.