//************************************************************************** // CONSTRUCTOR //************************************************************************** ossimDtedUhl::ossimDtedUhl(const ossimFilename& dted_file, ossim_int32 offset) : theRecSen(), theField2(), theLonOrigin(), theLatOrigin(), theLonInterval(), theLatInterval(), theAbsoluteLE(), theSecurityCode(), theNumLonLines(), theNumLatPoints(), theMultipleAccuracy(), theStartOffset(0), theStopOffset(0) { if(!dted_file.empty()) { // Check to see that dted file exists. if(!dted_file.exists()) { theErrorStatus = ossimErrorCodes::OSSIM_ERROR; ossimNotify(ossimNotifyLevel_FATAL) << "FATAL ossimDtedUhl::ossimDtedUhl: The DTED file does not exist: " << dted_file << std::endl; return; } // Check to see that the dted file is readable. if(!dted_file.isReadable()) { theErrorStatus = ossimErrorCodes::OSSIM_ERROR; ossimNotify(ossimNotifyLevel_FATAL) << "FATAL ossimDtedUhl::ossimDtedUhl: The DTED file is not readable --> " << dted_file << std::endl; return; } std::ifstream in(dted_file.c_str()); if(!in) { theErrorStatus = ossimErrorCodes::OSSIM_ERROR; ossimNotify(ossimNotifyLevel_FATAL) << "FATAL ossimDtedUhl::ossimDtedUhl: Error opening the DTED file: " << dted_file << std::endl; return; } in.seekg(offset); parse(in); in.close(); } }
//************************************************************************** // CONSTRUCTOR //************************************************************************** ossimDtedVol::ossimDtedVol(const ossimFilename& dted_file, ossim_int32 offset) : theStartOffset(0), theStopOffset(0) { if(!dted_file.empty()) { // Check to see that dted file exists. if(!dted_file.exists()) { theErrorStatus = ossimErrorCodes::OSSIM_ERROR; ossimNotify(ossimNotifyLevel_FATAL) << "FATAL ossimDtedVol::ossimDtedVol" << "\nThe DTED file does not exist: " << dted_file << std::endl; return; } // Check to see that the dted file is readable. if(!dted_file.isReadable()) { theErrorStatus = ossimErrorCodes::OSSIM_ERROR; ossimNotify(ossimNotifyLevel_FATAL) << "FATAL ossimDtedVol::ossimDtedVol" << "\nThe DTED file is not readable: " << dted_file << std::endl; return; } // Open the dted file for reading. std::ifstream in(dted_file.c_str()); if(!in) { theErrorStatus = ossimErrorCodes::OSSIM_ERROR; ossimNotify(ossimNotifyLevel_FATAL) << "FATAL ossimDtedVol::ossimDtedVol" << "\nUnable to open the DTED file: " << dted_file << std::endl; return; } in.seekg(offset); parse(in); in.close(); } }