openshot-audio
0.1.7
JuceLibraryCode
modules
juce_events
messages
juce_Message.h
Go to the documentation of this file.
1
/*
2
==============================================================================
3
4
This file is part of the JUCE library.
5
Copyright (c) 2015 - ROLI Ltd.
6
7
Permission is granted to use this software under the terms of either:
8
a) the GPL v2 (or any later version)
9
b) the Affero GPL v3
10
11
Details of these licenses can be found at: www.gnu.org/licenses
12
13
JUCE is distributed in the hope that it will be useful, but WITHOUT ANY
14
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
15
A PARTICULAR PURPOSE. See the GNU General Public License for more details.
16
17
------------------------------------------------------------------------------
18
19
To release a closed-source product which uses JUCE, commercial licenses are
20
available: visit www.juce.com for more information.
21
22
==============================================================================
23
*/
24
25
#ifndef JUCE_MESSAGE_H_INCLUDED
26
#define JUCE_MESSAGE_H_INCLUDED
27
28
class
MessageListener
;
29
30
31
//==============================================================================
43
class
JUCE_API
Message
:
public
MessageManager::MessageBase
44
{
45
public
:
46
//==============================================================================
48
Message
()
noexcept
;
49
~
Message
();
50
51
typedef
ReferenceCountedObjectPtr<Message>
Ptr
;
52
53
//==============================================================================
54
private
:
55
friend
class
MessageListener
;
56
WeakReference<MessageListener>
recipient;
57
void
messageCallback
()
override
;
58
59
// Avoid the leak-detector because for plugins, the host can unload our DLL with undelivered
60
// messages still in the system event queue. These aren't harmful, but can cause annoying assertions.
61
JUCE_DECLARE_NON_COPYABLE
(
Message
)
62
};
63
64
65
#endif // JUCE_MESSAGE_H_INCLUDED
MessageManager::MessageBase
Definition:
juce_MessageManager.h:173
JUCE_API
#define JUCE_API
Definition:
juce_StandardHeader.h:139
noexcept
#define noexcept
Definition:
juce_CompilerSupport.h:141
Message::Ptr
ReferenceCountedObjectPtr< Message > Ptr
Definition:
juce_Message.h:51
Message
Definition:
juce_Message.h:43
ReferenceCountedObjectPtr
Definition:
juce_ReferenceCountedObject.h:227
JUCE_DECLARE_NON_COPYABLE
#define JUCE_DECLARE_NON_COPYABLE(className)
Definition:
juce_PlatformDefs.h:191
MessageListener
Definition:
juce_MessageListener.h:35
MessageManager::MessageBase::messageCallback
virtual void messageCallback()=0
WeakReference< MessageListener >
Generated by
1.8.17