Lines Matching refs:side
200 - add back-side gray mirroring code for DR-2580C
219 - add side option
249 - remove padding dumb scanners add to top of front side
314 - DR-C125 adds duplex padding on back side
332 - fixed-width scanners were calculating left-side offset incorrectly in color
2879 opt->name = "side";
2880 opt->title = "Duplex side";
2881 opt->desc = "Tells which side (0=front, 1=back) of a duplex scan the next call to sane_read will return.";
3484 *val_p = s->side;
5328 DBG (15, "started=%d, side=%d, source=%d\n",
5329 s->started, s->side, s->u.source);
5337 /* not finished with current side, error */
5338 if (s->started && !s->u.eof[s->side]) {
5346 /* load side marker */
5348 s->side = SIDE_BACK;
5351 s->side = SIDE_FRONT;
5512 s->side = !s->side;
5526 /* don't call object pos or scan on back side of duplex scan */
5527 if(s->side == SIDE_FRONT || s->s.source == SOURCE_ADF_BACK || s->s.source == SOURCE_CARD_BACK){
5583 DBG (15, "started=%d, side=%d, source=%d\n",
5584 s->started, s->side, s->u.source);
5594 while(!s->s.eof[s->side] && !ret){
5609 buffer_deskew(s,s->side);
5612 buffer_crop(s,s->side);
5615 buffer_despeck(s,s->side);
5622 if(buffer_isblank(s,s->side)){
5623 s->u.eof[s->side] = 1;
5709 int side;
5713 for(side=0;side<2;side++){
5716 if (s->buffers[side]) {
5717 DBG (15, "image_buffers: free buffer %d.\n",side);
5718 free(s->buffers[side]);
5719 s->buffers[side] = NULL;
5723 if(s->i.bytes_tot[side] && setup){
5724 s->buffers[side] = calloc (1,s->i.bytes_tot[side]);
5725 if (!s->buffers[side]) {
5726 DBG (5, "image_buffers: Error, no buffer %d.\n",side);
5995 if(s->u.bytes_sent[s->side] == s->i.bytes_tot[s->side]){
5996 s->u.eof[s->side] = 1;
6026 if(!s->s.eof[s->side]){
6027 ret = read_from_scanner(s, s->side, 0);
6029 DBG(5,"sane_read: side %d returning %d\n",s->side,ret);
6033 if(s->s.eof[s->side]){
6035 DBG(15,"sane_read: side %d counter %d\n",s->side,s->prev_page);
6041 ret = read_from_buffer(s,buf,max_len,len,s->side);
6060 read_from_scanner(struct scanner *s, int side, int exact)
6071 size_t remain = s->s.bytes_tot[side] - s->s.bytes_sent[side];
6090 side, s->s.bytes_tot[side], s->s.bytes_sent[side],
6186 copy_simplex(s,in,inLen,side);
6205 s->s.bytes_tot[side] = s->s.bytes_sent[side];
6206 s->i.bytes_tot[side] = s->i.bytes_sent[side];
6207 s->u.bytes_tot[side] = s->i.bytes_sent[side];
6212 fill_image(s,side);
6215 s->i.eof[side] = 1;
6216 s->s.eof[side] = 1;
6221 s->s.bytes_tot[side], s->s.bytes_sent[side], s->s.eof[side],
6222 s->u.bytes_tot[side], s->u.bytes_sent[side], s->u.eof[side]);
6351 * descrambling it, and putting it in the right side buffer */
6354 copy_simplex(struct scanner *s, unsigned char * buf, int len, int side)
6366 int inter = get_color_inter(s,side,s->s.dpi_x);
6371 memcpy(s->buffers[side]+s->i.bytes_sent[side], buf, len);
6372 s->i.bytes_sent[side] += len;
6373 s->s.bytes_sent[side] += len;
6385 int lineNum = s->s.bytes_sent[side] / bwidth;
6388 s->s.bytes_sent[side] += bwidth;
6391 if ( lineNum < s->i.skip_lines[side]
6392 || lineNum - s->i.skip_lines[side] >= s->i.height
6401 switch (s->gray_interlace[side]) {
6575 if(s->f_offset[side]){
6578 int curr = line[j] - s->f_offset[side][j];
6584 if(s->f_gain[side]){
6587 int curr = line[j] * 240/s->f_gain[side][j];
6602 ret = copy_line(s,line,side);
6741 copy_line(struct scanner *s, unsigned char * buff, int side)
6759 memcpy(s->buffers[side]+s->i.bytes_sent[side], buff, sbwidth);
6760 s->i.bytes_sent[side] += sbwidth;
6776 if(must_downsample(s) && s->dropout_color[side]){
6777 switch(s->dropout_color[side]){
6855 /* scan is wider than user wanted, skip some pixels on left side */
6864 memcpy(s->buffers[side]+s->i.bytes_sent[side], line+(offset*3), ibwidth);
6865 s->i.bytes_sent[side] += ibwidth;
6871 s->buffers[side][s->i.bytes_sent[side]++]
6891 s->buffers[side][s->i.bytes_sent[side]++] = curr;
6905 SANE_Int * len, int side)
6909 int remain = s->i.bytes_sent[side] - s->u.bytes_sent[side];
6925 DBG(15, "read_from_buffer: si:%d to:%d tx:%d bu:%d pa:%d\n", side,
6926 s->i.bytes_tot[side], s->u.bytes_sent[side], max_len, bytes);
6929 memcpy(buf,s->buffers[side]+s->u.bytes_sent[side],bytes);
6930 s->u.bytes_sent[side] += bytes;
6939 fill_image(struct scanner *s,int side)
6944 int fill_bytes = s->i.bytes_tot[side]-s->i.bytes_sent[side];
6950 DBG (15, "fill_image: side:%d bytes:%d bg_color:%02x\n", side, fill_bytes, bg_color);
6953 memset(s->buffers[side]+s->i.bytes_sent[side],bg_color,fill_bytes);
6956 s->i.bytes_sent[side] = s->i.bytes_tot[side];
6957 s->s.bytes_sent[side] = s->s.bytes_tot[side];
7846 int side;
7850 for(side=0;side<2;side++){
7852 if (s->f_offset[side]) {
7853 DBG (15, "offset_buffers: free f_offset %d.\n",side);
7854 free(s->f_offset[side]);
7855 s->f_offset[side] = NULL;
7859 s->f_offset[side] = calloc (1,s->s.Bpl);
7860 if (!s->f_offset[side]) {
7861 DBG (5, "offset_buffers: error, no f_offset %d.\n",side);
7879 int side;
7883 for(side=0;side<2;side++){
7885 if (s->f_gain[side]) {
7886 DBG (15, "gain_buffers: free f_gain %d.\n",side);
7887 free(s->f_gain[side]);
7888 s->f_gain[side] = NULL;
7892 s->f_gain[side] = calloc (1,s->s.Bpl);
7893 if (!s->f_gain[side]) {
7894 DBG (5, "gain_buffers: error, no f_gain %d.\n",side);
8860 get_color_inter(struct scanner *s, int side, int res)
8871 return s->color_interlace[side];
9027 buffer_deskew(struct scanner *s, int side)
9038 if(s->side == SIDE_FRONT || s->u.source == SOURCE_ADF_BACK || s->deskew_stat){
9041 &s->s_params,s->buffers[side],s->u.dpi_x,s->u.dpi_y,
9055 ret = sanei_magic_rotate(&s->s_params,s->buffers[side],
9073 buffer_crop(struct scanner *s, int side)
9082 &s->s_params,s->buffers[side],s->u.dpi_x,s->u.dpi_y,
9095 * is a multiple of 8 pixels, by adjusting the right side */
9101 ret = sanei_magic_crop(&s->s_params,s->buffers[side],
9116 s->i.bytes_tot[side] = s->s_params.lines * s->s_params.bytes_per_line;
9117 s->i.bytes_sent[side] = s->i.bytes_tot[side];
9118 s->u.bytes_sent[side] = 0;
9129 buffer_despeck(struct scanner *s, int side)
9137 ret = sanei_magic_despeck(&s->s_params,s->buffers[side],s->swdespeck);
9151 buffer_isblank(struct scanner *s, int side)
9160 ret = sanei_magic_isBlank2(&s->s_params, s->buffers[side],