LMMS
Loading...
Searching...
No Matches
Util.h File Reference
#include <string>
#include <sstream>
#include <stdint.h>
#include <algorithm>
#include <set>
#include <rtosc/ports.h>
#include <rtosc/port-sugar.h>

Go to the source code of this file.

Namespaces

namespace  zyncarla

Macros

#define N_DETUNE_TYPES   4
#define INT32_MAX   (2147483647)
#define RND   (prng() / (INT32_MAX * 1.0f))
#define rParamZyn(name, ...)
#define rPresetType
#define rPaste
#define rArrayPaste
#define rUnit(x)

Typedefs

typedef uint32_t zyncarla::prng_t

Functions

bool zyncarla::fileexists (const char *filename)
float zyncarla::VelF (float velocity, unsigned char scaling)
float zyncarla::getdetune (unsigned char type, unsigned short int coarsedetune, unsigned short int finedetune)
void zyncarla::set_realtime ()
void zyncarla::os_usleep (long length)
std::string zyncarla::os_pid_as_padded_string ()
 returns pid padded to maximum pid lenght, posix conform
std::string zyncarla::legalizeFilename (std::string filename)
void zyncarla::invSignal (float *sig, size_t len)
template<class T>
std::string zyncarla::stringFrom (T x)
template<class T>
std::string zyncarla::to_s (T x)
template<class T>
zyncarla::stringTo (const char *x)
template<class T>
zyncarla::limit (T val, T min, T max)
template<class T>
bool zyncarla::inRange (T val, T min, T max)
template<class T>
zyncarla::array_max (const T *data, size_t len)
prng_t zyncarla::prng_r (prng_t &p)
prng_t zyncarla::prng (void)
void zyncarla::sprng (prng_t p)
float zyncarla::interpolate (const float *data, size_t len, float pos)
float zyncarla::cinterpolate (const float *data, size_t len, float pos)
template<class T>
static void zyncarla::nullify (T &t)
template<class T>
static void zyncarla::arrayNullify (T &t)
char * zyncarla::rtosc_splat (const char *path, std::set< std::string > v)

Macro Definition Documentation

◆ INT32_MAX

#define INT32_MAX   (2147483647)

◆ N_DETUNE_TYPES

#define N_DETUNE_TYPES   4

◆ rArrayPaste

#define rArrayPaste
Value:
{"paste-array:bi", rProp(internal) rDoc("array paste port"), 0, \
[](const char *m, rtosc::RtData &d){ \
printf("rArrayPaste...\n"); \
rObject &paste = **(rObject **)rtosc_argument(m,0).b.data; \
int field = rtosc_argument(m,1).i; \
rObject &o = *(rObject*)d.obj;\
o.pasteArray(paste,field);}}
#define rObject
Definition Alienwah.cpp:24
unsigned * m
Definition inflate.c:1559
unsigned d
Definition inflate.c:940
#define rDoc(doc)
Definition port-sugar.h:278
#define rProp(name)
Definition port-sugar.h:252
rtosc_arg_t rtosc_argument(const char *msg, unsigned idx)
Definition rtosc.c:732
data object for the dispatch routine
Definition ports.h:55
uint8_t * data
Definition rtosc.h:43
int32_t i
Definition rtosc.h:47
rtosc_blob_t b
Definition rtosc.h:55

◆ RND

#define RND   (prng() / (INT32_MAX * 1.0f))

◆ rParamZyn

#define rParamZyn ( name,
... )
Value:
{STRINGIFY(name) "::i", rProp(parameter) rMap(min, 0) rMap(max, 127) DOC(__VA_ARGS__), NULL, rParamICb(name)}
#define NULL
Definition CarlaBridgeFormat.cpp:30
static const char * name
Definition pugl.h:1582
#define min(x, y)
Definition os.h:74
#define max(x, y)
Definition os.h:78
#define rMap(name, value)
Definition port-sugar.h:251
#define rParamICb(name)
Definition port-sugar.h:330
#define DOC(...)
Definition port-sugar.h:65
#define STRINGIFY(a)
Definition port-sugar.h:48

Port macros - these produce easy and regular port definitions for common types

◆ rPaste

#define rPaste
Value:
{"paste:b", rProp(internal) rDoc("paste port"), 0, \
[](const char *m, rtosc::RtData &d){ \
printf("rPaste...\n"); \
rObject &paste = **(rObject **)rtosc_argument(m,0).b.data; \
rObject &o = *(rObject*)d.obj;\
o.paste(paste);}}
#define rPresetType
Definition Util.h:156

◆ rPresetType

#define rPresetType
Value:
{"preset-type:", rProp(internal) rDoc("clipboard type of object"), 0, \
[](const char *, rtosc::RtData &d){ \
rObject *obj = (rObject*)d.obj; \
d.reply(d.loc, "s", obj->type);}}

◆ rUnit

#define rUnit ( x)
Value:
unsigned x[BMAX+1]
Definition inflate.c:1586
png_const_structrp png_const_inforp int * unit
Definition png.h:2161