39 #ifdef EST_SIOD_ENABLE_PYTHON 48 #if defined(INSTANTIATE_TEMPLATES) 49 #include "../base_class/EST_THash.cc" 65 char *char_heap_size=
getenv(
"SIODHEAPSIZE");
66 if ((char_heap_size == 0) ||
67 (atoi(char_heap_size) < 1000))
70 actual_heap_size=atoi(char_heap_size);
78 #ifdef EST_SIOD_ENABLE_PYTHON 87 #ifdef EST_SIOD_ENABLE_PYTHON 137 if (
NULLP(lcc))
continue;
140 if (strcmp(key,
PNAME(lcc))==0)
148 sprintf(b,
"%g",
FLONM(lcc));
157 if (strcmp(key,lcc->storage_as.string.data)==0)
208 for (len=0,l=list;
CONSP(l); l=
CDR(l),len++);
220 for (i=0,l=list;
CONSP(l); l=
CDR(l),i++)
233 for (p=list; p !=
NIL; p=
cdr(p))
285 cerr <<
"param " << name <<
" not of type int" << endl;
306 cerr <<
"param " << name <<
" not of type float" << endl;
313 const char *
get_param_str(
const char *name, LISP params,
const char *defval)
369 rx = regexes.val(sr,found);
373 regexes.add_item(sr,rx);
387 if (hooks && (!
CONSP(hooks)))
390 for (h=hooks; h !=
NIL; h=
cdr(h))
405 else if (!
CONSP(hooks))
406 r =
apply(hooks,args);
408 for (r=args,h=hooks; h !=
NIL; h=
cdr(h))
417 for (qa=
NIL,a=args; a; a=
cdr(a))
430 for (i=0; i < strlen(str); i++)
445 char **matches =
NULL;
467 if (strncmp(name, text, length) == 0)
468 lmatches =
cons(
CAR(l),lmatches);
474 for (l=lmatches,i=0; l; l=
cdr(l),i++)
485 char **matches =
NULL;
505 if (strncmp(name, text, length) == 0)
506 lmatches =
cons(
CAR(l),lmatches);
513 for (l=lmatches,i=0; l; l=
cdr(l),i++)
527 for (b=l; b !=
NIL; b=
cdr(b))
538 for (p=a.
head(); p != 0; p=p->
next())
LISP siod_nth(int n, LISP list)
char * wstrdup(const char *s)
#define walloc(TYPE, SIZE)
LISP siod_strlist_to_list(EST_StrList &a)
LISP stringexplode(const char *str)
const char * get_param_str(const char *name, LISP params, const char *defval)
int get_param_int(const char *name, LISP params, int defval)
char ** siod_command_generator(char *text, int length)
int siod_llength(LISP list)
A Regular expression class to go with the CSTR EST_String class.
long int get_c_int(LISP x)
LISP siod_get_lval(const char *name, const char *message)
A specialised hash table for when the key is an EST_String.
#define ACTUAL_DEFAULT_HEAP_SIZE
LISP make_param_float(const char *name, float val)
float get_param_float(const char *name, LISP params, float defval)
void err(const char *message, LISP x) EST_NORETURN
LISP get_param_lisp(const char *name, LISP params, LISP defval)
LISP symbol_boundp(LISP x, LISP env)
const char * get_c_string(LISP x)
int siod_init(int heap_size)
LISP siod_regex_member_str(const EST_String &key, LISP list)
LISP apply(LISP func, LISP args)
LISP cons(LISP x, LISP y)
LISP setvar(LISP var, LISP val, LISP env)
LISP make_param_int(const char *name, int val)
void init_storage(int init_heap_size)
LISP siod_last(LISP list)
#define Instantiate_TStringHash_T(VAL, TAG)
LISP siod_member_int(const int key, LISP list)
LISP siod_member_str(const char *key, LISP list)
LISP siod_assoc_str(const char *key, LISP alist)
int matches(const char *e, ssize_t pos=0) const
Exactly match this string?
LISP symbol_value(LISP x, LISP env)
void append(const T &item)
add item onto end of list
LISP apply_hooks_right(LISP hooks, LISP args)
LISP rintern(const char *name)
LISP leval(LISP x, LISP env)
EST_Regex & make_regex(const char *r)
char * must_malloc(unsigned long size)
LISP make_param_lisp(const char *name, LISP val)
LISP apply_hooks(LISP hooks, LISP arg)
An open hash table. The number of buckets should be set to allow enough space that there are relative...
LISP make_param_str(const char *name, const char *val)
void reverse(EST_Wave &sig)
void siod_list_to_strlist(LISP l, EST_StrList &a)
char ** siod_variable_generator(char *text, int length)
void clear(void)
remove all items in list
void close_open_files(void)
LISP siod_set_lval(const char *name, LISP val)
int siod_atomic_list(LISP list)