protected int calcStructureSize() { int structureSize = 0; for (Variable member : members) { structureSize += member.getSize() * member.getElementSize(); } return structureSize; }
protected int calcStructureSize() { int structureSize = 0; for (Variable member : members) { structureSize += member.getSize() * member.getElementSize(); } return structureSize; }
protected int calcStructureSize() { int structureSize = 0; for (Variable member : members) { structureSize += member.getSize() * member.getElementSize(); } return structureSize; }
private Array convertStringToChar(Array data, Variable ncVar) { String s = (String) data.getObject(Index.scalarIndexImmutable); int total = (int) ncVar.getSize(); char[] storage = new char[total]; int len = Math.min( s.length(), total); for (int k=0; k<len; k++) storage[k] = s.charAt(k); return Array.factory( DataType.CHAR, ncVar.getShape(), storage); }
@Override public boolean isChunked(Variable v) { if (v.isUnlimited()) return true; long size = v.getSize() * v.getElementSize(); return size >= DEFAULT_CHUNKSIZE; }
@Override public Array readData(Variable v2, Section section) throws IOException, InvalidRangeException { Vinfo vinfo = (Vinfo) v2.getSPobject(); int vlen = (int) v2.getSize(); int len = (int) section.computeSize(); if (vlen == len) // entire array return readDataAll(vinfo.g4.grpid, vinfo.varid, vinfo.typeid, v2.getShapeAsSection()); //if(!section.isStrided()) // optimisation for unstrided section // return readUnstrided(vinfo.grpid, vinfo.varid, vinfo.typeid, section); return readDataSection(vinfo.g4.grpid, vinfo.varid, vinfo.typeid, section); }
private void check(NetcdfFile ncfile, int n) throws IOException, InvalidRangeException { Variable v = ncfile.findVariable("time"); assert v != null; System.out.printf(" time= %s%n", v.getNameAndDimensions()); assert v.getSize() == n : v.getSize(); v = ncfile.findVariable("eta"); assert v != null; assert v.getRank() == 3 : v.getRank(); }
@Override public long[] computeChunking(Variable v) { // use entire if small enough long size = v.getSize() * v.getElementSize(); if (size < DEFAULT_CHUNKSIZE) return convert(v.getShape()); // all of it if (v.isUnlimited()) return _computeChunkingUnlimited(v); return _computeChunking(v); }
@Test public void testGaussianLats() throws IOException { String filename = TestDir.cdmUnitTestDir + "formats/grib1/CCCma_SRES_A2_HGT500_1-10.grb"; System.out.println("\n\nReading File " + filename); NetcdfFile ncfile = NetcdfFile.open(filename); Group best = ncfile.findGroup("Best"); Variable lat = ncfile.findVariable(best, "lat"); assert lat.getSize() == 48; ncfile.close(); }
void CheckInt32( Variable v) throws IOException { // int32 //assert(null != (v = dodsfile.findVariable("types.integers.i32"))); // assert v.getName().equals("types.integers.i32"); assert v.getRank() == 0; assert v.getSize() == 1; assert v.getDataType() == DataType.INT; CheckInt32Value(v.read()); }
void CheckByte( Variable v) throws IOException { assert v.getRank() == 0; assert v.getSize() == 1; assert v.getDataType() == DataType.UBYTE; CheckByteValue(v.read()); }
void CheckInt16( Variable v) throws IOException { // int16 //assert(null != (v = dodsfile.findVariable("types.integers.i16"))); //assert v.getName().equals("types.integers.i16"); assert v.getRank() == 0; assert v.getSize() == 1; assert v.getDataType() == DataType.SHORT; CheckInt16Value(v.read()); }
void CheckUInt32( Variable v) throws IOException { // uint32 //assert(null != (v = dodsfile.findVariable("types.integers.ui32"))); //assert v.getName().equals("types.integers.ui32"); assert v.getRank() == 0; assert v.getSize() == 1; assert v.getDataType() == DataType.UINT : v.getDataType(); CheckUInt32Value(v.read()); }
void CheckUint16( Variable v) throws IOException { // uint16 //assert(null != (v = dodsfile.findVariable("types.integers.ui16"))); //assert v.getName().equals("types.integers.ui16"); assert v.getRank() == 0; assert v.getSize() == 1; assert v.getDataType() == DataType.USHORT : v.getDataType(); CheckUInt16Value(v.read()); }
void CheckLong32( Variable v) throws IOException { // uint32 //assert(null != (v = dodsfile.findVariable("types.integers.ui32"))); //assert v.getName().equals("types.integers.ui32"); assert v.getRank() == 0; assert v.getSize() == 1; assert v.getDataType() == DataType.LONG : v.getDataType(); CheckLongValue(v.read()); }
void CheckF( Variable v) throws IOException { // float //assert(null != (v = dodsfile.findVariable("types.floats.f32"))); //assert v.getName().equals("types.floats.f32"); assert v.getRank() == 0; assert v.getSize() == 1; assert v.getDataType() == DataType.FLOAT : v.getDataType(); CheckFValue(v.read()); }
void CheckUint32( Variable v) throws IOException { // uint32 //assert(null != (v = dodsfile.findVariable("types.integers.ui32"))); //assert v.getName().equals("types.integers.ui32"); assert v.getRank() == 0; assert v.getSize() == 1; assert v.getDataType() == DataType.UINT : v.getDataType(); CheckUint32Value(v.read()); }
void CheckUint16( Variable v) throws IOException { // uint16 //assert(null != (v = dodsfile.findVariable("types.integers.ui16"))); //assert v.getName().equals("types.integers.ui16"); assert v.getRank() == 0; assert v.getSize() == 1; assert v.getDataType() == DataType.USHORT : v.getDataType(); CheckUInt16Value(v.read()); }
void CheckD( Variable v) throws IOException { // double //assert(null != (v = dodsfile.findVariable("types.floats.f64"))); //assert v.getName().equals("types.floats.f64"); assert v.getRank() == 0; assert v.getSize() == 1; assert v.getDataType() == DataType.DOUBLE : v.getDataType(); CheckDValue(v.read()); }
static public void testVarMatchesData( Variable v, boolean showStatus) throws IOException { Array data = v.read(); assert data.getSize() == v.getSize(); assert data.getElementType() == v.getDataType().getPrimitiveClassType(); assert data.getRank() == v.getRank(); int[] dataShape = data.getShape(); int[] varShape = v.getShape(); for (int i=0; i<data.getRank(); i++) assert dataShape[i] == varShape[i]; if (showStatus) logger.debug( "**** testReadData done on {}", v.getFullName()); } }