// this call must be thread safe - done by implementation
return useFactory.open(null, ncd, analysis, task, errlog);
}
static private boolean isGrid(java.util.List<CoordinateSystem> csysList) {
CoordinateSystem use = null;
for (CoordinateSystem csys : csysList) {
if (use == null) use = csys;
else if (csys.getCoordinateAxes().size() > use.getCoordinateAxes().size())
use = csys;
}
if (use == null) return false;
CoordinateAxis lat = use.getLatAxis();
CoordinateAxis lon = use.getLonAxis();
if ((lat != null) && (lat.getSize() <= 1)) return false; // COARDS singletons
if ((lon != null) && (lon.getSize() <= 1)) return false;
// hueristics - cant say i like this, multidim point features could eaily violate
return (use.getRankDomain() > 2) && (use.getRankDomain() <= use.getRankRange());
}