RinexDatum Rinex3ObsData::getObs(const RinexSatID& svID, const RinexObsID& obsID, const Rinex3ObsHeader& hdr ) const throw(InvalidRequest) { string sys(1,svID.systemChar()); return getObs(svID, hdr.getObsIndex(sys, obsID)); }
void Rinex3ObsData::setObs(const RinexDatum& data, const RinexSatID& svID, const RinexObsID& obsID, const Rinex3ObsHeader& hdr ) throw(InvalidRequest) { size_t index = hdr.getObsIndex(string(1,svID.systemChar()), obsID); if (obs[svID].size() <= index) obs[svID].resize(index+1); obs[svID][index] = data; }
/** Get a combination of observations from a Rinex3ObsData object * * @param rinexData The Rinex data set holding the observations. * @param type1 String representing observation type #1. * @param type2 String representing observation type #2. * @param hdr RINEX Observation Header for current RINEX file. * * @return * Number of SVs with this combination of observables available */ int ExtractCombinationData::getData( const Rinex3ObsData& rinexData, std::string type1, std::string type2, const Rinex3ObsHeader& hdr ) throw(InvalidRequest) { // Get the indexes corresponding to these observation types int index1( hdr.getObsIndex(type1) ); int index2( hdr.getObsIndex(type2) ); // Call the appropriate method return ( getData(rinexData, index1, index2) ); } // End of method 'ExtractData::getData()'
RinexDatum Rinex3ObsData::getObs(const RinexSatID& svID, const std::string& type, const Rinex3ObsHeader& hdr ) const throw(InvalidRequest) { string obsID; // Add GNSS code if needed if( type.size() == 3 ) obsID = svID.systemChar() + type; else obsID = type; return getObs(svID, hdr.getObsIndex(obsID)); }
/* This method returns the RinexDatum of a given observation * * @param sat Satellite whose observation we want to fetch. * @param type String representing the observation type. * @param hdr RINEX Observation Header for current RINEX file. */ RinexDatum Rinex3ObsData::getObs( const SatID& sat, std::string type, const Rinex3ObsHeader& hdr ) const throw(InvalidRequest) { // We will need the system 'char' of the satellite RinexSatID rsat(sat); // Add GNSS code if needed if( type.size() == 3 ) { char sysCode = rsat.systemChar(); type = sysCode + type; } // Get the index corresponding to this observation type int index( hdr.getObsIndex(type) ); // Return the corresponding data return getObs(sat, index); } // End of method 'Rinex3ObsData::getValue( const SatID sat,...'