Пример #1
0
#include <cassert>
#include <cstdlib>
#include <cmath>
#include <cstdio>
#include <cstddef>

#include <unistd.h>

#include <rtosc/ports.h>
#include <rtosc/port-sugar.h>

pthread_t main_thread;

#define rObject OscilGen
const rtosc::Ports OscilGen::non_realtime_ports = {
    rSelf(OscilGen),
    rPaste,
    //TODO ensure min/max
    rOption(Phmagtype,
            rOptions(linear,dB scale (-40),
                     dB scale (-60), dB scale (-80),
                     dB scale (-100)),
            "Type of magnitude for harmonics"),
    rOption(Pcurrentbasefunc,
            rOptions(sine, triangle, pulse, saw, power, gauss,
                diode, abssine, pulsesine, stretchsine,
                chirp, absstretchsine, chebyshev, sqr,
                spike, circle), rOpt(127,use-as-base waveform),
            "Base Waveform for harmonics"),
    rParamZyn(Pbasefuncpar,
            "Morph between possible base function shapes "
Пример #2
0
#include "Reverb.h"
#include "Echo.h"
#include "Chorus.h"
#include "Distorsion.h"
#include "EQ.h"
#include "DynamicFilter.h"
#include "Phaser.h"
#include "../Misc/XMLwrapper.h"
#include "../Misc/Util.h"
#include "../Params/FilterParams.h"
#include "../Misc/Allocator.h"


#define rObject EffectMgr
static const rtosc::Ports local_ports = {
    rSelf(EffectMgr),
    rPaste,
    rRecurp(filterpars, "Filter Parameter for Dynamic Filter"),
    {"parameter#128::i", rProp(alias) rDoc("Parameter Accessor"), NULL,
        [](const char *msg, rtosc::RtData &d)
        {
            EffectMgr *eff = (EffectMgr*)d.obj;
            const char *mm = msg;
            while(!isdigit(*mm))++mm;

            if(!rtosc_narguments(msg))
                d.reply(d.loc, "i", eff->geteffectparrt(atoi(mm)));
            else {
                eff->seteffectparrt(atoi(mm), rtosc_argument(msg, 0).i);
                d.broadcast(d.loc, "i", eff->geteffectparrt(atoi(mm)));
            }