662 {
664 uint8_t *
data = NULL;
666 int width = 5;
667 int height = 5;
668 int err = 0;
669 int clamped = 0;
670 double val = 0;
673
674
676 CU_ASSERT(data != NULL);
678
680 width, height,
681 pixtype,
682 0, 0,
683 data
684 );
685 CU_ASSERT(band != NULL);
688
691 CU_ASSERT(!clamped);
693 CU_ASSERT_DOUBLE_EQUAL(val, 1, DBL_EPSILON);
694
697 CU_ASSERT(!clamped);
699 CU_ASSERT_DOUBLE_EQUAL(val, 0, DBL_EPSILON);
700
703 CU_ASSERT(!clamped);
705 CU_ASSERT_DOUBLE_EQUAL(val, 31, DBL_EPSILON);
706
709 CU_ASSERT(!clamped);
711 CU_ASSERT_DOUBLE_EQUAL(val, 255, DBL_EPSILON);
712
715 CU_ASSERT(!clamped);
717 CU_ASSERT_DOUBLE_EQUAL(val, 65535, DBL_EPSILON);
718
721 CU_ASSERT(clamped);
722
723
726 CU_ASSERT(clamped);
727
728
731
738 CU_ASSERT_DOUBLE_EQUAL(val, 255, DBL_EPSILON);
739
744 CU_ASSERT_DOUBLE_EQUAL(val, 65535, DBL_EPSILON);
745 }
746 }
747
749}
rt_band rt_band_new_inline(uint16_t width, uint16_t height, rt_pixtype pixtype, uint32_t hasnodata, double nodataval, uint8_t *data)
Create an in-db rt_band with no data.
void rt_band_set_ownsdata_flag(rt_band band, int flag)
void * rtalloc(size_t size)
Wrappers used for managing memory.
uint16_t rt_band_get_width(rt_band band)
Return width of this band.
rt_errorstate rt_band_get_pixel(rt_band band, int x, int y, double *value, int *nodata)
Get pixel value.
rt_errorstate rt_band_set_nodata(rt_band band, double val, int *converted)
Set nodata value.
rt_errorstate rt_band_set_pixel(rt_band band, int x, int y, double val, int *converted)
Set single pixel's value.
void rt_band_destroy(rt_band band)
Destroy a raster band.
rt_errorstate rt_band_get_nodata(rt_band band, double *nodata)
Get NODATA value.
int rt_band_get_ownsdata_flag(rt_band band)
Return 0 (FALSE) or non-zero (TRUE) indicating if rt_band is responsible for managing the memory for ...
uint16_t rt_band_get_height(rt_band band)
Return height of this band.
int rt_pixtype_size(rt_pixtype pixtype)
Return size in bytes of a value in the given pixtype.