public XElement GetAnalyticalSpaces()
{
// create a node that place all spaces.
XElement energyAnalysisSpacesNode = new XElement("AnalyticalSpaces");
energyAnalysisSpacesNode.Add(new XAttribute("Name", "AnalyticalSpaces"));
// get EnergyAnalysisSpaces from m_energyAnalysisDetailModel
IList<EnergyAnalysisSpace> energyAnalysisSpaces = m_energyAnalysisDetailModel.GetAnalyticalSpaces();
// get surface from each Space
foreach (EnergyAnalysisSpace space in energyAnalysisSpaces)
{
XElement spaceNode = new XElement("Space");
spaceNode.Add(new XAttribute("Name", space.ComposedName));
// add individual space node to spaces collection node
energyAnalysisSpacesNode.Add(spaceNode);
IList<EnergyAnalysisSurface> analyticalSurfaces = space.GetAnalyticalSurfaces();
SurfacesToXElement(spaceNode, analyticalSurfaces);
}
// return the whole Spaces Node
return energyAnalysisSpacesNode;
}