iLLD_TC27xC
1.0
Ifx_CircularBuffer.h
Go to the documentation of this file.
1
/**
2
* \file Ifx_CircularBuffer.h
3
* \brief Circular buffer functions.
4
*
5
* \version iLLD_0_1_0_10
6
* \copyright Copyright (c) 2013 Infineon Technologies AG. All rights reserved.
7
*
8
*
9
* IMPORTANT NOTICE
10
*
11
*
12
* Infineon Technologies AG (Infineon) is supplying this file for use
13
* exclusively with Infineon's microcontroller products. This file can be freely
14
* distributed within development tools that are supporting such microcontroller
15
* products.
16
*
17
* THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED
18
* OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
19
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
20
* INFINEON SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL,
21
* OR CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
22
*
23
* \defgroup IfxLld_lib_datahandling_circularbuffer Circular buffer
24
* This module implements circular buffer functions.
25
* \ingroup IfxLld_lib_datahandling
26
*
27
*/
28
29
#ifndef IFX_CIRCULARBUFFER_H
30
#define IFX_CIRCULARBUFFER_H 1
31
32
//---------------------------------------------------------------------------
33
#include "
Cpu/Std/IfxCpu_Intrinsics.h
"
34
//---------------------------------------------------------------------------
35
36
#ifndef IFX_CFG_CIRCULARBUFFER_C
37
#define IFX_CFG_CIRCULARBUFFER_C (1)
38
#endif
39
40
/** \addtogroup IfxLld_lib_datahandling_circularbuffer
41
* \{
42
*/
43
/** \brief Return the circular buffer 16 bit value, and post-increment the circular buffer pointer
44
*
45
* \param buffer Specifies circular buffer.
46
*
47
* \return Return the next circular buffer value.
48
*/
49
uint16
Ifx_CircularBuffer_get16
(
Ifx_CircularBuffer
*buffer);
50
51
/** \brief Return the circular buffer 32 bit value, and post-increment the circular buffer pointer
52
*
53
* \param buffer Specifies circular buffer.
54
*
55
* \return Return the next circular buffer value.
56
*/
57
uint32
Ifx_CircularBuffer_get32
(
Ifx_CircularBuffer
*buffer);
58
59
/** \brief Copy count bytes from the circular buffer to the data array
60
*
61
* \param buffer Specifies circular buffer.
62
* \param data Specifies destination pointer.
63
* \param count Specifies number of bytes to be copied. count MUST be >= 1.
64
*
65
* \return Returns the updated data pointer data = ((uint8*)data) + count
66
*/
67
void
*
Ifx_CircularBuffer_read8
(
Ifx_CircularBuffer
*buffer,
void
*data,
Ifx_SizeT
count);
68
69
/** \brief Copy count 32 bit words from the circular buffer to the data array
70
*
71
* \param buffer Specifies circular buffer.
72
* \param data Specifies destination pointer.
73
* \param count Specifies number of 32 bit words to be copied. count MUST be >= 1.
74
*
75
* \return Returns the updated data pointer data = ((uint32*)data) + count
76
*/
77
void
*
Ifx_CircularBuffer_read32
(
Ifx_CircularBuffer
*buffer,
void
*data,
Ifx_SizeT
count);
78
79
/** \brief Copy count bytes from the data array to the circular buffer
80
*
81
* \param buffer Specifies circular buffer.
82
* \param data Specifies source pointer.
83
* \param count Specifies number of bytes to be copied. count MUST be >= 1.
84
*
85
* \return Returns the updated data pointer data = ((uint8*)data) + count
86
*/
87
const
void
*
Ifx_CircularBuffer_write8
(
Ifx_CircularBuffer
*buffer,
const
void
*data,
Ifx_SizeT
count);
88
89
/** \brief Copy count 32 bit words from the data array to the circular buffer
90
*
91
* \param buffer Specifies circular buffer.
92
* \param data Specifies source pointer.
93
* \param count Specifies number of 32 bit words to be copied. count MUST be >= 1.
94
*
95
* \return Returns the updated data pointer data = ((uint32*)data) + count
96
*/
97
const
void
*
Ifx_CircularBuffer_write32
(
Ifx_CircularBuffer
*buffer,
const
void
*data,
Ifx_SizeT
count);
98
99
/** \} */
100
//---------------------------------------------------------------------------
101
#endif
home
mclld
Libraries
release
iLLD_0_1_0_10
src
ifx
TC27xC
_Lib
DataHandling
Ifx_CircularBuffer.h
Generated by
1.8.4