Lines Matching refs:ps
157 SCSISource *ps = (SCSISource *) pself;
158 return ps->pss->bytes_remaining + (ps->scsi_buf_max - ps->scsi_buf_pos);
165 SCSISource *ps = (SCSISource *) pself;
176 SANE_Int ndata = ps->scsi_buf_max - ps->scsi_buf_pos;
180 ps->pss->expected_read_bytes = MIN((size_t)ps->absolute_max,
181 ps->pss->bytes_remaining);
182 ps->scsi_buf_pos = 0;
183 ps->scsi_buf_max = 0;
184 status = scsi_read (ps->pss, READ_IMAGE);
187 ps->scsi_buf_max = ps->pss->read_bytes;
188 ndata = ps->pss->read_bytes;
189 ps->pss->bytes_remaining -= ps->pss->read_bytes;
191 me, ps->scsi_buf_pos, ps->scsi_buf_max, (u_long) ps->pss->expected_read_bytes,
192 (u_long) ps->pss->read_bytes);
195 memcpy (pbuf, ps->pss->buf + ps->scsi_buf_pos, (size_t)ndata);
197 ps->scsi_buf_pos += ndata;
240 FDSource *ps = (FDSource *) pself;
241 return ps->bytes_remaining;
247 FDSource *ps = (FDSource *) pself;
254 SANE_Int bytes_read = read (ps->fd, pbuf, remaining);
273 ps->bytes_remaining -= bytes_read;
321 BufSource *ps = (BufSource *) pself;
322 return ps->buf_size - ps->buf_pos;
329 BufSource *ps = (BufSource *) pself;
338 memcpy (pbuf, ps->buf + ps->buf_pos, to_move);
339 ps->buf_pos += to_move;
444 TxSource *ps = (TxSource *) pself;
445 return ps->psub->remaining(ps->psub);
450 TxSource *ps = (TxSource *) pself;
451 return ps->psub->bytesPerLine(ps->psub);
456 TxSource *ps = (TxSource *) pself;
457 return ps->psub->pixelsPerLine(ps->psub);
462 TxSource *ps = (TxSource *) pself;
463 return ps->psub->get(ps->psub, pbuf, plen);
468 TxSource *ps = (TxSource *) pself;
469 SANE_Status status = ps->psub->done(ps->psub);
470 free(ps->psub);
471 ps->psub = NULL;
513 Expander *ps = (Expander *) pself;
516 SANE_Int whole_channels = sub_remaining/ps->ch_size;
519 if (ps->ch_pos < ps->ch_size)
521 SANE_Int bits_covered = MAX((ps->ch_pos - 1)*8, 0) + 7 - ps->bit;
535 Expander *ps = (Expander *) pself;
544 if (ps->ch_pos == ps->ch_ndata)
548 SANE_Int ndata = ps->ch_size - ps->ch_ndata;
551 ps->ch_ndata = 0;
552 ps->ch_pos = 0;
553 ndata = ps->ch_size;
555 status = TxSource_get(pself, ps->ch_buf + ps->ch_pos, &ndata);
560 ps->ch_ndata += ndata;
561 if (ps->ch_pos == (ps->ch_size - 1))
562 ps->last_bit = ps->last_last_bit;
564 ps->last_bit = 0;
565 ps->bit = 7;
567 *pbuf = ((ps->ch_buf[ps->ch_pos] >> ps->bit) & 0x01) ? 0xFF : 0x00;
571 if (ps->bit == ps->last_bit)
573 ps->bit = 7;
574 ps->ch_pos++;
575 if (ps->ch_pos == (ps->ch_size - 1))
576 ps->last_bit = ps->last_last_bit;
578 ps->last_bit = 0;
582 ps->bit--;
592 Expander *ps = (Expander *) pself;
594 free(ps->ch_buf);
595 ps->ch_buf = NULL;
596 ps->ch_size = 0;
597 ps->ch_pos = 0;
696 Deinterlacer *ps = (Deinterlacer *) pself;
698 result += ps->ch_ndata - ps->ch_pos;
704 Deinterlacer *ps = (Deinterlacer *) pself;
711 me, remaining, pself->remaining(pself), ps->ch_ndata, ps->ch_pos);
718 if (ps->ch_pos % (ps->ch_line_size) == ps->ch_ndata % (ps->ch_line_size) )
722 SANE_Int ndata = (ps->ch_line_size) - ps->ch_ndata % (ps->ch_line_size);
723 if (ps->ch_pos >= ps->ch_size)
726 ps->ch_ndata = 0;
727 ps->ch_pos = 0;
728 ndata = ps->ch_line_size;
730 status = TxSource_get(pself, ps->ch_buf + ps->ch_pos, &ndata);
735 ps->ch_ndata += ndata;
738 if (ps->ch_lineart)
740 if (ps->ch_past_init)
742 if (ps->ch_shift_even)
746 *pbuf = (ps->ch_buf[ps->ch_pos] & 0x55) |
747 (ps->ch_buf[(ps->ch_pos + (ps->ch_line_size)) % ps->ch_size] & 0xaa);
752 *pbuf = (ps->ch_buf[ps->ch_pos] & 0xaa) |
753 (ps->ch_buf[(ps->ch_pos + (ps->ch_line_size)) % ps->ch_size] & 0x55);
759 if (ps->ch_shift_even)
762 SANE_Byte valid_pixel = ps->ch_buf[ps->ch_pos] & 0x55;
769 SANE_Byte valid_pixel = ps->ch_buf[ps->ch_pos] & 0xaa;
776 if ((ps->ch_shift_even && ((ps->ch_pos/ps->ch_bytes_per_pixel) % 2 == 0)) ||
777 (!ps->ch_shift_even && ((ps->ch_pos/ps->ch_bytes_per_pixel) % 2 == 1)))
780 if (ps->ch_past_init){
783 *pbuf = ps->ch_buf[(ps->ch_pos + (ps->ch_line_size)) % ps->ch_size];
789 if (ps->ch_pos % (ps->ch_line_size) == 0 )
790 *pbuf = ps->ch_buf[ps->ch_pos+ps->ch_bytes_per_pixel];
792 *pbuf = ps->ch_buf[ps->ch_pos-ps->ch_bytes_per_pixel];
796 *pbuf = ps->ch_buf[ps->ch_pos];
800 if (ps->ch_pos >= ps->ch_line_size * ps->ch_offset)
801 ps->ch_past_init = SANE_TRUE;
805 ps->ch_pos++;
817 (u_long) ps->pss->bytes_remaining);
823 Deinterlacer *ps = (Deinterlacer *) pself;
825 free(ps->ch_buf);
826 ps->ch_buf = NULL;
827 ps->ch_size = 0;
828 ps->ch_line_size = 0;
829 ps->ch_pos = 0;
939 RGBRouter *ps = (RGBRouter *) pself;
941 if (ps->round_req == ps->cb_size)
942 remaining = TxSource_remaining(pself) - ps->cb_size + ps->cb_line_size;
944 remaining = TxSource_remaining(pself) + ps->cb_line_size - ps->pos;
952 RGBRouter *ps = (RGBRouter *) pself;
965 me, remaining, pself->remaining(pself), ps->round_req, ps->cb_size);
967 if (ps->pos >= ps->cb_line_size)
973 run_req = ps->round_req - ps->round_read;
975 ps->cbuf + ps->cb_start + ps->round_read,
985 ps->round_read += run_req;
987 while ((ps->round_req > ps->round_read) && !cancelRead);
990 ps->cb_start = (ps->cb_start + ps->round_read)%ps->cb_size;
991 s = ps->xbuf;
992 r = (ps->cb_start + ps->ch_offset[0])%ps->cb_size;
993 g = (ps->cb_start + ps->ch_offset[1])%ps->cb_size;
994 b = (ps->cb_start + ps->ch_offset[2])%ps->cb_size;
995 for (i = 0; i < ps->cb_line_size/3; i++)
999 *s++ = ps->cbuf[r++];
1000 *s++ = ps->cbuf[g++];
1001 *s++ = ps->cbuf[b++];
1005 t = (((ps->cbuf[r+1] << 8) | ps->cbuf[r]) & 0xfff) << 4;
1009 t = (((ps->cbuf[g+1] << 8) | ps->cbuf[g]) & 0xfff) << 4;
1013 t = (((ps->cbuf[b+1] << 8) | ps->cbuf[b]) & 0xfff) << 4;
1021 *s++ = ps->cbuf[r++];
1022 *s++ = ps->cbuf[r++];
1023 *s++ = ps->cbuf[g++];
1024 *s++ = ps->cbuf[g++];
1025 *s++ = ps->cbuf[b++];
1026 *s++ = ps->cbuf[b++];
1033 ps->pos = 0;
1036 ps->round_req = ps->cb_line_size;
1037 ps->round_read =0;
1041 while (remaining > 0 && ps->pos < ps->cb_line_size)
1043 *pbuf++ = ps->xbuf[ps->pos++];
1055 (u_long) ps->pss->bytes_remaining);
1061 RGBRouter *ps = (RGBRouter *) pself;
1064 free(ps->cbuf);
1065 free(ps->xbuf);
1066 ps->cbuf = NULL;
1067 ps->cb_start = -1;
1068 ps->pos = 0;