diff options
author | XANTRONIX Development | 2022-02-28 17:16:01 -0500 |
---|---|---|
committer | XANTRONIX Development | 2022-02-28 17:16:01 -0500 |
commit | 8293f5811f4fe5d3d955dc78833eab6ab2779b4e (patch) | |
tree | 6cf9a4d81a25afce2a566ae10c16f75602f36b8a /include/xas | |
parent | 78a788bff6779a79357b346901f477060ad5d96f (diff) | |
download | xas-8293f5811f4fe5d3d955dc78833eab6ab2779b4e.tar.gz xas-8293f5811f4fe5d3d955dc78833eab6ab2779b4e.tar.bz2 xas-8293f5811f4fe5d3d955dc78833eab6ab2779b4e.zip |
Implement xas_object_stream_new()
Implement xas_object_stream_new() proxy to allow generic creation of
an audio stream from any given audible object
Diffstat (limited to 'include/xas')
-rw-r--r-- | include/xas/object.h | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/include/xas/object.h b/include/xas/object.h index 19a479a..9e291c1 100644 --- a/include/xas/object.h +++ b/include/xas/object.h @@ -1,6 +1,8 @@ #ifndef _XAS_OBJECT_H #define _XAS_OBJECT_H +#include <xas/audio.h> + typedef struct _xas_object xas_object; typedef int (*xas_object_start_callback)(xas_object *object); @@ -9,10 +11,13 @@ typedef int (*xas_object_stop_callback)(xas_object *object); typedef int (*xas_object_set_gain_callback)(xas_object *object, float gain); +typedef xas_audio_stream *(*xas_object_stream_new_callback)(xas_object *object); + struct _xas_object { - xas_object_start_callback start; - xas_object_stop_callback stop; - xas_object_set_gain_callback set_gain; + xas_object_start_callback start; + xas_object_stop_callback stop; + xas_object_set_gain_callback set_gain; + xas_object_stream_new_callback stream_new; }; int xas_object_start(xas_object *object); @@ -21,4 +26,6 @@ int xas_object_stop(xas_object *object); int xas_object_set_gain(xas_object *object, float gain); +xas_audio_stream *xas_object_stream_new(xas_object *object); + #endif /* _XAS_OBJECT_H */ |