Ardour
9.0-pre0-582-g084a23a80d
pan_controllable.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2011-2014 David Robillard <d@drobilla.net>
3
* Copyright (C) 2011-2016 Paul Davis <paul@linuxaudiosystems.com>
4
*
5
* This program is free software; you can redistribute it and/or modify
6
* it under the terms of the GNU General Public License as published by
7
* the Free Software Foundation; either version 2 of the License, or
8
* (at your option) any later version.
9
*
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License along
16
* with this program; if not, write to the Free Software Foundation, Inc.,
17
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18
*/
19
20
#pragma once
21
22
#include <memory>
23
#include <string>
24
25
#include "
evoral/Parameter.h
"
26
27
#include "
ardour/automation_control.h
"
28
#include "
ardour/automation_list.h
"
29
30
namespace
ARDOUR
{
31
32
class
Session;
33
class
Pannable;
34
35
class
LIBARDOUR_API
PanControllable
:
public
AutomationControl
36
{
37
public
:
38
PanControllable
(
Session
& s, std::string
name
,
Pannable
* o,
Evoral::Parameter
param,
Temporal::TimeDomainProvider
const
& tdp)
39
:
AutomationControl
(s,
40
param,
41
ParameterDescriptor
(param),
42
std::shared_ptr<
AutomationList
>(new
AutomationList
(param, tdp)),
43
name
)
44
, owner (o)
45
{}
46
47
std::string
get_user_string
()
const
;
48
49
private
:
50
Pannable
*
owner
;
51
void
actually_set_value
(
double
,
PBD::Controllable::GroupControlDisposition
group_override);
52
};
53
54
}
// namespace
55
Parameter.h
automation_control.h
automation_list.h
ARDOUR::AutomationControl
Definition:
automation_control.h:55
ARDOUR::AutomationList
Definition:
automation_list.h:72
ARDOUR::PanControllable
Definition:
pan_controllable.h:36
ARDOUR::PanControllable::get_user_string
std::string get_user_string() const
ARDOUR::PanControllable::PanControllable
PanControllable(Session &s, std::string name, Pannable *o, Evoral::Parameter param, Temporal::TimeDomainProvider const &tdp)
Definition:
pan_controllable.h:38
ARDOUR::PanControllable::actually_set_value
void actually_set_value(double, PBD::Controllable::GroupControlDisposition group_override)
ARDOUR::PanControllable::owner
Pannable * owner
Definition:
pan_controllable.h:50
ARDOUR::Pannable
Definition:
pannable.h:38
ARDOUR::Session
Definition:
session.h:211
Evoral::Parameter
Definition:
Parameter.h:43
PBD::Controllable::GroupControlDisposition
GroupControlDisposition
Definition:
controllable.h:90
Temporal::TimeDomainProvider
Definition:
domain_provider.h:28
name
GtkImageIconNameData name
Definition:
gtkimage.h:6
LIBARDOUR_API
#define LIBARDOUR_API
Definition:
libardour_visibility.h:38
ARDOUR
Definition:
analysis_window.h:44
ARDOUR::ParameterDescriptor
Definition:
parameter_descriptor.h:44
libs
ardour
ardour
pan_controllable.h
Generated on Wed Dec 25 2024 05:44:44 for Ardour by
1.9.1