LMMS
Loading...
Searching...
No Matches
AutomationTrack.h
Go to the documentation of this file.
1/*
2 * AutomationTrack.h - declaration of class AutomationTrack, which handles
3 * automation of objects without a track
4 *
5 * Copyright (c) 2008-2014 Tobias Doerffel <tobydox/at/users.sourceforge.net>
6 * Copyright (c) 2006-2008 Javier Serrano Polo <jasp00/at/users.sourceforge.net>
7 *
8 * This file is part of LMMS - https://lmms.io
9 *
10 * This program is free software; you can redistribute it and/or
11 * modify it under the terms of the GNU General Public
12 * License as published by the Free Software Foundation; either
13 * version 2 of the License, or (at your option) any later version.
14 *
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 * General Public License for more details.
19 *
20 * You should have received a copy of the GNU General Public
21 * License along with this program (see COPYING); if not, write to the
22 * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
23 * Boston, MA 02110-1301 USA.
24 *
25 */
26
27#ifndef LMMS_AUTOMATION_TRACK_H
28#define LMMS_AUTOMATION_TRACK_H
29
30#include "Track.h"
31
32namespace lmms
33{
34
35class AutomationTrack : public Track
36{
37 Q_OBJECT
38public:
39 AutomationTrack( TrackContainer* tc, bool _hidden = false );
40 ~AutomationTrack() override = default;
41
42 bool play( const TimePos & _start, const f_cnt_t _frames,
43 const f_cnt_t _frame_base, int _clip_num = -1 ) override;
44
45 QString nodeName() const override
46 {
47 return "automationtrack";
48 }
49
51 Clip* createClip(const TimePos & pos) override;
52
53 void saveTrackSpecificSettings(QDomDocument& doc, QDomElement& parent, bool presetMode) override;
54 void loadTrackSpecificSettings( const QDomElement & _this ) override;
55
56private:
57 friend class AutomationTrackView;
58
59} ;
60
61
62} // namespace lmms
63
64#endif // LMMS_AUTOMATION_TRACK_H
Clip * createClip(const TimePos &pos) override
Definition AutomationTrack.cpp:59
friend class AutomationTrackView
Definition AutomationTrack.h:57
gui::TrackView * createView(gui::TrackContainerView *) override
Definition AutomationTrack.cpp:51
bool play(const TimePos &_start, const f_cnt_t _frames, const f_cnt_t _frame_base, int _clip_num=-1) override
Definition AutomationTrack.cpp:42
QString nodeName() const override
Definition AutomationTrack.h:45
void loadTrackSpecificSettings(const QDomElement &_this) override
Definition AutomationTrack.cpp:76
AutomationTrack(TrackContainer *tc, bool _hidden=false)
Definition AutomationTrack.cpp:36
~AutomationTrack() override=default
void saveTrackSpecificSettings(QDomDocument &doc, QDomElement &parent, bool presetMode) override
Definition AutomationTrack.cpp:69
Definition Clip.h:50
Definition TimePos.h:68
Definition TrackContainer.h:49
Track(Type type, TrackContainer *tc)
Create a new (empty) track object.
Definition Track.cpp:59
Definition TrackContainerView.h:71
Definition TrackView.h:60
static uintptr_t parent
Definition pugl.h:1644
Definition AudioAlsa.cpp:35
std::uint64_t f_cnt_t
Definition LmmsTypes.h:43