mars_lib 0.1.0.2abe2576fe7f
Modular and Robust Sensor-Fusion
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | Friends | List of all members
mars::Pressure Struct Reference

The Pressure struct describes the raw pressure measurement used for conversion later. More...

#include </home/runner/work/mars_lib/mars_lib/source/mars/include/mars/sensors/pressure/pressure_conversion.h>

+ Collaboration diagram for mars::Pressure:

Public Types

enum class  Type { LIQUID , GAS , HEIGHT }
 The Type enum determines the type of pressure measurement used for conversion. More...
 

Public Member Functions

 Pressure ()=default
 Default constructor initializing values to 0, and type to Type::GAS.
 
 Pressure (double pressure)
 Detailed constructor with pressure value.
 
 Pressure (double pressure, double temperature, Type type)
 Detailed constructor.
 
Pressure operator+ (const Pressure &pressure)
 
void operator+= (const Pressure &pressure)
 
void operator/= (const double &n)
 

Public Attributes

double data_ { 0 }
 measurement data
 
double temperature_K_ { 0 }
 ambient temperature when measurement data was observed
 
Type type_ { Type::GAS }
 type of the measurement
 

Friends

std::ostream & operator<< (std::ostream &out, const Type &type)
 
std::ostream & operator<< (std::ostream &out, const Pressure &pressure)
 

Detailed Description

The Pressure struct describes the raw pressure measurement used for conversion later.

Member Enumeration Documentation

◆ Type

enum class mars::Pressure::Type
strong

The Type enum determines the type of pressure measurement used for conversion.

Enumerator
LIQUID 

pressure measurement is in liquid medium, e.g., water

GAS 

pressure measruement is in gas medium, e.g., air

HEIGHT 

pressure measurement has already been converted to height by sensor

30 {
31 LIQUID,
32 GAS,
33 HEIGHT
34 };
@ GAS
pressure measruement is in gas medium, e.g., air
@ LIQUID
pressure measurement is in liquid medium, e.g., water
@ HEIGHT
pressure measurement has already been converted to height by sensor

Constructor & Destructor Documentation

◆ Pressure() [1/3]

mars::Pressure::Pressure ( )
default

Default constructor initializing values to 0, and type to Type::GAS.

◆ Pressure() [2/3]

mars::Pressure::Pressure ( double  pressure)
inline

Detailed constructor with pressure value.

Parameters
pressuremeasured pressure value
temperaturetemperature at time of measurement
typeType of measurement
49 : data_(pressure)
50 {
51 }
double data_
measurement data
Definition pressure_conversion.h:64

◆ Pressure() [3/3]

mars::Pressure::Pressure ( double  pressure,
double  temperature,
Type  type 
)
inline

Detailed constructor.

Parameters
pressuremeasured pressure value
temperaturetemperature at time of measurement
typeType of measurement
60 : data_(pressure), temperature_K_(temperature), type_(type)
61 {
62 }
Type type_
type of the measurement
Definition pressure_conversion.h:66
double temperature_K_
ambient temperature when measurement data was observed
Definition pressure_conversion.h:65

Member Function Documentation

◆ operator+()

Pressure mars::Pressure::operator+ ( const Pressure pressure)
inline
71 {
72 return { data_ + pressure.data_, temperature_K_ + pressure.temperature_K_, type_ };
73 }

◆ operator+=()

void mars::Pressure::operator+= ( const Pressure pressure)
inline
76 {
77 data_ += pressure.data_;
78 temperature_K_ += pressure.temperature_K_;
79 }

◆ operator/=()

void mars::Pressure::operator/= ( const double &  n)
inline
82 {
83 if (n == 0)
84 {
85 throw std::overflow_error("Divide by zero exception");
86 }
87 data_ /= n;
88 temperature_K_ /= n;
89 }

Friends And Related Symbol Documentation

◆ operator<< [1/2]

std::ostream & operator<< ( std::ostream &  out,
const Type type 
)
friend

◆ operator<< [2/2]

std::ostream & operator<< ( std::ostream &  out,
const Pressure pressure 
)
friend

Member Data Documentation

◆ data_

double mars::Pressure::data_ { 0 }

measurement data

64{ 0 };

◆ temperature_K_

double mars::Pressure::temperature_K_ { 0 }

ambient temperature when measurement data was observed

65{ 0 };

◆ type_

Type mars::Pressure::type_ { Type::GAS }

type of the measurement

66{ Type::GAS };

The documentation for this struct was generated from the following file: