ftp.nice.ch/pub/next/unix/audio/fugue.s.tar.gz#/fugue/fugueint.c

This is fugueint.c in view mode; [Download] [Up]

/* fugueint.c -- interface to  fugue.h */

#include "xlisp.h"

extern LVAL true;
#define cvboolean(i) ((i) ? true : NIL)

extern LVAL RSLT_sym;


#include "fugue.h"

/* xlc_s_maxsamp -- interface to C routine s_maxSample */
/**/
LVAL xlc_s_maxsamp()
{
    SoundPtr arg1 = getsound(xlgasound());
    float result;

    xllastarg();
    result = s_maxSample(arg1);
    return cvflonum(result);
}


/* xlc_s_from -- interface to C routine s_from */
/**/
LVAL xlc_s_from()
{
    SoundPtr arg1 = getsound(xlgasound());
    float result;

    xllastarg();
    result = s_from(arg1);
    return cvflonum(result);
}


/* xlc_s_dur -- interface to C routine s_dur */
/**/
LVAL xlc_s_dur()
{
    SoundPtr arg1 = getsound(xlgasound());
    float result;

    xllastarg();
    result = s_dur(arg1);
    return cvflonum(result);
}


/* xlc_s_to -- interface to C routine s_to */
/**/
LVAL xlc_s_to()
{
    SoundPtr arg1 = getsound(xlgasound());
    float result;

    xllastarg();
    result = s_to(arg1);
    return cvflonum(result);
}


/* xlc_s_samples -- interface to C routine s_samples */
/**/
LVAL xlc_s_samples()
{
    SoundPtr arg1 = getsound(xlgasound());
    int arg2 = getfixnum(xlgafixnum());
    LVAL result;

    xllastarg();
    result = s_samples(arg1, arg2);
    return (result);
}


/* xlc_s_show -- interface to C routine s_show */
/**/
LVAL xlc_s_show()
{
    SoundPtr arg1 = getsound(xlgasound());
    SoundPtr result;

    xllastarg();
    result = s_show(arg1);
    return cvsound(result);
}


/* xlc_s_srate -- interface to C routine s_srate */
/**/
LVAL xlc_s_srate()
{
    SoundPtr arg1 = getsound(xlgasound());
    float result;

    xllastarg();
    result = s_srate(arg1);
    return cvflonum(result);
}


/* xlc_s_stats -- interface to C routine s_stats */
/**/
LVAL xlc_s_stats()
{
    SoundPtr arg1 = getsound(xlgasound());
    SoundPtr result;

    xllastarg();
    result = s_stats(arg1);
    return cvsound(result);
}


/* xlc_s_access -- interface to C routine s_access */
/**/
LVAL xlc_s_access()
{
    SoundPtr arg1 = getsound(xlgasound());
    double arg2 = getflonum(xlgaflonum());
    float result;

    xllastarg();
    result = s_access(arg1, arg2);
    return cvflonum(result);
}


/* xlc_s_apply -- interface to C routine s_apply */
/**/
LVAL xlc_s_apply()
{
    SoundPtr arg1 = getsound(xlgasound());
    double arg2 = getflonum(xlgaflonum());
    double arg3 = getflonum(xlgaflonum());
    double arg4 = getflonum(xlgaflonum());
    double arg5 = getflonum(xlgaflonum());
    double arg6 = getflonum(xlgaflonum());
    double arg7 = getflonum(xlgaflonum());
    SoundPtr result;

    xllastarg();
    result = s_apply(arg1, arg2, arg3, arg4, arg5, arg6, arg7);
    return cvsound(result);
}


/* xlc_s_scale -- interface to C routine s_scale */
/**/
LVAL xlc_s_scale()
{
    SoundPtr arg1 = getsound(xlgasound());
    double arg2 = getflonum(xlgaflonum());
    SoundPtr result;

    xllastarg();
    result = s_scale(arg1, arg2);
    return cvsound(result);
}


/* xlc_s_clip -- interface to C routine s_clip */
/**/
LVAL xlc_s_clip()
{
    SoundPtr arg1 = getsound(xlgasound());
    double arg2 = getflonum(xlgaflonum());
    double arg3 = getflonum(xlgaflonum());
    SoundPtr result;

    xllastarg();
    result = s_clip(arg1, arg2, arg3);
    return cvsound(result);
}


/* xlc_s_lclip -- interface to C routine s_lclip */
/**/
LVAL xlc_s_lclip()
{
    SoundPtr arg1 = getsound(xlgasound());
    double arg2 = getflonum(xlgaflonum());
    SoundPtr result;

    xllastarg();
    result = s_lclip(arg1, arg2);
    return cvsound(result);
}


/* xlc_s_rclip -- interface to C routine s_rclip */
/**/
LVAL xlc_s_rclip()
{
    SoundPtr arg1 = getsound(xlgasound());
    double arg2 = getflonum(xlgaflonum());
    SoundPtr result;

    xllastarg();
    result = s_rclip(arg1, arg2);
    return cvsound(result);
}


