API
 
Loading...
Searching...
No Matches
flowRPM.hpp File Reference

The MagAO-X flowRPM application header. More...

#include <cerrno>
#include <cmath>
#include <fstream>
#include <sstream>
#include "../../libMagAOX/libMagAOX.hpp"
#include "../../magaox_git_version.h"
Include dependency graph for flowRPM.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  MagAOX::app::flowRPM
 The MagAO-X flow-from-RPM monitor. More...
 
struct  MagAOX::app::flowRPM::parseResult
 Parsed result of the current file contents. More...
 

Namespaces

namespace  MagAOX
 
namespace  MagAOX::app
 
namespace  MagAOX::app::flowRPMDetail
 

Functions

std::string MagAOX::app::flowRPMDetail::trimToken (const std::string &token)
 Trim leading and trailing ASCII whitespace from a token.
 
double MagAOX::app::flowRPMDetail::timespecToDouble (const timespec &ts)
 Convert a timespec to fractional seconds.
 
double MagAOX::app::flowRPMDetail::elapsedSeconds (const timespec &start, const timespec &end)
 Measure elapsed seconds between two timestamps.
 
std::vector< std::string > MagAOX::app::flowRPMDetail::splitPipeDelimited (const std::string &line)
 Split a pipe-delimited sensor line into trimmed fields.
 
bool MagAOX::app::flowRPMDetail::isValidStatusField (const std::string &statusField)
 Determine whether the IPMI sensor status token represents a valid flow reading.
 
std::vector< std::string > MagAOX::app::flowRPMDetail::splitLogicalLines (const std::string &contents)
 Split file contents into non-empty logical lines.
 

Detailed Description

The MagAO-X flowRPM application header.

Definition in file flowRPM.hpp.


Class Documentation

◆ MagAOX::app::flowRPM::parseResult

struct MagAOX::app::flowRPM::parseResult

Parsed result of the current file contents.

Definition at line 65 of file flowRPM.hpp.

Collaboration diagram for MagAOX::app::flowRPM::parseResult:
Collaboration graph
Class Members
double m_age { -999.0 } Displayed age in seconds or the bad-value sentinel.
double m_flowRate { -999.0 } Displayed flow rate in LPM or the bad-value sentinel.
timespec m_sourceTs { 0, 0 } Parsed source timestamp when available.
parseStatus m_status { parseStatus::fileReadError } Outcome of the parse attempt.