31class ContainerClass :
public Class
42 ~ContainerClass()
override;
44 void Archive(
Archiver& arc)
override;
46 int AddObject(
const Type& obj);
47 int AddUniqueObject(
const Type& obj);
48 void AddObjectAt(
int index,
const Type& obj);
49 Type *AddressOfObjectAt(
int index);
50 void ClearObjectList(
void);
51 void FreeObjectList(
void);
52 int IndexOfObject(
const Type& obj);
53 void InsertObjectAt(
int index,
const Type& obj);
54 int NumObjects(
void)
const;
55 Type& ObjectAt(
const size_t index)
const;
56 bool ObjectInList(
const Type& obj);
57 void RemoveObjectAt(
int index);
58 void RemoveObject(
const Type& obj);
60 void Resize(
int maxelements);
61 void SetObjectAt(
int index,
const Type& obj);
62 void Sort(
int (*compare)(
const void *elem1,
const void *elem2));
63 Type& operator[](
const int index)
const;
66template<
typename Type>
67ContainerClass<Type>::ContainerClass()
70template<
typename Type>
75template<
typename Type>
83template<
typename Type>
85 : value(std::move(container))
88template<
typename Type>
91 value = std::move(container);
96template<
typename Type>
97ContainerClass<Type>::~ContainerClass()
99 value.FreeObjectList();
102template<
typename Type>
103int ContainerClass<Type>::AddObject(
const Type& obj)
105 return value.AddObject(obj);
108template<
typename Type>
109int ContainerClass<Type>::AddUniqueObject(
const Type& obj)
111 return value.AddUniqueObject(obj);
114template<
typename Type>
115void ContainerClass<Type>::AddObjectAt(
int index,
const Type& obj)
117 return value.AddObjectAt(index, obj);
120template<
typename Type>
121Type *ContainerClass<Type>::AddressOfObjectAt(
int index)
123 return value.AddressOfObjectAt(index);
126template<
typename Type>
127void ContainerClass<Type>::ClearObjectList(
void)
129 return value.ClearObjectList();
132template<
typename Type>
133void ContainerClass<Type>::FreeObjectList(
void)
135 return value.FreeObjectList();
138template<
typename Type>
139int ContainerClass<Type>::IndexOfObject(
const Type& obj)
141 return value.IndexOfObject(obj);
144template<
typename Type>
145void ContainerClass<Type>::InsertObjectAt(
int index,
const Type& obj)
147 return value.InsertObjectAt(index, obj);
150template<
typename Type>
151int ContainerClass<Type>::NumObjects(
void)
const
153 return value.NumObjects();
156template<
typename Type>
157Type& ContainerClass<Type>::ObjectAt(
const size_t index)
const
159 return value.ObjectAt(index);
162template<
typename Type>
163bool ContainerClass<Type>::ObjectInList(
const Type& obj)
165 return value.ObjectInList(obj);
168template<
typename Type>
169void ContainerClass<Type>::RemoveObjectAt(
int index)
171 return value.RemoveObjectAt(index);
174template<
typename Type>
175void ContainerClass<Type>::RemoveObject(
const Type& obj)
177 return value.RemoveObject(obj);
180template<
typename Type>
181void ContainerClass<Type>::Reset(
void)
183 return value.Reset();
186template<
typename Type>
187void ContainerClass<Type>::Resize(
int maxelements)
189 return value.Resize(maxelements);
192template<
typename Type>
193void ContainerClass<Type>::SetObjectAt(
int index,
const Type& obj)
195 return value.SetObjectAt(index, obj);
198template<
typename Type>
199void ContainerClass<Type>::Sort(
int (*compare)(
const void *elem1,
const void *elem2))
201 return value.Sort(compare);
204template<
typename Type>
205Type& ContainerClass<Type>::operator[](
const int index)
const
Definition containerclass.h:32
Definition container.h:85