Classes | Typedefs
gnsstk::Sinex Namespace Reference

Classes

struct  BiasEpoch
 
class  Block
 
class  BlockBase
 
class  Data
 
struct  DataType
 
struct  FileComment
 
struct  FileReference
 
class  Header
 
struct  InputAck
 
struct  InputFile
 
struct  InputHistory
 
struct  NutationData
 
struct  PrecessionData
 
struct  SatelliteId
 
struct  SatellitePhaseCenter
 
struct  SiteAntenna
 
struct  SiteData
 
struct  SiteEccentricity
 
struct  SiteGalPhaseCenter
 
struct  SiteGpsPhaseCenter
 
struct  SiteId
 
struct  SitePhaseCenter
 
struct  SiteReceiver
 
struct  SolutionApriori
 
struct  SolutionEpoch
 
struct  SolutionEstimate
 
struct  SolutionMatrixApriori
 
struct  SolutionMatrixAprioriLCorr
 
struct  SolutionMatrixAprioriLCova
 
struct  SolutionMatrixAprioriLInfo
 
struct  SolutionMatrixAprioriUCorr
 
struct  SolutionMatrixAprioriUCova
 
struct  SolutionMatrixAprioriUInfo
 
struct  SolutionMatrixEstimate
 
struct  SolutionMatrixEstimateLCorr
 
struct  SolutionMatrixEstimateLCova
 
struct  SolutionMatrixEstimateLInfo
 
struct  SolutionMatrixEstimateUCorr
 
struct  SolutionMatrixEstimateUCova
 
struct  SolutionMatrixEstimateUInfo
 
struct  SolutionNormalEquationMatrix
 
struct  SolutionNormalEquationMatrixL
 
struct  SolutionNormalEquationMatrixU
 
struct  SolutionNormalEquationVector
 
struct  SolutionStatistics
 
struct  SourceId
 
class  Stream
 
struct  Time
 

Typedefs

typedef BlockBase *(* BlockCreateFunc) ()
 Function pointer for invoking create methods for blocks. More...
 
typedef std::map< std::string, BlockCreateFuncBlockFactory
 Mapping from block titles to block create functions. More...
 
typedef Blocks::iterator BlockIter
 Block iterator. More...
 
typedef std::vector< const BlockBase * > Blocks
 Block storage type. More...
 

SINEX Constants

const char HEAD_TAIL_START = '%'
 
const char BLOCK_START = '+'
 
const char BLOCK_END = '-'
 
const char COMMENT_START = '*'
 
const char DATA_START = ' '
 
const char FIELD_DIV = ' '
 
const size_t MIN_LINE_LEN = 1
 
const size_t MAX_LINE_LEN = 80
 
const float VERSION = 2.02f
 
bool isValidObsCode (char c, bool toss)
 
bool isValidConstraintCode (char c, bool toss)
 
bool isValidSolutionType (char c, bool toss)
 
bool isValidLineStructure (const std::string &line, size_t minLen, size_t maxLen, int divs[], bool toss)
 
std::string formatStr (const std::string &value, size_t width, bool allowBlank)
 
std::string formatInt (long value, size_t width)
 
std::string formatUint (unsigned long value, size_t width)
 
std::string formatFor (double value, size_t width, size_t expLen)
 
std::string formatFixed (double value, size_t width, size_t precision)
 
const std::string FILE_BEGIN ("%=SNX")
 
const std::string FILE_END ("%ENDSNX")
 
const std::string OBS_CODES ("CDLMPR")
 
const std::string CONSTRAINT_CODES ("012")
 
const std::string SOLUTION_TYPES ("SOETCA ")
 

Typedef Documentation

◆ BlockCreateFunc

typedef BlockBase*(* gnsstk::Sinex::BlockCreateFunc) ()

Function pointer for invoking create methods for blocks.

Definition at line 218 of file SinexBlock.hpp.

◆ BlockFactory

typedef std::map<std::string, BlockCreateFunc> gnsstk::Sinex::BlockFactory

Mapping from block titles to block create functions.

Definition at line 221 of file SinexBlock.hpp.

◆ BlockIter

typedef Blocks::iterator gnsstk::Sinex::BlockIter

Block iterator.

Definition at line 215 of file SinexBlock.hpp.

◆ Blocks

typedef std::vector<const BlockBase*> gnsstk::Sinex::Blocks

Block storage type.

Definition at line 212 of file SinexBlock.hpp.

Function Documentation

◆ CONSTRAINT_CODES()

const std::string gnsstk::Sinex::CONSTRAINT_CODES ( "012"  )

◆ FILE_BEGIN()

const std::string gnsstk::Sinex::FILE_BEGIN ( )

◆ FILE_END()

const std::string gnsstk::Sinex::FILE_END ( "%ENDSNX"  )

◆ formatFixed()

std::string gnsstk::Sinex::formatFixed ( double  value,
size_t  width,
size_t  precision 
)

