aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Hanspeter Portner <dev@open-music-kontrollers.ch>2018-12-16 16:22:15 +0100
committerGravatar Hanspeter Portner <dev@open-music-kontrollers.ch>2018-12-16 16:22:15 +0100
commitfd4477f43d922ffdbb445bed7193104d7f06e41d (patch)
treecc407c182a3961be9d7dca558fa58d0426dc02df
parent08eab0a4e42f2bce98d41482dbfc7f8f01c49a48 (diff)
downloadchim.lv2-fd4477f43d922ffdbb445bed7193104d7f06e41d.zip
chim.lv2-fd4477f43d922ffdbb445bed7193104d7f06e41d.tar.gz
chim.lv2-fd4477f43d922ffdbb445bed7193104d7f06e41d.tar.bz2
chim.lv2-fd4477f43d922ffdbb445bed7193104d7f06e41d.tar.xz
Squashed 'props.lv2/' changes from 622ce3e..2ff0549
2ff0549 extend last commit. 86a55df introduce hidden properties. git-subtree-dir: props.lv2 git-subtree-split: 2ff05496fe29522d6a2fee8d2ba79d51a397cfd9
-rw-r--r--VERSION2
-rw-r--r--props.h31
2 files changed, 21 insertions, 12 deletions
diff --git a/VERSION b/VERSION
index 7cd2918..3234805 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-0.1.97
+0.1.101
diff --git a/props.h b/props.h
index ddbc268..9aad570 100644
--- a/props.h
+++ b/props.h
@@ -53,6 +53,7 @@ struct _props_def_t {
const char *type;
const char *access;
size_t offset;
+ bool hidden;
uint32_t max_size;
props_event_cb_t event_cb;
@@ -378,7 +379,7 @@ _props_impl_restore(props_t *props, LV2_Atom_Forge *forge, uint32_t frames,
_props_impl_unlock(impl, PROP_STATE_NONE);
- if(*ref)
+ if(*ref && !impl->def->hidden)
*ref = _props_patch_set(props, forge, frames, impl, 0);
const props_def_t *def = impl->def;
@@ -604,7 +605,7 @@ props_advance(props_t *props, LV2_Atom_Forge *forge, uint32_t frames,
{
props_impl_t *impl = &props->impls[i];
- if(*ref)
+ if(*ref && !impl->def->hidden)
*ref = _props_patch_set(props, forge, frames, impl, sequence_num);
}
@@ -616,18 +617,21 @@ props_advance(props_t *props, LV2_Atom_Forge *forge, uint32_t frames,
if(impl)
{
- *ref = _props_patch_set(props, forge, frames, impl, sequence_num);
+ if(*ref && !impl->def->hidden)
+ *ref = _props_patch_set(props, forge, frames, impl, sequence_num);
return 1;
}
else if(sequence_num)
{
- *ref = _props_patch_error(props, forge, frames, sequence_num);
+ if(*ref)
+ *ref = _props_patch_error(props, forge, frames, sequence_num);
}
}
else if(sequence_num)
{
- *ref = _props_patch_error(props, forge, frames, sequence_num);
+ if(*ref)
+ *ref = _props_patch_error(props, forge, frames, sequence_num);
}
}
else if(obj->body.otype == props->urid.patch_set)
@@ -662,7 +666,8 @@ props_advance(props_t *props, LV2_Atom_Forge *forge, uint32_t frames,
{
if(sequence_num)
{
- *ref = _props_patch_error(props, forge, frames, sequence_num);
+ if(ref)
+ *ref = _props_patch_error(props, forge, frames, sequence_num);
}
return 0;
@@ -680,14 +685,16 @@ props_advance(props_t *props, LV2_Atom_Forge *forge, uint32_t frames,
if(sequence_num)
{
- *ref = _props_patch_ack(props, forge, frames, sequence_num);
+ if(*ref)
+ *ref = _props_patch_ack(props, forge, frames, sequence_num);
}
return 1;
}
else if(sequence_num)
{
- *ref = _props_patch_error(props, forge, frames, sequence_num);
+ if(*ref)
+ *ref = _props_patch_error(props, forge, frames, sequence_num);
}
}
else if(obj->body.otype == props->urid.patch_put)
@@ -720,7 +727,8 @@ props_advance(props_t *props, LV2_Atom_Forge *forge, uint32_t frames,
{
if(sequence_num)
{
- *ref = _props_patch_error(props, forge, frames, sequence_num);
+ if(*ref)
+ *ref = _props_patch_error(props, forge, frames, sequence_num);
}
return 0;
@@ -745,7 +753,8 @@ props_advance(props_t *props, LV2_Atom_Forge *forge, uint32_t frames,
if(sequence_num)
{
- *ref = _props_patch_ack(props, forge, frames, sequence_num);
+ if(*ref)
+ *ref = _props_patch_ack(props, forge, frames, sequence_num);
}
return 1;
@@ -764,7 +773,7 @@ props_set(props_t *props, LV2_Atom_Forge *forge, uint32_t frames,
{
_props_impl_stash(props, impl);
- if(*ref) //TODO use patch:sequenceNumber
+ if(*ref && !impl->def->hidden) //TODO use patch:sequenceNumber
*ref = _props_patch_set(props, forge, frames, impl, 0);
}
}