IntBuffer err = Buffers.newDirectIntBuffer(1);
B host_ptr = null;
if(isHostPointerFlag(flags)) {
host_ptr = directBuffer;
}
long id = cl.clCreateImage2D(context.ID, flags, format.getFormatImpl(), width, height, rowPitch, host_ptr, err);
checkForError(err.get(), "can not create 2d image");
return new CLImage2d<B>(context, directBuffer, format, width, height, id, flags);
}