Format a fixed-point value such that it has a specified width and precision. If the value is close to 0, the function will attempt to squeeze it into the specified width by removing the 0 before the decimal (0.123 becomes .123). If the value cannot be represented in the specified width, the function will throw an exception.

If value is close to 0, try squeezing to stay within width

Squeeze -0.123 to -.123

Squeeze 0.1234 to .1234

Definition at line 233 of file SinexBase.cpp.

◆ formatFor()

std::string gnsstk::Sinex::formatFor ( double  value,
size_t  width,
size_t  expLen 
)

Format a fixed-point value in fortran like scientific notation with a specified width and exponent length.

Definition at line 225 of file SinexBase.cpp.

◆ formatInt()

std::string gnsstk::Sinex::formatInt ( long  value,
size_t  width 
)

Format a signed integer such that it's string representation fills but does not exceed the specified width. The value is justified to the right within the string. If the value cannot fit into the specified width, the function will throw an exception.

Definition at line 189 of file SinexBase.cpp.

◆ formatStr()

std::string gnsstk::Sinex::formatStr ( const std::string &  value,
size_t  width,
bool  allowBlank = false 
)

Format a string such that it fills but does not exceed the specified width. The value is justified to the left within the returned string. If the value cannot fit into the specified width, it is truncated. If the value is empty and allowBlank is false, the returned string will be filled with '-'s as dictated by the SINEX specification.

Definition at line 173 of file SinexBase.cpp.

◆ formatUint()

std::string gnsstk::Sinex::formatUint ( unsigned long  value,
size_t  width 
)

Format an unsigned integer such that it's string representation fills but does not exceed the specified width. The value is justified to the right within the string. If the value cannot fit into the specified width, the function will throw an exception.

Definition at line 207 of file SinexBase.cpp.

◆ isValidConstraintCode()

bool gnsstk::Sinex::isValidConstraintCode ( char  c,
bool  toss = true 
)

Return whether c is a valid Constraint Code. If it is not, and if toss is true, the function will throw and exception.

Definition at line 75 of file SinexBase.cpp.

◆ isValidLineStructure()

bool gnsstk::Sinex::isValidLineStructure ( const std::string &  line,
size_t  minLength,
size_t  maxLength,
int  divs[] = NULL,
bool  toss = true 
)

Returns whether the supplied data line has a valid structure, i.e. whether its length is correct and whether its field dividers are in expected locations. If the line structure is not valid, and if toss is true, the function will throw an exception.

Check Minimum line length

Check maximum line length

Check for valid field dividers

Parameters
tossArray terminated by element < 0

Definition at line 111 of file SinexBase.cpp.

◆ isValidObsCode()

bool gnsstk::Sinex::isValidObsCode ( char  c,
bool  toss = true 
)

Return whether c is a valid Observation Code. If it is not, and if toss is true, the function will throw and exception.

Definition at line 57 of file SinexBase.cpp.

◆ isValidSolutionType()

bool gnsstk::Sinex::isValidSolutionType ( char  c,
bool  toss = true 
)

Return whether c is a valid Solution Type. If it is not, and if toss is true, the function will throw and exception.

Definition at line 93 of file SinexBase.cpp.

◆ OBS_CODES()

const std::string gnsstk::Sinex::OBS_CODES ( "CDLMPR"  )

◆ SOLUTION_TYPES()

const std::string gnsstk::Sinex::SOLUTION_TYPES ( "SOETCA "  )

Variable Documentation

◆ BLOCK_END

const char gnsstk::Sinex::BLOCK_END = '-'

Definition at line 62 of file SinexBase.hpp.

◆ BLOCK_START

const char gnsstk::Sinex::BLOCK_START = '+'

Definition at line 61 of file SinexBase.hpp.

◆ COMMENT_START

const char gnsstk::Sinex::COMMENT_START = '*'

Definition at line 63 of file SinexBase.hpp.

◆ DATA_START

const char gnsstk::Sinex::DATA_START = ' '

Definition at line 64 of file SinexBase.hpp.

◆ FIELD_DIV

const char gnsstk::Sinex::FIELD_DIV = ' '

Definition at line 65 of file SinexBase.hpp.

◆ HEAD_TAIL_START

const char gnsstk::Sinex::HEAD_TAIL_START = '%'

Definition at line 60 of file SinexBase.hpp.

◆ MAX_LINE_LEN

const size_t gnsstk::Sinex::MAX_LINE_LEN = 80

Definition at line 67 of file SinexBase.hpp.

◆ MIN_LINE_LEN

const size_t gnsstk::Sinex::MIN_LINE_LEN = 1

Definition at line 66 of file SinexBase.hpp.

◆ VERSION

const float gnsstk::Sinex::VERSION = 2.02f

Definition at line 68 of file SinexBase.hpp.



gnsstk
Author(s):
autogenerated on Wed Oct 25 2023 02:40:46