summaryrefslogtreecommitdiffstats
path: root/veslibrary/ves_cpplibrary/src/lib/encode/XIpmiImp.h
blob: 8be2272b1d744d6bb179a8784246d13630cbe980 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#pragma once

#include "XIpmi.h"
#include "XInternal.h"

namespace vagt
{
    namespace encode
    {
        class XIpmiImp : public XIpmi, public XJsonable
        {
        public:
            XIpmiImp();

            virtual json toJson() override;

            virtual void setSystemAirflow(XNumber systemAirflow) override;
            virtual void setIpmiFanArray(const XArrayOfXIpmiFan& ipmiFanArray) override;
            virtual void setIpmiProcessorArray(const XArrayOfXIpmiProcessor& ipmiProcessorArray) override;
            virtual void setExitAirTemperature(XNumber exitAirTemperature) override;
            virtual void setIpmiBaseboardVoltageRegulatorArray(const XArrayOfXIpmiBaseboardVoltageRegulator& ipmiBaseboardVoltageRegulatorArray) override;
            virtual void setIpmiGlobalAggregateTemperatureMarginArray(const XArrayOfXIpmiGlobalAggregateTemperatureMargin& ipmiGlobalAggregateTemperatureMarginArray) override;
            virtual void setIpmiNicArray(const XArrayOfXIpmiNic& ipmiNicArray) override;
            virtual void setIpmiBaseboardTemperatureArray(const XArrayOfXIpmiBaseboardTemperature& ipmiBaseboardTemperatureArray) override;
            virtual void setIpmiPowerSupplyArray(const XArrayOfXIpmiPowerSupply& ipmiPowerSupplyArray) override;
            virtual void setIoModuleTemperature(XNumber ioModuleTemperature) override;
            virtual void setIpmiHsbpArray(const XArrayOfXIpmiHsbp& ipmiHsbpArray) override;
            virtual void setIpmiBatteryArray(const XArrayOfXIpmiBattery& ipmiBatteryArray) override;
            virtual void setFrontPanelTemperature(XNumber frontPanelTemperature) override;

        private:
            //optional
            XArrayOfXIpmiFan ipmiFanArray_;
            XArrayOfXIpmiProcessor ipmiProcessorArray_;
            XArrayOfXIpmiBaseboardVoltageRegulator ipmiBaseboardVoltageRegulatorArray_;
            XArrayOfXIpmiGlobalAggregateTemperatureMargin ipmiGlobalAggregateTemperatureMarginArray_;
            XArrayOfXIpmiNic ipmiNicArray_;
            XArrayOfXIpmiBaseboardTemperature ipmiBaseboardTemperatureArray_;
            XArrayOfXIpmiPowerSupply ipmiPowerSupplyArray_;
            XArrayOfXIpmiHsbp ipmiHsbpArray_;
            XArrayOfXIpmiBattery ipmiBatteryArray_;
            std::map<std::string, XCommonValue> comVals_;
        };
    }
}