NANDRAD Data Model Library  Version 2.0
NANDRAD
NANDRAD_HVACControlModel.h
1 /* The NANDRAD data model library.
2 
3  Copyright (c) 2012-today, Institut für Bauklimatik, TU Dresden, Germany
4 
5  Primary authors:
6  Andreas Nicolai <andreas.nicolai -[at]- tu-dresden.de>
7  Anne Paepcke <anne.paepcke -[at]- tu-dresden.de>
8 
9  This library is part of SIM-VICUS (https://github.com/ghorwin/SIM-VICUS)
10 
11  This library is free software: you can redistribute it and/or modify
12  it under the terms of the GNU General Public License as published by
13  the Free Software Foundation, either version 3 of the License, or
14  (at your option) any later version.
15 
16  This library is distributed in the hope that it will be useful,
17  but WITHOUT ANY WARRANTY; without even the implied warranty of
18  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  GNU General Public License for more details.
20 */
21 
22 #ifndef NANDRAD_HVACControlModelH
23 #define NANDRAD_HVACControlModelH
24 
25 #include <IBK_Parameter.h>
26 
27 #include "NANDRAD_Constants.h"
28 #include "NANDRAD_CodeGenMacros.h"
29 
30 namespace NANDRAD {
31 
32 /*! Contains data for a control model that generates control signals for different heating equipment based
33  on thermostat values.
34 */
36 public:
37  /*! Different model variants. */
38  enum modelType_t {
39  MT_Heating, // Keyword: Heating 'Heating control model'
40  NUM_MT
41  };
42 
43  /*! Operating mode. */
45  /*! Input signal is forwarded unmodified to all heating models. */
46  OM_Parallel, // Keyword: Parallel 'Parallel operation'
47  NUM_OM
48  };
49 
50  NANDRAD_READWRITE
51 
52  /*! Checks parameters for valid values. */
53  void checkParameters() const;
54 
55  /*! Unique ID-number for this model. */
56  unsigned int m_id = NANDRAD::INVALID_ID; // XML:A:required
57 
58  /*! Model type. */
59  modelType_t m_modelType = NUM_MT; // XML:A:required
60 
61  /*! Operating mode. */
62  OperatingMode m_operatingMode = NUM_OM; // XML:A:required
63 
64  /*! Object list with zones that this model is to be apply to. */
65  std::string m_zoneObjectList; // XML:E:required
66 };
67 
68 } // namespace NANDRAD
69 
70 #endif // NANDRAD_HVACControlModelH
Contains data for a control model that generates control signals for different heating equipment base...
modelType_t m_modelType
Model type.
Contains global constants for the Nandrad data model.
std::string m_zoneObjectList
Object list with zones that this model is to be apply to.
NANDRAD_READWRITE void checkParameters() const
Checks parameters for valid values.
unsigned int m_id
Unique ID-number for this model.
unsigned int INVALID_ID
defines an invalid id
Input signal is forwarded unmodified to all heating models.
OperatingMode m_operatingMode
Operating mode.
The namespace NANDRAD contains the data model classes that make up the NANDRAD solver input data...
modelType_t
Different model variants.