2 /***************************************************************************
4 * DwellingDimensions.h Copyright (C) 2008 by Jon Rumble *
5 * j.w.rumble@reading.ac.uk *
7 * This file is part of HECS, *
8 * HECS is free software: you can redistribute it and/or modify *
9 * it under the terms of the GNU General Public License as published by *
10 * the Free Software Foundation, either version 2 of the License, or *
11 * (at your option) any later version. *
13 * HECS is distributed in the hope that it will be useful, *
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
16 * GNU General Public License for more details. *
18 * You should have received a copy of the GNU General Public License *
19 * along with this program. If not, see <http://www.gnu.org/licenses/>. *
20 ***************************************************************************/
22 #ifndef DWELLINGDIMENSIONS_H
23 #define DWELLINGDIMENSIONS_H
25 #include "ConfigParser.h"
27 class DwellingDimensions
{
32 DwellingDimensions ();
33 DwellingDimensions (const ConfigParser
& config
);
34 ~DwellingDimensions();
37 double get_groundFloorArea();
38 double get_groundFloorHeight();
39 double get_groundFloorVolume();
40 double get_firstFloorArea();
41 double get_firstFloorHeight();
42 double get_firstFloorVolume();
43 double get_secondFloorArea();
44 double get_secondFloorHeight();
45 double get_secondFloorVolume();
46 double get_thirdFloorArea();
47 double get_thirdFloorHeight();
48 double get_thirdFloorVolume();
49 double get_totalFloorArea();
50 double get_dwellingVolume();
51 double get_avgStoreyHeight();
52 double get_livingRoomArea();
54 QString
get_houseNumber();
55 QString
get_address();
57 QString
get_postcode();
61 int get_propertyType();
63 int get_habitableRooms();
66 void set_groundFloorArea(double val_in
);
67 void set_groundFloorHeight(double val_in
);
68 void set_groundFloorVolume(double val_in
);
69 void set_firstFloorArea (double val_in
);
70 void set_firstFloorHeight (double val_in
);
71 void set_firstFloorVolume (double val_in
);
72 void set_secondFloorArea(double val_in
);
73 void set_secondFloorHeight(double val_in
);
74 void set_secondFloorVolume(double val_in
);
75 void set_thirdFloorArea (double val_in
);
76 void set_thirdFloorHeight (double val_in
);
77 void set_thirdFloorVolume (double val_in
);
78 void set_totalFloorArea (double val_in
);
79 void set_dwellingVolume (double val_in
);
80 void set_avgStoreyHeight(double val_in
);
81 void set_livingRoomArea(double val_in
);
82 void set_houseNumber (QString val_in
);
83 void set_address(QString val_in
);
84 void set_town(QString val_in
);
85 void set_postcode(QString val_in
);
86 void set_county(QString val_in
);
87 void set_region(int val_in
);
88 void set_ageBand(int val_in
);
89 void set_propertyType(int val_in
);
90 void set_archType(int val_in
);
91 void set_habitableRooms(int val_in
);
107 // First Floor Area (m2)
108 double m_firstFloorArea
;
109 double m_firstFloorHeight
;
110 double m_firstFloorVolume
;
111 // Second Floor Area (m2)
112 double m_secondFloorArea
;
113 double m_secondFloorHeight
;
114 double m_secondFloorVolume
;
115 // Third and other Floor Area (m2)
116 double m_thirdFloorArea
;
117 double m_thirdFloorHeight
;
118 double m_thirdFloorVolume
;
119 // Ground Floor Area (m2)
120 double m_groundFloorArea
;
121 double m_groundFloorHeight
;
122 double m_groundFloorVolume
;
123 // Total Floor Area Of Dwelling (m2)
124 double m_totalFloorArea
;
125 // Calculated Dwelling Volume (m3)
126 double m_dwellingVolume
;
127 // Average Storey Height (M)
128 double m_avgStoreyHeight
;
129 QString m_houseNumber
;
147 int m_habitableRooms
;
151 double m_livingRoomArea
;
154 void calcTotalFloorArea();
155 void calcDwellingVol();