Go to the documentation of this file.
63 string errMsg(
"Invalid Observation Code: ");
81 string errMsg(
"Invalid Constraint Code: ");
99 string errMsg(
"Invalid Solution Type: ");
117 size_t sz = line.size();
126 ss <<
"Missing data; inadequate line length ("
127 << sz <<
" < " << minLen <<
")";
141 ss <<
"Excessive line length ("
142 << sz <<
" > " << maxLen <<
")";
152 for (
size_t i = 0; (
pos = divs[i]) >= 0; ++i)
160 <<
"' expected in column " <<
pos;
173 formatStr(
const std::string& value,
size_t width,
bool allowBlank)
175 if ( (value.size() == 0) && !allowBlank)
177 return string(width,
'-');
182 ss << left << setw(width) << value.substr(0, width);
192 ss << right << setw(width) << value;
194 if (s.size() > width)
197 msg <<
"Cannot represent value " << value;
198 msg <<
" within width " << width;
210 ss << right << setw(width) << value;
212 if (s.size() > width)
215 msg <<
"Cannot represent value " << value;
216 msg <<
" within width " << width;
229 return static_cast<std::string
>(fd);
236 ss << fixed << right << setw(width) << setprecision(precision) << value;
239 if (s.size() > width)
242 if ( (s.size() == width+1) && (value < 1.0) && (value > -1.0) )
256 msg <<
"Cannot represent value " << value;
257 msg <<
" within width " << width;
258 msg <<
" with precision " << precision;
275 Time::operator std::string()
const
277 std::ostringstream ss;
279 ss << setw(2) << (uint16_t)
year <<
":";
280 ss << setw(3) << doy <<
":";
281 ss << setw(5) <<
sod;
290 if (ydsTime.
year > 2050)
292 Exception err(
"SINEX does not support years past 2050.");
302 Time::operator=(
const std::string& other)
304 if ( (other.size() < 12) || (other[2] !=
':') || (other[6] !=
':') )
310 doy =
asInt(other.substr(3, 3) );
long asInt(const std::string &s)
std::string formatStr(const std::string &value, size_t width, bool allowBlank)
bool isValidObsCode(char c, bool toss)
const std::string OBS_CODES("CDLMPR")
std::string formatFixed(double value, size_t width, size_t precision)
@ Zero
Start with zero, e.g. 0.12345.
page HOWTO subpage DoxygenGuide Documenting Your Code page DoxygenGuide Documenting Your Code todo Flesh out this document section doctips Tips for Documenting When defining make sure that the prototype is identical between the cpp and hpp including both the namespaces and the parameter names for you have std::string as the return type in the hpp file and string as the return type in the cpp Doxygen may get confused and autolink to the cpp version with no documentation If you don t use the same parameter names between the cpp and hpp that will also confuse Doxygen Don t put type information in return or param documentation It doesn t really add anything and will often cause Doxygen to complain and not produce the documentation< br > use note Do not put a comma after a param name unless you mean to document multiple parameters< br/> the output stream</code >< br/> y
const size_t MIN_LINE_LEN
bool isValidLineStructure(const std::string &line, size_t minLen, size_t maxLen, int divs[], bool toss)
bool isValidConstraintCode(char c, bool toss)
std::string formatFor(double value, size_t width, size_t expLen)
virtual CommonTime convertToCommonTime() const
const size_t MAX_LINE_LEN
bool isValidSolutionType(char c, bool toss)
const std::string CONSTRAINT_CODES("012")
#define GNSSTK_THROW(exc)
std::string formatInt(long value, size_t width)
const std::string SOLUTION_TYPES("SOETCA ")
std::string formatUint(unsigned long value, size_t width)
gnsstk
Author(s):
autogenerated on Wed Oct 25 2023 02:40:41