Lines Matching refs:this

16    along with this program.  If not, see <https://www.gnu.org/licenses/>.
19 additional uses of the libraries contained in this release of SANE.
22 to produce an executable, this does not by itself cause the
33 those changes may be distributed with this exception intact.
36 whether to permit this exception to apply to your modifications.
37 If you do not wish that, delete this exception notice.
75 hp_data_resize (HpData this, size_t newsize)
78 if (this->bufsiz != newsize)
80 assert(!this->frozen);
81 this->buf = sanei_hp_realloc(this->buf, newsize);
82 assert(this->buf);
83 this->bufsiz = newsize;
88 hp_data_freeze (HpData this)
90 hp_data_resize(this, this->length);
91 this->frozen = 1;
95 hp_data_alloc (HpData this, size_t sz)
97 size_t newsize = this->bufsiz;
98 size_t offset = this->length;
112 while (newsize < this->length + sz)
114 hp_data_resize(this, newsize);
116 this->length += sz;
121 hp_data_data (HpData this, size_t offset)
123 assert(offset < this->length);
124 return (char *)this->buf + offset;
150 sanei_hp_data_destroy (HpData this)
152 sanei_hp_free(this->buf);
153 sanei_hp_free(this);
173 SANE_Status (*get)(HpAccessor this, HpData data, void * valp);
174 SANE_Status (*set)(HpAccessor this, HpData data, void * valp);
175 int (*getint)(HpAccessor this, HpData data);
176 void (*setint)(HpAccessor this, HpData data, int val);
180 sanei_hp_accessor_get (HpAccessor this, HpData data, void * valp)
182 if (!this->type->get)
184 return (*this->type->get)(this, data, valp);
188 sanei_hp_accessor_set (HpAccessor this, HpData data, void * valp)
190 if (!this->type->set)
192 return (*this->type->set)(this, data, valp);
196 sanei_hp_accessor_getint (HpAccessor this, HpData data)
198 assert (this->type->getint);
199 return (*this->type->getint)(this, data);
203 sanei_hp_accessor_setint (HpAccessor this, HpData data, int val)
205 assert (this->type->setint);
206 (*this->type->setint)(this, data, val);
210 sanei_hp_accessor_data (HpAccessor this, HpData data)
212 return hp_data_data(data, this->data_offset);
216 sanei__hp_accessor_data (HpAccessor this, HpData data)
218 return hp_data_data(data, this->data_offset);
222 sanei_hp_accessor_size (HpAccessor this)
224 return this->data_size;
250 hp_accessor_int_get (HpAccessor this, HpData data, void * valp)
252 *(SANE_Int*)valp = *(int *)hp_data_data(data, this->data_offset);
257 hp_accessor_int_set (HpAccessor this, HpData data, void * valp)
259 *(int *)hp_data_data(data, this->data_offset) = *(SANE_Int*)valp;
264 hp_accessor_int_getint (HpAccessor this, HpData data)
266 return *(int *)hp_data_data(data, this->data_offset);
270 hp_accessor_int_setint (HpAccessor this, HpData data, int val)
272 *(int *)hp_data_data(data, this->data_offset) = val;
299 hp_accessor_bool_get (HpAccessor this, HpData data, void * valp)
301 int val = *(int *)hp_data_data(data, this->data_offset);
307 hp_accessor_bool_set (HpAccessor this, HpData data, void * valp)
309 int * datap = hp_data_data(data, this->data_offset);
338 hp_accessor_fixed_get (HpAccessor this, HpData data, void * valp)
340 *(SANE_Fixed*)valp = *(SANE_Fixed *)hp_data_data(data, this->data_offset);
345 hp_accessor_fixed_set (HpAccessor this, HpData data, void * valp)
347 *(SANE_Fixed *)hp_data_data(data, this->data_offset) = *(SANE_Fixed*)valp;
381 hp_accessor_choice_get (HpAccessor this, HpData data, void * valp)
383 HpChoice choice = *(HpChoice *)hp_data_data(data, this->data_offset);
391 HpAccessorChoice this = (HpAccessorChoice)_this;
393 SANE_String_Const * strlist = this->strlist;
395 for (choice = this->choices; choice; choice = choice->next)
404 *(HpChoice *)hp_data_data(data, this->data_offset) = choice;
413 hp_accessor_choice_getint (HpAccessor this, HpData data)
415 HpChoice choice = *(HpChoice *)hp_data_data(data, this->data_offset);
422 HpAccessorChoice this = (HpAccessorChoice)_this;
425 SANE_String_Const * strlist = this->strlist;
427 for (choice = this->choices; choice; choice = choice->next)
439 *(HpChoice *)hp_data_data(data, this->data_offset) = choice;
445 *(HpChoice *)hp_data_data(data, this->data_offset) = first_choice;
451 sanei_hp_accessor_choice_maxsize (HpAccessorChoice this)
456 for (choice = this->choices; choice; choice = choice->next)
463 sanei_hp_accessor_choice_strlist (HpAccessorChoice this,
469 int old_val = hp_accessor_choice_getint((HpAccessor)this, data);
473 for (choice = this->choices; choice; choice = choice->next)
475 this->strlist[count++] = choice->name;
476 this->strlist[count] = 0;
478 hp_accessor_choice_setint((HpAccessor)this, data, old_val);
481 return this->strlist;
494 _HpAccessorChoice this;
500 this = sanei_hp_alloc(sizeof(*this) + (count+1) * sizeof(*this->strlist));
501 if (!this)
504 this->type = &type;
505 this->data_offset = hp_data_alloc(data, this->data_size = sizeof(HpChoice));
506 this->choices = choices;
507 this->strlist = (SANE_String_Const *)(this + 1);
510 for (choice = this->choices; choice; choice = choice->next)
511 this->strlist[count++] = choice->name;
512 this->strlist[count] = 0;
514 return (HpAccessor)this;
534 unsigned short (*unscale)(HpAccessorVector this, SANE_Fixed fval);
535 SANE_Fixed (*scale)(HpAccessorVector this, unsigned short val);
543 sanei_hp_accessor_vector_length (HpAccessorVector this)
545 return this->length;
549 sanei_hp_accessor_vector_minval (HpAccessorVector this)
551 return this->fmin;
555 sanei_hp_accessor_vector_maxval (HpAccessorVector this)
557 return this->fmax;
561 _v_get (HpAccessorVector this, const unsigned char * data)
565 if (this->mask <= 255)
574 return val & this->mask;
578 _v_set (HpAccessorVector this, unsigned char * data, unsigned short val)
580 val &= this->mask;
582 if (this->mask <= 255)
601 HpAccessorVector this = (HpAccessorVector)_this;
603 const SANE_Fixed * end = ptr + this->length;
604 const unsigned char * data = hp_data_data(d, this->data_offset);
606 data += this->offset;
610 *ptr++ = (*this->scale)(this, _v_get(this, data));
611 data += this->stride;
619 HpAccessorVector this = (HpAccessorVector)_this;
621 const SANE_Fixed * end = ptr + this->length;
622 unsigned char * data = hp_data_data(d, this->data_offset);
624 data += this->offset;
628 if (*ptr < this->fmin)
629 *ptr = this->fmin;
630 if (*ptr > this->fmax)
631 *ptr = this->fmax;
633 _v_set(this, data, (*this->unscale)(this, *ptr++));
635 data += this->stride;
641 _vector_unscale (HpAccessorVector this, SANE_Fixed fval)
643 unsigned short max_val = this->mask;
648 _vector_scale (HpAccessorVector this, unsigned short val)
650 unsigned short max_val = this->mask;
688 _gamma_vector_unscale (HpAccessorVector __sane_unused__ this, SANE_Fixed fval)
692 unscaled = 255 - unscaled; /* Don't know why. But this is how it works. */
698 _gamma_vector_scale (HpAccessorVector __sane_unused__ this, unsigned short val)
701 val = 255-val; /* Don't know why. But this is how it works. */
711 _HpAccessorVector this =
715 if (!this)
718 this->offset += this->stride * (this->length - 1);
719 this->stride = -this->stride;
721 this->scale = _gamma_vector_scale;
722 this->unscale = _gamma_vector_unscale;
724 this->fmin = SANE_FIX(0.0);
725 this->fmax = SANE_FIX(255.0);
727 return (HpAccessor)this;
731 _matrix_vector_unscale (HpAccessorVector this, SANE_Fixed fval)
733 unsigned short max_val = this->mask >> 1;
734 unsigned short sign_bit = this->mask & ~max_val;
745 return sign | ((fval * max_val + this->fmax / 2) / this->fmax);
749 _matrix_vector_scale (HpAccessorVector this, unsigned short val)
751 unsigned short max_val = this->mask >> 1;
752 unsigned short sign_bit = this->mask & ~max_val;
758 fval = (this->fmax * (val & max_val) + max_val / 2) / max_val;
770 _HpAccessorVector this =
773 if (!this)
776 this->scale = _matrix_vector_scale;
777 this->unscale = _matrix_vector_unscale;
779 this->fmax = depth == 10 ? SANE_FIX(4.0) : SANE_FIX(2.0);
780 this->fmax *= (this->mask >> 1);
781 this->fmax >>= (depth - 1);
782 this->fmin = - this->fmax;
784 return (HpAccessor)this;
791 _HpAccessorVector this = sanei_hp_memdup(super, sizeof(*this));
793 if (!this)
797 assert(this->length % nchan == 0);
799 this->length /= nchan;
801 if (this->stride < 0)
802 this->offset += (nchan - chan - 1) * this->stride;
804 this->offset += chan * this->stride;
806 this->stride *= nchan;
808 return (HpAccessor)this;
824 HpAccessor this;
834 HpAccessorGeometry this = (HpAccessorGeometry)_this;
838 sanei_hp_accessor_get(this->other, data, &limit);
839 if (this->is_br ? *valp < limit : *valp > limit)
841 return sanei_hp_accessor_set(this->this, data, valp);
854 HpAccessorGeometry this = (HpAccessorGeometry)_this;
856 int res = sanei_hp_accessor_getint(this->resolution,
861 sanei_hp_accessor_get(this->this, data, &this_val);
863 if (this->is_br)
866 sanei_hp_accessor_get(this->other, data, &other_val);
894 new->this = val;