Fixed Issue 382.
3 This Source Code Form is subject to the terms of the Mozilla Public
4 License, v. 2.0. If a copy of the MPL was not distributed with this
5 file, You can obtain one at http://mozilla.org/MPL/2.0/.
7 Copyright (C) 2009-2011 Michael Möller <mmoeller@openhardwaremonitor.org>
8 Copyright (C) 2010 Paul Werelds
9 Copyright (C) 2011 Roland Reinl <roland-reinl@gmx.de>
14 using System.Collections.Generic;
15 using System.Globalization;
18 namespace OpenHardwareMonitor.Hardware.HDD {
19 internal class HarddriveGroup : IGroup {
21 private const int MAX_DRIVES = 32;
23 private readonly List<AbstractHarddrive> hardware =
24 new List<AbstractHarddrive>();
26 public HarddriveGroup(ISettings settings) {
27 int p = (int)Environment.OSVersion.Platform;
28 if (p == 4 || p == 128) return;
30 ISmart smart = new WindowsSmart();
32 for (int drive = 0; drive < MAX_DRIVES; drive++) {
33 AbstractHarddrive instance =
34 AbstractHarddrive.CreateInstance(smart, drive, settings);
35 if (instance != null) {
36 this.hardware.Add(instance);
41 public IHardware[] Hardware {
43 return hardware.ToArray();
47 public string GetReport() {
52 foreach (AbstractHarddrive hdd in hardware)