Esempio n. 1
0
    // see Hv_adsr_AudioLib.Parameter for definitions
    public float GetFloatParameter(Hv_adsr_AudioLib.Parameter param)
    {
        switch (param)
        {
        case Parameter.Attacktimeadsr: return(attackTimeAdsr);

        case Parameter.Decaytimeadsr: return(decayTimeAdsr);

        case Parameter.Formeattackadsr: return(formeAttackAdsr);

        case Parameter.Formedecayadsr: return(formeDecayAdsr);

        case Parameter.Formereleaseadsr: return(formeReleaseAdsr);

        case Parameter.Moderesetadsr: return(modeResetAdsr);

        case Parameter.Releasetimeadsr: return(releaseTimeAdsr);

        case Parameter.Seuiladsr: return(seuilAdsr);

        case Parameter.Sustaintimeadsr: return(sustainTimeAdsr);

        case Parameter.Triggeradsr: return(triggerAdsr);

        default: return(0.0f);
        }
    }
Esempio n. 2
0
    public void SetFloatParameter(Hv_adsr_AudioLib.Parameter param, float x)
    {
        switch (param)
        {
        case Parameter.Attacktimeadsr: {
            x = Mathf.Clamp(x, 0.0f, 48000.0f);
            attackTimeAdsr = x;
            break;
        }

        case Parameter.Decaytimeadsr: {
            x             = Mathf.Clamp(x, 0.0f, 48000.0f);
            decayTimeAdsr = x;
            break;
        }

        case Parameter.Formeattackadsr: {
            x = Mathf.Clamp(x, 0.0f, 3.0f);
            formeAttackAdsr = x;
            break;
        }

        case Parameter.Formedecayadsr: {
            x = Mathf.Clamp(x, 0.0f, 3.0f);
            formeDecayAdsr = x;
            break;
        }

        case Parameter.Formereleaseadsr: {
            x = Mathf.Clamp(x, 0.0f, 3.0f);
            formeReleaseAdsr = x;
            break;
        }

        case Parameter.Moderesetadsr: {
            x             = Mathf.Clamp(x, 0.0f, 1.0f);
            modeResetAdsr = x;
            break;
        }

        case Parameter.Releasetimeadsr: {
            x = Mathf.Clamp(x, 0.0f, 48000.0f);
            releaseTimeAdsr = x;
            break;
        }

        case Parameter.Seuiladsr: {
            x         = Mathf.Clamp(x, 0.0f, 1.0f);
            seuilAdsr = x;
            break;
        }

        case Parameter.Sustaintimeadsr: {
            x = Mathf.Clamp(x, 0.0f, 48000.0f);
            sustainTimeAdsr = x;
            break;
        }

        case Parameter.Triggeradsr: {
            x           = Mathf.Clamp(x, 0.0f, 1.0f);
            triggerAdsr = x;
            break;
        }

        default: return;
        }
        if (IsInstantiated())
        {
            _context.SendFloatToReceiver((uint)param, x);
        }
    }