Memory Management Improved
[pierogi] / pirmakenames.h
1 #ifndef PIRMAKENAMES_H
2 #define PIRMAKENAMES_H
3
4 class QComboBox;
5
6 // The list of brands currently known by Pierogi:
7 enum PIRMakeName{
8   Any_Make,
9   Acer_Make,
10   Admiral_Make,
11   Aiwa_Make,
12   Apple_Make,
13   Beko_Make,
14   Bose_Make,
15   Cambridge_Make,
16   Daewoo_Make,
17   Denon_Make,
18   DigitalStream_Make,
19   Directv_Make,
20   Dish_Make,
21   Ei_Make,
22   Elgato_Make,
23   Emerson_Make,
24   Fortec_Make,
25   GoldStar_Make,
26   Grundig_Make,
27   Haier_Make,
28   Hauppauge_Make,
29   Hitachi_Make,
30   Homecast_Make,
31   HP_Make,
32   Huawei_Make,
33   JVC_Make,
34   Kenwood_Make,
35   LG_Make,
36   Logitech_Make,
37   Magnavox_Make,
38   Microsoft_Make,
39   Mitsubishi_Make,
40   Motorola_Make,
41   Nokia_Make,
42   Onida_Make,
43   Panasonic_Make,
44   Philco_Make,
45   Philips_Make,
46   Pinnacle_Make,
47   Pioneer_Make,
48   Raite_Make,
49   RCA_Make,
50   Roku_Make,
51   Saba_Make,
52   Sagem_Make,
53   Samsung_Make,
54   Sanyo_Make,
55   Sharp_Make,
56   Sky_Make,
57   Sony_Make,
58   Tivo_Make,
59   Topfield_Make,
60   Toshiba_Make,
61   Vestel_Make,
62   Virgin_Make,
63   Vizio_Make,
64   WD_Make,
65   Westinghouse_Make,
66   Yamaha_Make,
67   Zenith_Make
68 };
69
70
71 // An object of convenience:
72
73 #include <map>
74 typedef std::map<PIRMakeName, const char *> MakeCollection;
75
76 class PIRMakeMgr
77 {
78 public:
79   PIRMakeMgr();
80
81   const char *getMakeString(
82     PIRMakeName n);
83
84   void populateComboBox(
85     QComboBox *cb);
86
87 private:
88   MakeCollection makes;
89 };
90
91 #endif // PIRMAKENAMES_H