Exemple #1
0
t_osc_err osc_atom_array_s_getBoolArray(t_osc_atom_ar_s *array, char **out){
	long len = osc_atom_array_s_getLen(array);
	if(!(*out)){
		*out = osc_mem_alloc(sizeof(char) * len);
	}
	int i;
	for(i = 0; i < len; i++){
		(*out)[i] = osc_atom_s_getBool(osc_atom_array_s_get(array, i));
	}
	return OSC_ERR_NONE;
}
Exemple #2
0
void odisplay_doFullPacket(t_odisplay *x, long len, char *ptr)
{
	osc_bundle_s_wrap_naked_message(len, ptr);
	long copylen = len;
	char *copyptr = osc_mem_alloc(len);
	memcpy(copyptr, ptr, len);
	t_osc_bndl_s *b = osc_bundle_s_alloc(copylen, copyptr);
	odisplay_newBundle(x, NULL, b);
#ifdef OMAX_PD_VERSION
    jbox_redraw((t_jbox *)x);
#else
	qelem_set(x->qelem);
#endif
}
Exemple #3
0
void odisplay_bundle2text(t_odisplay *x)
{
    critical_enter(x->lock);
	if(x->newbndl && x->bndl_s){
		long len = osc_bundle_s_getLen(x->bndl_s);
		char ptr[len];
		memcpy(ptr, osc_bundle_s_getPtr(x->bndl_s), len);
		critical_exit(x->lock);
		long bufpos = osc_bundle_s_nformat(NULL, 0, len, (char *)ptr, 0);
		char *buf = osc_mem_alloc(bufpos + 1);
        osc_bundle_s_nformat(buf, bufpos + 1, len, (char *)ptr, 0);
        if (bufpos != 0) {
		/*
            if(buf[bufpos - 2] == '\n'){
                buf[bufpos - 2] = '\0';
            }
		*/
        } else {
            *buf = '\0';
        }
		
#ifndef OMAX_PD_VERSION
		critical_enter(x->lock);
		if(x->text){
			osc_mem_free(x->text);
		}
		x->textlen = bufpos;
        x->text = buf;
		critical_exit(x->lock);
        object_method(jbox_get_textfield((t_object *)x), gensym("settext"), buf);
#else
        opd_textbox_resetText(x->textbox, buf);

#endif
		if(buf){
			//osc_mem_free(buf);
		}
		x->newbndl = 0;
	}
	critical_exit(x->lock);
}
Exemple #4
0
void *ocoll_new(t_symbol *msg, short argc, t_atom *argv){
	t_ocoll *x;
	if((x = (t_ocoll *)object_alloc(ocoll_class))){
		x->outlet = outlet_new((t_object *)x, NULL);
		x->buffer_len = 1024;
		if(argc){
			if(atom_gettype(argv) == A_LONG){
				//x->buffer_len = atom_getlong(argv);
				object_error((t_object *)x, "o.collect no longer takes an argument to specify its internal buffer size.");
				object_error((t_object *)x, "The buffer will expand as necessary.");
			}
		}
		x->buffer = (char *)osc_mem_alloc(x->buffer_len * sizeof(char));
		memset(x->buffer, '\0', x->buffer_len);
		x->buffer_pos = OSC_HEADER_SIZE;
		osc_bundle_s_setBundleID(x->buffer);
		critical_new(&(x->lock));
	}
    
	return(x);
}
Exemple #5
0
t_osc_bndl_u *osc_bundle_u_alloc(void)
{
	t_osc_bndl_u *b = osc_mem_alloc(sizeof(t_osc_bndl_u));
	memset(b, '\0', sizeof(t_osc_bndl_u));
	return b;
}
Exemple #6
0
t_osc_msg_s *osc_message_s_alloc(void)
{
	t_osc_msg_s *m = (t_osc_msg_s *)osc_mem_alloc(sizeof(t_osc_msg_s));
	osc_message_s_initMsg(m);
	return m;
}