summaryrefslogtreecommitdiff
path: root/context.h
diff options
context:
space:
mode:
Diffstat (limited to 'context.h')
-rw-r--r--context.h26
1 files changed, 8 insertions, 18 deletions
diff --git a/context.h b/context.h
index 09156df..fb4b418 100644
--- a/context.h
+++ b/context.h
@@ -341,19 +341,18 @@ template <typename T, int num_entries, int num_pad_entries>
class TMenuList {
public:
packet_header header;
- TMenuListEntry<T> pad_entries[num_pad_entries];
- TMenuListEntry<T> entries[num_entries];
+ TArray<TMenuListEntry<T>, num_pad_entries> pad_entries;
+ TArray<TMenuListEntry<T>, num_entries> entries;
void bswap();
TMenuList &operator=(const TMenuList &src);
-
} __packed__;
template <typename T, int num_entries>
class TMenuList<T, num_entries, 0> {
public:
packet_header header;
- TMenuListEntry<T> entries[num_entries];
+ TArray<TMenuListEntry<T>, num_entries> entries;
void bswap();
TMenuList &operator=(const TMenuList &src);
@@ -363,7 +362,7 @@ template <typename T, int num_pad_entries>
class TMenuList<T, 0, num_pad_entries> {
public:
packet_header header;
- TMenuListEntry<T> pad_entries[num_pad_entries];
+ TArray<TMenuListEntry<T>, num_pad_entries> pad_entries;
void bswap();
TMenuList &operator=(const TMenuList &src);
@@ -407,22 +406,17 @@ void TMenuListEntry<T>::bswap() {
entry.bswap();
}
-
template <typename T, int num_entries>
TMenuList<T, num_entries, 0> &TMenuList<T, num_entries, 0>::operator=(const TMenuList<T, num_entries, 0> &src) {
header = src.header;
- for (int i = 0; i < num_entries; i++) {
- entries[i] = src.entries[i];
- }
+ entries = src.entries;
return *this;
}
template <typename T, int num_pad_entries>
TMenuList<T, 0, num_pad_entries> &TMenuList<T, 0, num_pad_entries>::operator=(const TMenuList<T, 0, num_pad_entries> &src) {
header = src.header;
- for (int i = 0; i < num_pad_entries; i++) {
- pad_entries[i] = src.pad_entries[i];
- }
+ pad_entries = src.pad_entries;
return *this;
}
@@ -430,14 +424,10 @@ template <typename T, int num_entries, int num_pad_entries>
TMenuList<T, num_entries, num_pad_entries> &TMenuList<T, num_entries, num_pad_entries>::operator=(const TMenuList<T, num_entries, num_pad_entries> &src) {
header = src.header;
if (num_pad_entries) {
- for (int i = 0; i < num_pad_entries; i++) {
- pad_entries[i] = src.pad_entries[i];
- }
+ pad_entries = src.pad_entries;
}
if (num_entries) {
- for (int i = 0; i < num_entries; i++) {
- entries[i] = src.entries[i];
- }
+ entries = src.entries;
}
return *this;
}