Ardour
9.0-pre0-582-g084a23a80d
progress.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2010 Carl Hetherington <carl@carlh.net>
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 along
15
* with this program; if not, write to the Free Software Foundation, Inc.,
16
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17
*/
18
19
#ifndef _libpbd_progress_h_
20
#define _libpbd_progress_h_
21
22
#include <list>
23
24
#include "
pbd/libpbd_visibility.h
"
25
26
namespace
PBD
{
27
29
class
LIBPBD_API
Progress
30
{
31
public
:
32
Progress
();
33
virtual
~Progress
() {}
34
void
set_progress
(
float
);
35
36
void
ascend
();
37
void
descend
(
float
);
38
39
bool
cancelled
()
const
;
40
41
protected
:
42
void
cancel
();
43
44
private
:
48
virtual
void
set_overall_progress
(
float
p) = 0;
49
50
struct
Level
{
51
Level
(
float
a) : allocation (a), normalised (0) {}
52
53
float
allocation
;
54
float
normalised
;
55
};
56
57
std::list<Level>
_stack
;
58
bool
_cancelled
;
59
};
60
61
}
62
63
#endif
PBD::Progress
Definition:
progress.h:30
PBD::Progress::~Progress
virtual ~Progress()
Definition:
progress.h:33
PBD::Progress::_stack
std::list< Level > _stack
Definition:
progress.h:57
PBD::Progress::cancel
void cancel()
PBD::Progress::Progress
Progress()
PBD::Progress::descend
void descend(float)
PBD::Progress::ascend
void ascend()
PBD::Progress::cancelled
bool cancelled() const
PBD::Progress::_cancelled
bool _cancelled
Definition:
progress.h:58
PBD::Progress::set_progress
void set_progress(float)
PBD::Progress::set_overall_progress
virtual void set_overall_progress(float p)=0
libpbd_visibility.h
LIBPBD_API
#define LIBPBD_API
Definition:
libpbd_visibility.h:50
PBD
Definition:
axis_view.h:42
PBD::Progress::Level
Definition:
progress.h:50
PBD::Progress::Level::normalised
float normalised
Definition:
progress.h:54
PBD::Progress::Level::Level
Level(float a)
Definition:
progress.h:51
PBD::Progress::Level::allocation
float allocation
Definition:
progress.h:53
libs
pbd
pbd
progress.h
Generated on Wed Dec 25 2024 05:44:45 for Ardour by
1.9.1