LMMS
Loading...
Searching...
No Matches
iupdatehandler.h
Go to the documentation of this file.
1//------------------------------------------------------------------------
2// Project : Steinberg Module Architecture SDK
3//
4// Category : Basic Host Service Interfaces
5// Filename : pluginterfaces/base/iupdatehandler.h
6// Created by : Steinberg, 01/2004
7// Description : Update handling
8//
9//-----------------------------------------------------------------------------
10// This file is part of a Steinberg SDK. It is subject to the license terms
11// in the LICENSE file found in the top-level directory of this distribution
12// and at www.steinberg.net/sdklicenses.
13// No part of the SDK, including this file, may be copied, modified, propagated,
14// or distributed except according to the terms contained in the LICENSE file.
15//-----------------------------------------------------------------------------
16
17#pragma once
18
20
21namespace Steinberg {
22
23class IDependent;
24
25//------------------------------------------------------------------------
41{
42public:
43//------------------------------------------------------------------------
49 virtual tresult PLUGIN_API addDependent (FUnknown* object, IDependent* dependent) = 0;
50
52 virtual tresult PLUGIN_API removeDependent (FUnknown* object, IDependent* dependent) = 0;
53
58 virtual tresult PLUGIN_API triggerUpdates (FUnknown* object, int32 message) = 0;
59
61 virtual tresult PLUGIN_API deferUpdates (FUnknown* object, int32 message) = 0;
62 static const FUID iid;
63};
64
65DECLARE_CLASS_IID (IUpdateHandler, 0xF5246D56, 0x86544d60, 0xB026AFB5, 0x7B697B37)
66
67//------------------------------------------------------------------------
75class IDependent: public FUnknown
76{
77public:
78//------------------------------------------------------------------------
80 virtual void PLUGIN_API update (FUnknown* changedUnknown, int32 message) = 0;
81
91 //------------------------------------------------------------------------
92 static const FUID iid;
93};
94
95DECLARE_CLASS_IID (IDependent, 0xF52B7AAE, 0xDE72416d, 0x8AF18ACE, 0x9DD7BD5E)
96
97//------------------------------------------------------------------------
98} // namespace Steinberg
static void message(int level, const char *fmt,...)
Definition adplugdb.cpp:120
Definition funknown.h:233
Definition funknown.h:361
Definition iupdatehandler.h:76
static const FUID iid
Definition iupdatehandler.h:92
virtual void PLUGIN_API update(FUnknown *changedUnknown, int32 message)=0
ChangeMessage
Definition iupdatehandler.h:83
@ kDestroyed
Definition iupdatehandler.h:86
@ kChanged
Definition iupdatehandler.h:85
@ kStdChangeMessageLast
Definition iupdatehandler.h:89
@ kWillChange
Definition iupdatehandler.h:84
@ kWillDestroy
Definition iupdatehandler.h:87
Definition iupdatehandler.h:41
virtual tresult PLUGIN_API deferUpdates(FUnknown *object, int32 message)=0
virtual tresult PLUGIN_API removeDependent(FUnknown *object, IDependent *dependent)=0
static const FUID iid
Definition iupdatehandler.h:62
virtual tresult PLUGIN_API triggerUpdates(FUnknown *object, int32 message)=0
virtual tresult PLUGIN_API addDependent(FUnknown *object, IDependent *dependent)=0
#define DECLARE_CLASS_IID(ClassName, l1, l2, l3, l4)
Definition funknown.h:74
Definition baseiids.cpp:43
int int32
Definition ftypes.h:50
int32 tresult
Definition ftypes.h:76