← Documentation
ADS-IDAC Engine 5.0.0
SPDSUnit.h
Go to the documentation of this file.
1#include <iostream>
2#include <typeinfo>
3// SPDSUnit.h: interface for the SPDSUnit class.
4#pragma once
5
6#include "../ControlPanel/SystemDisplay.h"
7#include "../ControlPanel/DisplayParameterValue.h"
8#include "InfoChunk.h"
10#include <boost/serialization/serialization.hpp>
11#include <boost/serialization/string.hpp>
12#include <string>
13#include <boost/serialization/export.hpp>
14#include <boost/archive/text_oarchive.hpp>
15#include <boost/archive/text_iarchive.hpp>
16
18{
19public:
20 SPDSUnit();
21 virtual ~SPDSUnit();
22 double getLLThreshold();
23 double getLThreshold();
24 double getHHThreshold();
25 double getHThreshold();
26 double getSPDSUnitWeight();
27 void setLLThreshold(double);
28 void setLThreshold(double);
29 void setHThreshold(double);
30 void setHHThreshold(double);
31 void setSPDSUnitWeight(double);
33 double getSPDSUnitValue();
34 void readInfoFromFile(std::ifstream &);
35 void copySPDSUnit(SPDSUnit &);
36 void setCorrespondingIndicatorName(std::string);
38 void setSPDSUnitName(std::string);
39 std::string getSPDSUnitName();
41 void saveSPDSUnitToFile(std::ofstream &);
42 void retrieveSPDSUnitFromFile(std::ifstream &);
44private:
46 template<class Archive>
47 void serialize(Archive & ar, const unsigned int version) {
48// std::cout << "Serializing class: " << typeid(*this).name() << std::endl;
49 ar & LL_threshold;
50 ar & L_threshold;
51 ar & H_threshold;
52 ar & HH_threshold;
54 ar & SPDS_unit_value;
55 ar & SPDS_unit_name;
57 // TODO: may need special handling for serializing 'ptr_to_corresponding_indicator'
58 }
63};
void setHHThreshold(double)
Definition: SPDSUnit.cpp:45
double LL_threshold
Definition: SPDSUnit.h:59
double H_threshold
Definition: SPDSUnit.h:59
void setSPDSUnitWeight(double)
Definition: SPDSUnit.cpp:46
double getSPDSUnitWeight()
Definition: SPDSUnit.cpp:41
SystemDisplay * getPtrToCorrespondingIndicator()
Definition: SPDSUnit.cpp:111
void setHThreshold(double)
Definition: SPDSUnit.cpp:44
void calculateSPDSUnitValue(InfoChunk *)
Definition: SPDSUnit.cpp:53
double L_threshold
Definition: SPDSUnit.h:59
std::string SPDS_unit_name
Definition: SPDSUnit.h:61
double getLLThreshold()
Definition: SPDSUnit.cpp:37
void copySPDSUnit(SPDSUnit &)
Definition: SPDSUnit.cpp:96
std::string corresponding_indicator_name
Definition: SPDSUnit.h:61
double getLThreshold()
Definition: SPDSUnit.cpp:38
double SPDS_unit_weight
Definition: SPDSUnit.h:60
std::string getSPDSUnitName()
Definition: SPDSUnit.cpp:110
void setPtrToCorrespondingIndicator(SystemDisplay *)
Definition: SPDSUnit.cpp:112
void setLThreshold(double)
Definition: SPDSUnit.cpp:43
void serialize(Archive &ar, const unsigned int version)
Definition: SPDSUnit.h:47
void setSPDSUnitName(std::string)
Definition: SPDSUnit.cpp:109
void setCorrespondingIndicatorName(std::string)
Definition: SPDSUnit.cpp:107
void retrieveSPDSUnitFromFile(std::ifstream &)
Definition: SPDSUnit.cpp:126
std::string getCorrespondingIndicatorName()
Definition: SPDSUnit.cpp:108
void saveSPDSUnitToFile(std::ofstream &)
Definition: SPDSUnit.cpp:116
virtual ~SPDSUnit()
Definition: SPDSUnit.cpp:33
SPDSUnit()
Definition: SPDSUnit.cpp:20
double getSPDSUnitValue()
Definition: SPDSUnit.cpp:47
friend class boost::serialization::access
Definition: SPDSUnit.h:45
double HH_threshold
Definition: SPDSUnit.h:59
void setLLThreshold(double)
Definition: SPDSUnit.cpp:42
void readInfoFromFile(std::ifstream &)
Definition: SPDSUnit.cpp:49
double SPDS_unit_value
Definition: SPDSUnit.h:60
double getHHThreshold()
Definition: SPDSUnit.cpp:39
SystemDisplay * ptr_to_corresponding_indicator
Definition: SPDSUnit.h:62
double getHThreshold()
Definition: SPDSUnit.cpp:40