lmms
Cross-platform music production software
Toggle main menu visibility
Loading...
Searching...
No Matches
include
BufferManager.h
Go to the documentation of this file.
1
/*
2
* BufferManager.h - A buffer caching/memory management system
3
*
4
* Copyright (c) 2014 Vesa Kivimäki <contact/dot/diizy/at/nbl/dot/fi>
5
* Copyright (c) 2006-2014 Tobias Doerffel <tobydox/at/users.sourceforge.net>
6
*
7
* This file is part of LMMS - https://lmms.io
8
*
9
* This program is free software; you can redistribute it and/or
10
* modify it under the terms of the GNU General Public
11
* License as published by the Free Software Foundation; either
12
* version 2 of the License, or (at your option) any later version.
13
*
14
* This program is distributed in the hope that it will be useful,
15
* but WITHOUT ANY WARRANTY; without even the implied warranty of
16
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17
* General Public License for more details.
18
*
19
* You should have received a copy of the GNU General Public
20
* License along with this program (see COPYING); if not, write to the
21
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
22
* Boston, MA 02110-1301 USA.
23
*
24
*/
25
26
#ifndef LMMS_BUFFER_MANAGER_H
27
#define LMMS_BUFFER_MANAGER_H
28
29
#include "lmms_export.h"
30
#include "
LmmsTypes.h
"
31
32
namespace
lmms
33
{
34
35
class
SampleFrame
;
36
37
class
LMMS_EXPORT
BufferManager
38
{
39
public
:
40
static
void
init
(
f_cnt_t
fpp );
41
static
SampleFrame
*
acquire
();
42
static
void
release
(
SampleFrame
* buf );
43
44
private
:
45
static
f_cnt_t
s_framesPerPeriod
;
46
};
47
48
49
}
// namespace lmms
50
51
#endif
// LMMS_BUFFER_MANAGER_H
LmmsTypes.h
lmms::BufferManager
Definition
BufferManager.h:38
lmms::BufferManager::s_framesPerPeriod
static f_cnt_t s_framesPerPeriod
Definition
BufferManager.h:45
lmms::BufferManager::acquire
static SampleFrame * acquire()
Definition
BufferManager.cpp:43
lmms::BufferManager::init
static void init(f_cnt_t fpp)
Definition
BufferManager.cpp:37
lmms::BufferManager::release
static void release(SampleFrame *buf)
Definition
BufferManager.cpp:50
lmms::SampleFrame
Definition
SampleFrame.h:41
lmms
Definition
RemotePluginBase.cpp:34
lmms::f_cnt_t
std::uint64_t f_cnt_t
Definition
LmmsTypes.h:43
Generated on
for lmms by
1.18.0