void* kdb_malloc(int size) { if (db_server) { if (kdb_server_get_malloc(db_server)) { return kdb_server_get_malloc(db_server)(size); } } return create_raw(size); }
buffer_t* buffer_create(uint32_t size) { buffer_t* sb = create(buffer_t); assert(sb); sb->ptr = create_raw(size); assert(sb->ptr); sb->pos = 0; sb->len = size; return sb; }
void _trie_node_set_real_key(ktrie_node_t* node, const char* real_key) { int key_len = 0; node->real_key = 0; verify(node); verify(real_key); key_len = strlen(real_key) + 1; node->real_key = create_raw(key_len); memcpy(node->real_key, real_key, key_len); node->real_key[key_len - 1] = 0; }
kringbuffer_t* ringbuffer_create(uint32_t size) { kringbuffer_t* rb = create(kringbuffer_t); verify(rb); memset(rb, 0, sizeof(kringbuffer_t)); rb->lock_type = 0; rb->max_size = size; rb->ptr = create_raw(size); verify(rb->ptr); rb->lock_size = 0; rb->read_pos = 0; rb->write_pos = 0; rb->count = 0; return rb; }
kbuffer_t* knet_buffer_create(uint32_t size) { kbuffer_t* sb = create(kbuffer_t); verify(sb); if (!sb) { return 0; } sb->ptr = create_raw(size); verify(sb->ptr); if (!sb->ptr) { knet_buffer_destroy(sb); } sb->pos = 0; sb->len = size; return sb; }
int grab_one(struct vd_video *vd) { char bufo[256]; char xten[4][5] = {"-","raw", "pnm", "jpg"}; #ifdef STAMP time_t t; struct tm *tm; char stringo[128]; #endif /* gamma test */ /* unsigned char g_table[256]; gamma_lookup(0.2, g_table); */ if (-1 == ioctl(vd->grab_fd,VIDIOCMCAPTURE,&(vd->grab_buf))) { perror("ioctl VIDIOCMCAPTURE"); exit(-1); } if (-1 == ioctl(vd->grab_fd,VIDIOCSYNC,&(vd->grab_buf))) { perror("ioctl VIDIOCSYNC"); exit(-1); } vd->image=vd->grab_data; if (vd->w == 3 && vd->grab_data && (vd->img_format != VD_TGA_24)) { /* original or faster swap function */ #ifdef BGR2RGB bgr2rgb(vd->grab_data, vd->grab_buf.width * vd->grab_buf.height); #else swap_rgb24(vd->grab_data, vd->grab_buf.width * vd->grab_buf.height); #endif } /* HOOK for effects */ /* Uncomment and test the effects */ /* try another order and parameters */ /* effects test */ /* threshold (vd, 30); */ //sobel(vd); /*gamma_apply(vd, g_table); */ /* laplace(vd); */ /* noise (vd, 0.05); */ //negative(vd); /* mirror(vd); */ /* lowpass(vd); */ /* highpass(vd); */ /* channel_threshold(vd); */ /* predator(vd); */ /* posterize(vd, 3); */ //threshold (vd, 200); // sobel(vd); //negative(vd); //mark_areas(vd); /* end test */ #ifdef STAMP /* initial tests for the timestamp function */ time (&t); tm = localtime (&t); if (vd->stamp) { // validation if (vd->stamp_scale_w <= 0) vd->stamp_scale_w=1; if (vd->stamp_scale_h <= 0) vd->stamp_scale_h=1; strftime (stringo, sizeof (stringo), vd->stamp, tm); rgb24_printf(vd->stamp_pos_x, vd->stamp_pos_y, vd->stamp_scale_w, vd->stamp_scale_h, vd, "%s", stringo); } #endif /* * timestamp * */ if (vd->tstampname) { sprintf(bufo, "%d-0.%s", (unsigned int)t, xten[vd->img_format]); #ifdef DEBUG fprintf (stderr,"filename: %s \n", bufo); #endif strncpy (vd->v_filename, bufo, strlen(bufo)); } vd->image=vd->grab_data; /* compatability */ switch (vd->img_format) { case VD_RAW: create_raw(vd); break; case VD_PNM: create_pnm(vd); break; #ifdef HASJPEG case VD_JPG: create_jpeg(vd); break; #endif case VD_TGA_24: create_targa24(vd); break; } return 1; }