/* xlc_s_shift -- interface to C routine s_shift */
/**/
LVAL xlc_s_shift()
{
    SoundPtr arg1 = getsound(xlgasound());
    double arg2 = getflonum(xlgaflonum());
    SoundPtr result;

    xllastarg();
    result = s_shift(arg1, arg2);
    return cvsound(result);
}


/* xlc_s_stretch -- interface to C routine s_stretch */
/**/
LVAL xlc_s_stretch()
{
    SoundPtr arg1 = getsound(xlgasound());
    double arg2 = getflonum(xlgaflonum());
    SoundPtr result;

    xllastarg();
    result = s_stretch(arg1, arg2);
    return cvsound(result);
}


/* xlc_s_add -- interface to C routine s_add */
/**/
LVAL xlc_s_add()
{
    SoundPtr arg1 = getsound(xlgasound());
    SoundPtr arg2 = getsound(xlgasound());
    SoundPtr result;

    xllastarg();
    result = s_add(arg1, arg2);
    return cvsound(result);
}


/* xlc_s_mult -- interface to C routine s_mult */
/**/
LVAL xlc_s_mult()
{
    SoundPtr arg1 = getsound(xlgasound());
    SoundPtr arg2 = getsound(xlgasound());
    SoundPtr result;

    xllastarg();
    result = s_mult(arg1, arg2);
    return cvsound(result);
}


/* xlc_s_osc -- interface to C routine s_osc */
/**/
LVAL xlc_s_osc()
{
    SoundPtr arg1 = getsound(xlgasound());
    double arg2 = getflonum(xlgaflonum());
    double arg3 = getflonum(xlgaflonum());
    double arg4 = getflonum(xlgaflonum());
    double arg5 = getflonum(xlgaflonum());
    double arg6 = getflonum(xlgaflonum());
    int arg7 = getfixnum(xlgafixnum());
    SoundPtr result;

    xllastarg();
    result = s_osc(arg1, arg2, arg3, arg4, arg5, arg6, arg7);
    return cvsound(result);
}


/* xlc_s_env -- interface to C routine s_env */
/**/
LVAL xlc_s_env()
{
    double arg1 = getflonum(xlgaflonum());
    double arg2 = getflonum(xlgaflonum());
    double arg3 = getflonum(xlgaflonum());
    double arg4 = getflonum(xlgaflonum());
    double arg5 = getflonum(xlgaflonum());
    double arg6 = getflonum(xlgaflonum());
    double arg7 = getflonum(xlgaflonum());
    double arg8 = getflonum(xlgaflonum());
    SoundPtr result;

    xllastarg();
    result = s_env(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);
    return cvsound(result);
}


/* xlc_s_pwl -- interface to C routine s_pwl */
/**/
LVAL xlc_s_pwl()
{
    double arg1 = getflonum(xlgaflonum());
    LVAL arg2 = xlgetarg();
    SoundPtr result;

    xllastarg();
    result = s_pwl(arg1, arg2);
    return cvsound(result);
}


/* xlc_sf_load -- interface to C routine sf_load */
/**/
LVAL xlc_sf_load()
{
    unsigned char * arg1 = getstring(xlgastring());
    double arg2 = getflonum(xlgaflonum());
    SoundPtr result;

    xllastarg();
    result = sf_load(arg1, arg2);
    return cvsound(result);
}


/* xlc_sf_save -- interface to C routine sf_save */
/**/
LVAL xlc_sf_save()
{
    SoundPtr arg1 = getsound(xlgasound());
    unsigned char * arg2 = getstring(xlgastring());
    SoundPtr result;

    xllastarg();
    result = sf_save(arg1, arg2);
    return cvsound(result);
}


/* xlc_step_to_hz -- interface to C routine step_to_hz */
/**/
LVAL xlc_step_to_hz()
{
    double arg1 = getflonum(xlgaflonum());
    double result;

    xllastarg();
    result = step_to_hz(arg1);
    return cvflonum(result);
}


/* xlc_hz_to_step -- interface to C routine hz_to_step */
/**/
LVAL xlc_hz_to_step()
{
    double arg1 = getflonum(xlgaflonum());
    double result;

    xllastarg();
    result = hz_to_step(arg1);
    return cvflonum(result);
}


/* xlc_s_logicalto -- interface to C routine s_logicalTo */
/**/
LVAL xlc_s_logicalto()
{
    SoundPtr arg1 = getsound(xlgasound());
    double result;

    xllastarg();
    result = s_logicalTo(arg1);
    return cvflonum(result);
}


/* xlc_s_setlogicalto -- interface to C routine s_setLogicalTo */
/**/
LVAL xlc_s_setlogicalto()
{
    double arg1 = getflonum(xlgaflonum());
    SoundPtr arg2 = getsound(xlgasound());
    SoundPtr result;

    xllastarg();
    result = s_setLogicalTo(arg1, arg2);
    return cvsound(result);
}


/* xlc_log -- interface to C routine log */
/**/
LVAL xlc_log()
{
    double arg1 = getflonum(xlgaflonum());
    double result;

    xllastarg();
    result = log(arg1);
    return cvflonum(result);
}


These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.