Ardour
8.12
property_list.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2010-2015 Paul Davis <paul@linuxaudiosystems.com>
3
* Copyright (C) 2010 Carl Hetherington <carl@carlh.net>
4
* Copyright (C) 2015-2017 Robin Gareus <robin@gareus.org>
5
*
6
* This program is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation; either version 2 of the License, or
9
* (at your option) any later version.
10
*
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License along
17
* with this program; if not, write to the Free Software Foundation, Inc.,
18
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19
*/
20
21
#ifndef __pbd_property_list_h__
22
#define __pbd_property_list_h__
23
24
#include <map>
25
26
#include "
pbd/libpbd_visibility.h
"
27
#include "
pbd/property_basics.h
"
28
29
class
XMLNode
;
30
31
namespace
PBD
{
32
34
class
LIBPBD_API
PropertyList
:
public
std::map<PropertyID, PropertyBase*>
35
{
36
public
:
37
PropertyList
();
38
PropertyList
(
PropertyList
const
&);
39
40
virtual
~PropertyList
();
41
42
void
get_changes_as_xml
(
XMLNode
*);
43
void
invert
();
44
50
bool
add
(
PropertyBase
* prop);
51
59
template
<
typename
T,
typename
V>
bool
add
(
PropertyDescriptor<T>
pid,
const
V& v);
60
template
<
typename
T>
bool
remove (
PropertyDescriptor<T>
pid);
61
62
protected
:
63
bool
_property_owner
;
64
};
65
73
class
LIBPBD_API
OwnedPropertyList
:
public
PropertyList
74
{
75
public
:
76
OwnedPropertyList
();
77
85
bool
add
(
PropertyBase
& p);
86
};
87
88
}
89
90
#endif
/* __pbd_property_list_h__ */
PBD::OwnedPropertyList
Definition:
property_list.h:74
PBD::OwnedPropertyList::add
bool add(PropertyBase &p)
PBD::OwnedPropertyList::OwnedPropertyList
OwnedPropertyList()
PBD::PropertyBase
Definition:
property_basics.h:91
PBD::PropertyList
Definition:
property_list.h:35
PBD::PropertyList::add
bool add(PropertyBase *prop)
PBD::PropertyList::~PropertyList
virtual ~PropertyList()
PBD::PropertyList::get_changes_as_xml
void get_changes_as_xml(XMLNode *)
PBD::PropertyList::_property_owner
bool _property_owner
Definition:
property_list.h:63
PBD::PropertyList::PropertyList
PropertyList(PropertyList const &)
PBD::PropertyList::PropertyList
PropertyList()
PBD::PropertyList::invert
void invert()
XMLNode
Definition:
xml++.h:114
libpbd_visibility.h
LIBPBD_API
#define LIBPBD_API
Definition:
libpbd_visibility.h:51
Gtk::Stock::add
void add(const Gtk::StockItem &item)
PBD
Definition:
axis_view.h:42
property_basics.h
PBD::PropertyDescriptor
Definition:
property_basics.h:41
libs
pbd
pbd
property_list.h
Generated on Mon Mar 10 2025 20:26:28 for Ardour by
1.9.1