Pencil2D Animation
Download
Community
News
Docs
Contribute
Overview
Articles
Code
Class List
Class Index
Class Hierarchy
Class Members
File List
Loading...
Searching...
No Matches
core_lib
src
managers
soundmanager.h
1
/*
2
3
Pencil2D - Traditional Animation Software
4
Copyright (C) 2005-2007 Patrick Corrieri & Pascal Naidon
5
Copyright (C) 2012-2020 Matthew Chiawen Chang
6
7
This program is free software; you can redistribute it and/or
8
modify it under the terms of the GNU General Public License
9
as published by the Free Software Foundation; version 2 of the License.
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
*/
17
18
#ifndef SOUNDMANAGER_H
19
#define SOUNDMANAGER_H
20
21
#include <cstdint>
22
#include "basemanager.h"
23
24
class
Layer
;
25
class
SoundClip
;
26
class
SoundPlayer
;
27
28
29
class
SoundManager
:
public
BaseManager
30
{
31
Q_OBJECT
32
public
:
33
34
explicit
SoundManager
(
Editor
* editor);
35
~SoundManager
()
override
;
36
37
bool
init()
override
;
38
Status
load(
Object
*)
override
;
39
Status
save(
Object
*)
override
;
40
41
Status
loadSound(
SoundClip
* soundClip,
QString
strSoundFile);
42
Status
processSound(
SoundClip
* soundClip);
43
44
int
soundClipCount()
const
;
45
46
signals:
47
void
soundClipDurationChanged();
48
49
private
:
50
void
onDurationChanged(
SoundPlayer
* player, int64_t duration);
51
52
Status
createMediaPlayer(
SoundClip
*);
53
};
54
55
#endif
// SOUNDMANAGER_H
BaseManager
Definition:
basemanager.h:29
Editor
Definition:
editor.h:70
Layer
Definition:
layer.h:33
Object
Definition:
object.h:42
SoundClip
Definition:
soundclip.h:27
SoundManager
Definition:
soundmanager.h:30
SoundPlayer
Definition:
soundplayer.h:30
Status
Definition:
pencilerror.h:40
QObject::Q_OBJECT
Q_OBJECTQ_OBJECT
QString