visad/src/main/java/ucar/nc2/iosp/gempak/GempakSoundingFileReader.java
protected boolean init(boolean fullCheck) throws IOException {

    if (!super.init(fullCheck)) {
      return false;
    }

    // Modeled after SN_OFIL
    if (dmLabel.kftype != MFSN) {
      logError("not a sounding data file ");
      return false;
    }

    DMPart part = getPart(SNDT);

    if (part != null) {  // merged file
      subType = MERGED;
      String vertName = part.params.get(0).kprmnm;
      switch (vertName) {
        case "PRES":
          ivert = PRES_COORD;
          break;
        case "THTA":
          ivert = THTA_COORD;
          break;
        case "HGHT":
        case "MHGT":
        case "DHGT":
          ivert = HGHT_COORD;
          break;
        default:
          logError("unknown vertical coordinate in merged file");
          return false;
      }

    } else {
      unmergedParts = SN_CKUA();
      boolean haveUnMerged = !unmergedParts.isEmpty();
      if (!haveUnMerged) {
        logError("unknown sounding file type - not merged/unmerged");
        return false;
      } else {
        ivert = PRES_COORD;
        subType = UNMERGED;
      }
    }
    if (!readStationsAndTimes(true)) {
      logError("Unable to read stations and times");
      return false;
    }

    return true;

  }
protected boolean init(boolean fullCheck) throws IOException {

    if (!super.init(fullCheck)) {
      return false;
    }

    // Modeled after SN_OFIL
    if (dmLabel.kftype != MFSN) {
      logError("not a sounding data file ");
      return false;
    }

    DMPart part = getPart(SNDT);

    if (part != null) {  // merged file
      subType = MERGED;
      String vertName = part.params.get(0).kprmnm;
      switch (vertName) {
        case "PRES":
          ivert = PRES_COORD;
          break;
        case "THTA":
          ivert = THTA_COORD;
          break;
        case "HGHT":
        case "MHGT":
        case "DHGT":
          ivert = HGHT_COORD;
          break;
        default:
          logError("unknown vertical coordinate in merged file");
          return false;
      }

    } else {
      unmergedParts = SN_CKUA();
      boolean haveUnMerged = !unmergedParts.isEmpty();
      if (!haveUnMerged) {
        logError("unknown sounding file type - not merged/unmerged");
        return false;
      } else {
        ivert = PRES_COORD;
        subType = UNMERGED;
      }
    }
    if (!readStationsAndTimes(true)) {
      logError("Unable to read stations and times");
      return false;
    }

    return true;

  }
protected boolean init ( boolean fullCheck ) throws IOException { if ( ! super . init ( fullCheck ) ) { return false ; } // Modeled after SN_OFIL
 if ( dmLabel . kftype != MFSN ) { logError ( "not a sounding data file " ) ; return false ; } DMPart part = getPart ( SNDT ) ; if ( part != null ) { // merged file
 subType = MERGED ; String vertName = part . params . get ( 0 ) . kprmnm ; switch ( vertName ) { case "PRES" : ivert = PRES_COORD ; break ; case "THTA" : ivert = THTA_COORD ; break ; case "HGHT" : case "MHGT" : case "DHGT" : ivert = HGHT_COORD ; break ; default : logError ( "unknown vertical coordinate in merged file" ) ; return false ; } } else { unmergedParts = SN_CKUA ( ) ; boolean haveUnMerged = ! unmergedParts . isEmpty ( ) ; if ( ! haveUnMerged ) { logError ( "unknown sounding file type - not merged/unmerged" ) ; return false ; } else { ivert = PRES_COORD ; subType = UNMERGED ; } } if ( ! readStationsAndTimes ( true ) ) { logError ( "Unable to read stations and times" ) ; return false ; } return true ; }
Initialize this reader.  Get the Grid specific info

@param fullCheck check to make sure there are grids we can handle
@return true if successful
@throws IOException problem reading the data
Initialize this reader . Get the Grid specific info