SEThermalApplication.h
1 /**************************************************************************************
2 Copyright 2015 Applied Research Associates, Inc.
3 Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4 this file except in compliance with the License. You may obtain a copy of the License
5 at:
6 http://www.apache.org/licenses/LICENSE-2.0
7 Unless required by applicable law or agreed to in writing, software distributed under
8 the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
9 CONDITIONS OF ANY KIND, either express or implied. See the License for the
10 specific language governing permissions and limitations under the License.
11 **************************************************************************************/
12 #pragma once
13 #include <biogears/cdm/system/environment/actions/SEEnvironmentAction.h>
14 #include <biogears/schema/cdm/EnvironmentActions.hxx>
15 
16 namespace biogears {
17 class SEActiveHeating;
18 class SEActiveCooling;
19 class SEAppliedTemperature;
20 
21 class BIOGEARS_API SEThermalApplication : public SEEnvironmentAction {
22 public:
24  virtual ~SEThermalApplication() override;
25 
26  static constexpr const char* TypeTag() { return "SEThermalApplication"; };
27  const char* classname() const override { return TypeTag(); }
28 
29  virtual void Clear() override;
30 
31  virtual bool IsValid() const override;
32  virtual bool IsActive() const override;
33 
34  virtual bool Load(const CDM::ThermalApplicationData& in);
35  virtual CDM::ThermalApplicationData* Unload() const override;
36 
37 protected:
38  virtual void Unload(CDM::ThermalApplicationData& data) const;
39 
40 public:
41  virtual bool HasActiveHeating() const;
42  virtual SEActiveHeating& GetActiveHeating();
43  virtual void RemoveActiveHeating();
44 
45  virtual bool HasActiveCooling() const;
46  virtual SEActiveCooling& GetActiveCooling();
47  virtual void RemoveActiveCooling();
48 
49  virtual bool HasAppliedTemperature() const;
50  virtual SEAppliedTemperature& GetAppliedTemperature();
51  virtual void RemoveAppliedTemperature();
52 
53  virtual bool GetAppendToPrevious() const;
54  virtual void SetAppendToPrevious(bool toAppend);
55 
56  virtual void ToString(std::ostream& str) const override;
57 
58 
59 protected:
64 };
65 }
const char * classname() const override
Definition: SEThermalApplication.h:27
static constexpr const char * TypeTag()
Definition: SEThermalApplication.h:26
SEActiveCooling * m_ActiveCooling
Definition: SEThermalApplication.h:62
SEActiveHeating * m_ActiveHeating
Definition: SEThermalApplication.h:61
Definition: SEAppliedTemperature.h:25
Definition: SEActiveCooling.h:26
SEAppliedTemperature * m_AppliedTemperature
Definition: SEThermalApplication.h:63
Definition: SEActiveHeating.h:28
Definition: SEEnvironmentAction.h:17
Class corresponding to the ThermalApplicationData schema type.
Definition: EnvironmentActions.hxx:1001
bool m_AppendToPrevious
Definition: SEThermalApplication.h:60
Definition: SEElectricalCircuit.h:18
Definition: SEThermalApplication.h:21