ardour
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
libs
ardour
ardour
latent.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 1999-2009 Paul Davis
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; either version 2 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 for more details.
13
14
You should have received a copy of the GNU General Public License
15
along with this program; if not, write to the Free Software
16
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
17
18
*/
19
20
#ifndef __ardour_latent_h__
21
#define __ardour_latent_h__
22
23
#include "
ardour/libardour_visibility.h
"
24
#include "
ardour/types.h
"
25
26
namespace
ARDOUR
{
27
28
class
LIBARDOUR_API
Latent
{
29
public
:
30
Latent
() : _user_latency (0) {}
31
virtual
~Latent
() {}
32
33
virtual
framecnt_t
signal_latency()
const
= 0;
34
framecnt_t
user_latency
()
const
{
return
_user_latency; }
35
36
framecnt_t
effective_latency
()
const
{
37
if
(_user_latency) {
38
return
_user_latency;
39
}
else
{
40
return
signal_latency ();
41
}
42
}
43
44
virtual
void
set_user_latency
(
framecnt_t
val) { _user_latency = val; }
45
46
protected
:
47
framecnt_t
_user_latency
;
48
};
49
50
}
51
52
#endif
/* __ardour_latent_h__*/
types.h
ARDOUR::Latent
Definition:
latent.h:28
ARDOUR::Latent::~Latent
virtual ~Latent()
Definition:
latent.h:31
ARDOUR::framecnt_t
int64_t framecnt_t
Definition:
types.h:76
ARDOUR
Definition:
amp.h:29
ARDOUR::Latent::effective_latency
framecnt_t effective_latency() const
Definition:
latent.h:36
ARDOUR::Latent::_user_latency
framecnt_t _user_latency
Definition:
latent.h:47
ARDOUR::Latent::Latent
Latent()
Definition:
latent.h:30
libardour_visibility.h
ARDOUR::Latent::set_user_latency
virtual void set_user_latency(framecnt_t val)
Definition:
latent.h:44
LIBARDOUR_API
#define LIBARDOUR_API
Definition:
libardour_visibility.h:40
ARDOUR::Latent::user_latency
framecnt_t user_latency() const
Definition:
latent.h:34
Generated on Sun May 24 2015 12:15:05 for ardour by
1.8.8