@@ -0,0 +1,2 @@ | |||||
*.so | |||||
@@ -0,0 +1,14 @@ | |||||
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE | |||||
Version 2, December 2004 | |||||
Copyright (C) 2004 Sam Hocevar <sam@hocevar.net> | |||||
Everyone is permitted to copy and distribute verbatim or modified | |||||
copies of this license document, and changing it is allowed as long | |||||
as the name is changed. | |||||
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE | |||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION | |||||
0. You just DO WHAT THE FUCK YOU WANT TO. | |||||
@@ -0,0 +1,19 @@ | |||||
# lv2-state-test | |||||
CC ?= gcc | |||||
CFLAGS += -O0 -g -Wall -Wextra -std=gnu99 | |||||
CFLAGS += $(shell pkg-config --cflags lv2) | |||||
LDFLAGS += -Wl,--no-undefined | |||||
LDFLAGS += $(shell pkg-config --libs lv2) | |||||
TARGET = lv2-state-test.lv2/lv2-state-test.so | |||||
all: $(TARGET) | |||||
$(TARGET): lv2-state-test.c | |||||
$(CC) $< $(CFLAGS) $(LDFLAGS) -shared -o $@ | |||||
clean: | |||||
rm -f $(TARGET) |
@@ -0,0 +1,7 @@ | |||||
# lv2-state-test | |||||
A simple and dumb [lv2 plugin](https://lv2plug.in/) to test host state support. | |||||
The code is released under the WTF Public License, so yeah, just do whatever you want with the code. | |||||
There is no documentation or support for this project whatsoever. |
@@ -0,0 +1,61 @@ | |||||
/* | |||||
Copyright (C) 2020 falkTX | |||||
This work is free. You can redistribute it and/or modify it under the | |||||
terms of the Do What The Fuck You Want To Public License, Version 2, | |||||
as published by Sam Hocevar. See the COPYING file for more details. | |||||
*/ | |||||
#include <lv2.h> | |||||
#include <lv2/state/state.h> | |||||
#include <stdlib.h> | |||||
static LV2_Handle instantiate(const LV2_Descriptor* const descriptor, | |||||
const double sample_rate, | |||||
const char* const bundle_path, | |||||
const LV2_Feature* const* const features) | |||||
{ | |||||
return NULL; | |||||
} | |||||
static void connect_port(LV2_Handle instance, uint32_t port, void* data_location) | |||||
{ | |||||
} | |||||
static void activate(LV2_Handle instance) | |||||
{ | |||||
} | |||||
static void run(LV2_Handle instance, uint32_t sample_count) | |||||
{ | |||||
} | |||||
static void deactivate(LV2_Handle instance) | |||||
{ | |||||
} | |||||
static void cleanup(LV2_Handle instance) | |||||
{ | |||||
free(instance); | |||||
} | |||||
static const void* extension_data(const char* const uri) | |||||
{ | |||||
return NULL; | |||||
} | |||||
LV2_SYMBOL_EXPORT | |||||
const LV2_Descriptor* lv2_descriptor(const uint32_t index) | |||||
{ | |||||
static const LV2_Descriptor desc = { | |||||
.URI = "", | |||||
.connect_port = connect_port, | |||||
.activate = activate, | |||||
.run = run, | |||||
.deactivate = deactivate, | |||||
.cleanup = cleanup, | |||||
.extension_data = extension_data | |||||
}; | |||||
return index == 0 ? &desc : NULL; | |||||
} |
@@ -0,0 +1,32 @@ | |||||
@prefix doap: <http://usefulinc.com/ns/doap#> . | |||||
@prefix foaf: <http://xmlns.com/foaf/0.1/> . | |||||
@prefix lv2: <http://lv2plug.in/ns/lv2core#> . | |||||
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . | |||||
@prefix state: <http://lv2plug.in/ns/ext/state#> . | |||||
<https://git.kx.studio/falkTX/lv2-state-test> | |||||
a lv2:Plugin ; | |||||
lv2:binary <lv2-state-test.so> ; | |||||
lv2:extensionData state:interface ; | |||||
lv2:optionalFeature lv2:hardRTCapable , | |||||
state:threadSafeRestore ; | |||||
lv2:requiredFeature state:freePath , | |||||
state:loadDefaultState , | |||||
state:makePath , | |||||
state:mapPath ; | |||||
rdfs:comment "A simple and dumb lv2 plugin to test host state support." ; | |||||
doap:name "lv2 state test" ; | |||||
doap:license "WTFPLv2" ; | |||||
doap:maintainer [ | |||||
foaf:name "falkTX" ; | |||||
foaf:homepage <https://www.falktx.com/> ; | |||||
] ; | |||||
lv2:microVersion 0 ; | |||||
lv2:minorVersion 2 . |