What if it were float16? or int32 or any other data type that is not float32. It would be useful to define a dictionary in the raster namespace which maps numpy data types to gdal data types. If there is a data type not in that dictionary, raise an exception.