Пример #1
0
static void
time_read_scanline_at_a_time ()
{
    ImageInput *in = ImageInput::open (input_filename.c_str());
    ASSERT (in);
    const ImageSpec &spec (in->spec());
    size_t pixelsize = spec.nchannels * sizeof(float);
    imagesize_t scanlinesize = spec.width * pixelsize;
    for (int y = 0; y < spec.height;  ++y) {
        in->read_scanline (y+spec.y, 0, TypeDesc::TypeFloat,
                           &buffer[scanlinesize*y]);
    }
    in->close ();
    delete in;
}