packages feed

bindings-EsounD (empty) → 0.1

raw patch · 5 files changed

+264/−0 lines, 5 filesdep +basedep +bindings-DSLdep +bindings-audiofilesetup-changed

Dependencies added: base, bindings-DSL, bindings-audiofile

Files

+ Bindings/EsounD.hsc view
@@ -0,0 +1,187 @@+#include <bindings.dsl.h>+#include <esd.h>++module Bindings.EsounD where+#strict_import+import Bindings.AudioFile++#globalarray ESD_UNIX_SOCKET_DIR , CChar+#globalarray ESD_UNIX_SOCKET_NAME, CChar++#num ESD_BUF_SIZE+#num ESD_MAX_WRITE_SIZE+#num ESD_KEY_LEN+#num ESD_DEFAULT_PORT+#num ESD_DEFAULT_RATE+#num ESD_NAME_MAX+#num ESD_ENDIAN_KEY+#num ESD_VOLUME_BASE++#num ESD_PROTO_CONNECT+#num ESD_PROTO_LOCK+#num ESD_PROTO_UNLOCK+#num ESD_PROTO_STREAM_PLAY+#num ESD_PROTO_STREAM_REC+#num ESD_PROTO_STREAM_MON+#num ESD_PROTO_SAMPLE_CACHE+#num ESD_PROTO_SAMPLE_FREE+#num ESD_PROTO_SAMPLE_PLAY+#num ESD_PROTO_SAMPLE_LOOP+#num ESD_PROTO_SAMPLE_STOP+#num ESD_PROTO_SAMPLE_KILL+#num ESD_PROTO_STANDBY+#num ESD_PROTO_RESUME+#num ESD_PROTO_SAMPLE_GETID+#num ESD_PROTO_STREAM_FILT+#num ESD_PROTO_SERVER_INFO+#num ESD_PROTO_ALL_INFO+#num ESD_PROTO_SUBSCRIBE+#num ESD_PROTO_UNSUBSCRIBE+#num ESD_PROTO_STREAM_PAN+#num ESD_PROTO_SAMPLE_PAN+#num ESD_PROTO_STANDBY_MODE+#num ESD_PROTO_LATENCY+#num ESD_PROTO_MAX++#num ESD_MASK_BITS+#num ESD_BITS8+#num ESD_BITS16++#num ESD_MASK_CHAN+#num ESD_MONO+#num ESD_STEREO++#num ESD_MASK_MODE+#num ESD_STREAM+#num ESD_SAMPLE+#num ESD_ADPCM++#num ESD_MASK_FUNC+#num ESD_PLAY+#num ESD_MONITOR+#num ESD_RECORD+#num ESD_STOP+#num ESD_LOOP++#integral_t esd_format_t+#integral_t esd_proto_t++#integral_t octet++#ccall esd_open_sound, Ptr CChar -> IO CInt+#ccall esd_send_auth , CInt -> IO CInt+#ccall esd_lock      , CInt -> IO CInt+#ccall esd_unlock    , CInt -> IO CInt+#ccall esd_standby   , CInt -> IO CInt+#ccall esd_resume    , CInt -> IO CInt++#ccall esd_play_stream           , <esd_format_t> -> CInt -> Ptr CChar -> Ptr CChar -> IO CInt+#ccall esd_play_stream_fallback  , <esd_format_t> -> CInt -> Ptr CChar -> Ptr CChar -> IO CInt+#ccall esd_monitor_stream        , <esd_format_t> -> CInt -> Ptr CChar -> Ptr CChar -> IO CInt+#ccall esd_record_stream         , <esd_format_t> -> CInt -> Ptr CChar -> Ptr CChar -> IO CInt+#ccall esd_record_stream_fallback, <esd_format_t> -> CInt -> Ptr CChar -> Ptr CChar -> IO CInt+#ccall esd_filter_stream         , <esd_format_t> -> CInt -> Ptr CChar -> Ptr CChar -> IO CInt+#ccall esd_sample_cache          , CInt -> <esd_format_t> -> CInt -> CInt -> Ptr CChar -> IO CInt+#ccall esd_confirm_sample_cache  , CInt -> IO CInt+#ccall esd_sample_getid          , CInt -> Ptr CChar -> IO CInt+#ccall esd_sample_free           , CInt -> CInt -> IO CInt+#ccall esd_sample_play           , CInt -> CInt -> IO CInt+#ccall esd_sample_loop           , CInt -> CInt -> IO CInt+#ccall esd_sample_stop           , CInt -> CInt -> IO CInt+#ccall esd_sample_kill           , CInt -> CInt -> IO CInt+#ccall esd_close                 , CInt -> IO CInt+#ccall esd_get_latency           , CInt -> IO CInt++#starttype struct esd_server_info+#  field version, CInt+#  field format , <esd_format_t>+#  field rate   , CInt+#stoptype+#synonym_t esd_server_info_t, <esd_server_info>++#starttype struct esd_player_info+#  field next           , Ptr <esd_player_info>+#  field server         , Ptr <esd_server_info_t>+#  field source_id      , CInt+#  array_field name     , CChar+#  field rate           , CInt+#  field left_vol_scale , CInt+#  field right_vol_scale, CInt+#  field format         , <esd_format_t>+#stoptype+#synonym_t esd_player_info_t, <esd_player_info>++#starttype struct esd_sample_info+#  field next           , Ptr <esd_sample_info>+#  field server         , Ptr <esd_server_info_t>+#  field sample_id      , CInt+#  array_field name     , CChar+#  field rate           , CInt+#  field left_vol_scale , CInt+#  field right_vol_scale, CInt+#  field format         , <esd_format_t>+#  field length         , CInt+#stoptype+#synonym_t esd_sample_info_t, <esd_sample_info>++#starttype struct esd_info+#  field server     , Ptr <esd_server_info_t>+#  field player_list, Ptr <esd_player_info_t>+#  field sample_list, Ptr <esd_sample_info_t>+#stoptype+#synonym_t esd_info_t, <esd_info>++#num ESM_ERROR+#num ESM_ON_STANDBY+#num ESM_ON_AUTOSTANDBY+#num ESM_RUNNING+#integral_t esd_standby_mode_t++#callback esd_new_player_callback_t, Ptr <esd_player_info_t> -> IO CInt+#callback esd_old_player_callback_t, Ptr <esd_player_info_t> -> IO CInt+#callback esd_new_sample_callback_t, Ptr <esd_sample_info_t> -> IO CInt+#callback esd_old_sample_callback_t, Ptr <esd_sample_info_t> -> IO CInt++#starttype struct esd_update_info_callbacks+#  field esd_new_player_callback, Ptr <esd_new_player_callback_t>+#  field esd_old_player_callback, Ptr <esd_old_player_callback_t>+#  field esd_new_sample_callback, Ptr <esd_new_sample_callback_t>+#  field esd_old_sample_callback, Ptr <esd_old_sample_callback_t>+#stoptype+#synonym_t esd_update_info_callbacks_t, <esd_update_info_callbacks>++#ccall esd_print_server_info     , Ptr <esd_server_info_t> -> IO ()+#ccall esd_print_player_info     , Ptr <esd_player_info_t> -> IO ()+#ccall esd_print_sample_info     , Ptr <esd_sample_info_t> -> IO ()+#ccall esd_print_all_info        , Ptr <esd_info_t> -> IO ()+#ccall esd_get_server_info       , CInt -> IO (Ptr <esd_server_info_t>)+#ccall esd_free_server_info      , Ptr <esd_server_info_t> -> IO ()+#ccall esd_get_all_info          , CInt -> IO (Ptr <esd_info_t>)+#ccall esd_subscribe_all_info    , CInt -> IO (Ptr <esd_info_t>)+#ccall esd_update_info           , CInt -> Ptr <esd_info_t> -> Ptr <esd_update_info_callbacks_t> -> IO (Ptr <esd_info_t>)+#ccall esd_unsubscribe_info      , CInt -> IO (Ptr <esd_info_t>)+#ccall esd_free_all_info         , Ptr <esd_info_t> -> IO ()+#ccall esd_set_stream_pan        , CInt -> CInt -> CInt -> CInt -> IO CInt+#ccall esd_set_default_sample_pan, CInt -> CInt -> CInt -> CInt -> IO CInt+#ccall esd_get_standby_mode      , CInt -> IO <esd_standby_mode_t>++#ccall esd_send_file , CInt -> <AFfilehandle> -> CInt -> IO CInt+#ccall esd_play_file , Ptr CChar -> Ptr CChar -> CInt -> IO CInt+#ccall esd_file_cache, CInt -> Ptr CChar -> Ptr CChar -> IO CInt++#globalvar esd_audio_format, <esd_format_t>+#globalvar esd_audio_rate  , CInt+#globalvar esd_audio_device, Ptr CChar++#ccall esd_audio_devices, IO (Ptr CChar)+#ccall esd_audio_open   , IO CInt+#ccall esd_audio_close  , IO ()+#ccall esd_audio_pause  , IO ()+#ccall esd_audio_write  , Ptr () -> CInt -> IO CInt+#ccall esd_audio_read   , Ptr () -> CInt -> IO CInt+#ccall esd_audio_flush  , IO ()++#ccall esd_get_socket_dirname, IO (Ptr CChar)+#ccall esd_get_socket_name   , IO (Ptr CChar)++#ccall have_ipv6, IO CInt
+ COPYING view
@@ -0,0 +1,29 @@+<!-- -*- xml -*-++bindings-EsounD はパブリックドメインに在ります。+bindings-EsounD is in the public domain.++See http://creativecommons.org/licenses/publicdomain/++-->++<rdf:RDF xmlns="http://web.resource.org/cc/"+	     xmlns:dc="http://purl.org/dc/elements/1.1/"+	     xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">+  <Work rdf:about="http://cielonegro.org/Bindings-EsounD.html">+	<dc:title>bindings-EsounD</dc:title>+	<dc:rights>+      <Agent>+	    <dc:title>PHO</dc:title>+	  </Agent>+    </dc:rights>+	<license rdf:resource="http://web.resource.org/cc/PublicDomain" />+  </Work>+      +  <License rdf:about="http://web.resource.org/cc/PublicDomain">+	<permits rdf:resource="http://web.resource.org/cc/Reproduction" />+	<permits rdf:resource="http://web.resource.org/cc/Distribution" />+	<permits rdf:resource="http://web.resource.org/cc/DerivativeWorks" />+  </License>++</rdf:RDF>
+ Setup.hs view
@@ -0,0 +1,4 @@+#!/usr/bin/env runghc++import Distribution.Simple+main = defaultMain
+ bindings-EsounD.cabal view
@@ -0,0 +1,39 @@+Name: bindings-EsounD+Synopsis: Low level bindings to EsounD (ESD; Enlightened Sound Daemon)+Description:+        Bindings to EsounD: <http://www.tux.org/~ricdude/EsounD.html>+Version: 0.1+License: PublicDomain+License-File: COPYING+Author: PHO <pho at cielonegro dot org>+Maintainer: PHO <pho at cielonegro dot org>+Stability: experimental+Homepage: http://cielonegro.org/Bindings-EsounD.html+Category: FFI+Tested-With: GHC == 6.12.3+Cabal-Version: >= 1.6+Build-Type: Simple+Extra-Source-Files:+    COPYING++Source-Repository head+    Type: git+    Location: git://git.cielonegro.org/bindings-EsounD.git++Library+    Build-Depends:+        base               == 4.2.*,+        bindings-DSL       == 1.0.*,+        bindings-audiofile == 0.1.*++    Exposed-Modules:+        Bindings.EsounD++    PkgConfig-Depends:+        esound >= 0.2.41++    C-Sources:+        cbits/helper_EsounD.c++    Extensions:+        ForeignFunctionInterface
+ cbits/helper_EsounD.c view
@@ -0,0 +1,5 @@+#include <bindings.cmacros.h>+#include <esd.h>++BC_GLOBALARRAY(ESD_UNIX_SOCKET_DIR , char)+BC_GLOBALARRAY(ESD_UNIX_SOCKET_NAME, char)