commit 1a9d7a6738dcf72930da2c3c4735811bcac65546
parent 4196034536dbb91fdbbbf4ff571891b0c452073f
Author: Alexandre Bique <bique.alexandre@gmail.com>
Date: Wed, 14 Jan 2015 19:17:10 +0100
clap_host: make the steady_time uint64_t* instead of a function call
Diffstat:
4 files changed, 11 insertions(+), 12 deletions(-)
diff --git a/examples/thyns/plugin.c b/examples/thyns/plugin.c
@@ -173,8 +173,7 @@ thyns_state_restore(struct clap_plugin *plugin,
{
struct thyns_plugin *p = plugin->plugin_data;
- clap_plugin_params_restore(
- plugin, buffer, size, p->host->steady_time(p->host));
+ clap_plugin_params_restore(plugin, buffer, size, *p->host->steady_time);
return true;
}
diff --git a/include/clap/clap.h b/include/clap/clap.h
@@ -260,9 +260,9 @@ struct clap_host
struct clap_event *events);
/* The time in samples, this clock is monotonicaly increasing,
- * it means that each time you call this function, the return
- * value must be greater or equal to the previous one. */
- uint64_t (*steady_time)(struct clap_host *host);
+ * it means that each time you read the value, it must be greater
+ * or equal to the previous one. */
+ const uint64_t *steady_time;
/* Log a message through the host. */
void (*log)(struct clap_host *host,
diff --git a/spec.html b/spec.html
@@ -859,7 +859,7 @@ otherwise.</p>
<pre class="code c literal-block">
<span class="k">struct</span> <span class="n">clap_event</span> <span class="n">ev</span><span class="p">;</span>
<span class="c1">// ...
-</span><span class="n">ev</span><span class="p">.</span><span class="n">steady_time</span> <span class="o">=</span> <span class="n">host</span><span class="o">-></span><span class="n">steady_time</span><span class="p">(</span><span class="n">host</span><span class="p">);</span>
+</span><span class="n">ev</span><span class="p">.</span><span class="n">steady_time</span> <span class="o">=</span> <span class="o">*</span><span class="n">host</span><span class="o">-></span><span class="n">steady_time</span><span class="p">;</span>
<span class="n">host</span><span class="o">-></span><span class="n">events</span><span class="p">(</span><span class="n">host</span><span class="p">,</span> <span class="n">plugin</span><span class="p">,</span> <span class="o">&</span><span class="n">ev</span><span class="p">);</span>
</pre>
</div>
@@ -872,7 +872,7 @@ send an event <tt class="docutils literal">CLAP_EVENT_GUI_CLOSED</tt> to the hos
<span class="k">struct</span> <span class="n">clap_event</span> <span class="n">ev</span><span class="p">;</span>
<span class="n">ev</span><span class="p">.</span><span class="n">next</span> <span class="o">=</span> <span class="nb">NULL</span><span class="p">;</span>
<span class="n">ev</span><span class="p">.</span><span class="n">type</span> <span class="o">=</span> <span class="n">CLAP_EVENT_GUI_CLOSED</span><span class="p">;</span>
-<span class="n">ev</span><span class="p">.</span><span class="n">sample_offset</span> <span class="o">=</span> <span class="n">host</span><span class="o">-></span><span class="n">steady_time</span><span class="p">(</span><span class="n">host</span><span class="p">);</span>
+<span class="n">ev</span><span class="p">.</span><span class="n">sample_offset</span> <span class="o">=</span> <span class="o">*</span><span class="n">host</span><span class="o">-></span><span class="n">steady_time</span><span class="p">;</span>
<span class="n">host</span><span class="o">-></span><span class="n">events</span><span class="p">(</span><span class="n">host</span><span class="p">,</span> <span class="n">plugin</span><span class="p">,</span> <span class="o">&</span><span class="n">ev</span><span class="p">);</span>
</pre>
</div>
@@ -1444,9 +1444,9 @@ plugin's parameters and restore them.</p>
<span class="k">struct</span> <span class="n">clap_event</span> <span class="o">*</span><span class="n">events</span><span class="p">);</span>
<span class="cm">/* The time in samples, this clock is monotonicaly increasing,
- * it means that each time you call this function, the return
- * value must be greater or equal to the previous one. */</span>
- <span class="kt">uint64_t</span> <span class="p">(</span><span class="o">*</span><span class="n">steady_time</span><span class="p">)(</span><span class="k">struct</span> <span class="n">clap_host</span> <span class="o">*</span><span class="n">host</span><span class="p">);</span>
+ * it means that each time you read the value, it must be greater
+ * or equal to the previous one. */</span>
+ <span class="k">const</span> <span class="kt">uint64_t</span> <span class="o">*</span><span class="n">steady_time</span><span class="p">;</span>
<span class="cm">/* Log a message through the host. */</span>
<span class="kt">void</span> <span class="p">(</span><span class="o">*</span><span class="n">log</span><span class="p">)(</span><span class="k">struct</span> <span class="n">clap_host</span> <span class="o">*</span><span class="n">host</span><span class="p">,</span>
diff --git a/spec.rst b/spec.rst
@@ -577,7 +577,7 @@ Events sent to the host should be stamped:
struct clap_event ev;
// ...
- ev.steady_time = host->steady_time(host);
+ ev.steady_time = *host->steady_time;
host->events(host, plugin, &ev);
Hiding the GUI
@@ -592,7 +592,7 @@ send an event ``CLAP_EVENT_GUI_CLOSED`` to the host.
struct clap_event ev;
ev.next = NULL;
ev.type = CLAP_EVENT_GUI_CLOSED;
- ev.sample_offset = host->steady_time(host);
+ ev.sample_offset = *host->steady_time;
host->events(host, plugin, &ev);
Embedding