MEASUR-Tools-Suite v1.0.11
The MEASUR Tools Suite is a collection of industrial efficiency calculations written in C++ and with bindings for compilation to WebAssembly.
Loading...
Searching...
No Matches
ProcessSteamUsageCalculationsDomain.h
1#ifndef TOOLS_SUITE_PROCESSSTEAMUSAGECALCULATIONSDOMAIN_H
2#define TOOLS_SUITE_PROCESSSTEAMUSAGECALCULATIONSDOMAIN_H
3
5 public:
6 double pressure;
7 double temperature;
8 double energyFlow;
9 double massFlow;
10 double processUsage;
11
12 friend std::ostream& operator<<(std::ostream& stream, const ProcessSteamUsage& domain) {
13 stream << "ProcessSteamUsage[" << "pressure=" << domain.pressure << ", temperature=" << domain.temperature
14 << ", energyFlow=" << domain.energyFlow << ", massFlow=" << domain.massFlow
15 << ", processUsage=" << domain.processUsage << "]";
16 return stream;
17 }
18
19 friend std::ostream& operator<<(std::ostream& stream, const std::shared_ptr<ProcessSteamUsage>& domain) {
20 if (domain == nullptr) {
21 stream << "ProcessSteamUsage[nullptr]";
22 }
23 else {
24 stream << *domain;
25 }
26 return stream;
27 }
28};
29
31 public:
32 ProcessSteamUsage highPressureProcessSteamUsage;
33 std::shared_ptr<ProcessSteamUsage> lowPressureProcessUsagePtr;
34 std::shared_ptr<ProcessSteamUsage> mediumPressureProcessUsagePtr;
35
36 friend std::ostream& operator<<(std::ostream& stream, const ProcessSteamUsageCalculationsDomain& domain) {
37 stream << "ProcessSteamUsageCalculationsDomain["
38 << "highPressureProcessSteamUsage=" << domain.highPressureProcessSteamUsage
39 << ", lowPressureProcessUsagePtr=" << domain.lowPressureProcessUsagePtr
40 << ", mediumPressureProcessUsagePtr=" << domain.mediumPressureProcessUsagePtr << "]";
41 return stream;
42 }
43};
44
45#endif // TOOLS_SUITE_PROCESSSTEAMUSAGECALCULATIONSDOMAIN_H