SDRAngel
4.11.5
Developer docs for <a href="https://github.com/f4exb/sdrangel">SDRangel<\a>, an Open Source Qt5 / OpenGL 3.0+ SDR and signal analyzer frontend to various hardware.
sdrbase
util
incrementalarray.h
Go to the documentation of this file.
1
// Copyright (C) 2016 Edouard Griffiths, F4EXB //
3
// //
4
// This program is free software; you can redistribute it and/or modify //
5
// it under the terms of the GNU General Public License as published by //
6
// the Free Software Foundation as version 3 of the License, or //
7
// (at your option) any later version. //
8
// //
9
// This program is distributed in the hope that it will be useful, //
10
// but WITHOUT ANY WARRANTY; without even the implied warranty of //
11
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //
12
// GNU General Public License V3 for more details. //
13
// //
14
// You should have received a copy of the GNU General Public License //
15
// along with this program. If not, see <http://www.gnu.org/licenses/>. //
17
18
#ifndef SDRBASE_UTIL_INCREMENTALARRAY_H_
19
#define SDRBASE_UTIL_INCREMENTALARRAY_H_
20
21
#include <stdint.h>
22
23
template
<
typename
T>
24
class
IncrementalArray
25
{
26
public
:
27
T *
m_array
;
28
29
IncrementalArray
();
30
~IncrementalArray
();
31
32
void
allocate
(
uint32_t
size);
33
34
private
:
35
uint32_t
m_size
;
36
};
37
38
template
<
typename
T>
39
IncrementalArray<T>::IncrementalArray
() :
40
m_array
(0),
41
m_size
(0)
42
{
43
}
44
45
template
<
typename
T>
46
IncrementalArray<T>::~IncrementalArray
()
47
{
48
if
(
m_array
) {
delete
[]
m_array
; }
49
}
50
51
template
<
typename
T>
52
void
IncrementalArray<T>::allocate
(
uint32_t
size)
53
{
54
if
(size <=
m_size
) {
return
; }
55
if
(
m_array
) {
delete
[]
m_array
; }
56
m_array
=
new
T[size];
57
m_size
= size;
58
}
59
60
#endif
/* SDRBASE_UTIL_INCREMENTALARRAY_H_ */
IncrementalArray
Definition:
incrementalarray.h:24
IncrementalArray::m_array
T * m_array
Definition:
incrementalarray.h:27
IncrementalArray::m_size
uint32_t m_size
Definition:
incrementalarray.h:35
uint32_t
unsigned int uint32_t
Definition:
rtptypes_win.h:46
IncrementalArray::IncrementalArray
IncrementalArray()
Definition:
incrementalarray.h:39
IncrementalArray::~IncrementalArray
~IncrementalArray()
Definition:
incrementalarray.h:46
IncrementalArray::allocate
void allocate(uint32_t size)
Definition:
incrementalarray.h:52
Generated on Fri Aug 2 2019 17:56:33 for SDRAngel by
1.8.13