OpenClonk
C4ObjectInfoList.h
Go to the documentation of this file.
1 /*
2  * OpenClonk, http://www.openclonk.org
3  *
4  * Copyright (c) 1998-2000, Matthes Bender
5  * Copyright (c) 2001-2009, RedWolf Design GmbH, http://www.clonk.de/
6  * Copyright (c) 2013-2016, The OpenClonk Team and contributors
7  *
8  * Distributed under the terms of the ISC license; see accompanying file
9  * "COPYING" for details.
10  *
11  * "Clonk" is a registered trademark of Matthes Bender, used with permission.
12  * See accompanying file "TRADEMARK" for details.
13  *
14  * To redistribute this file separately, substitute the full license texts
15  * for the above references.
16  */
17 
18 /* Dynamic list for crew member info */
19 
20 #ifndef INC_C4ObjectInfoList
21 #define INC_C4ObjectInfoList
22 
23 #include "object/C4Id.h"
24 
26 {
27 public:
30 protected:
32 public:
33  int32_t iNumCreated; // number of new defs created during this round
34 public:
35  void Default();
36  void Clear();
37  void Evaluate();
38  void DetachFromObjects();
39  int32_t Load(C4Group &hGroup);
40  bool Add(C4ObjectInfo *pInfo);
41  bool Save(C4Group &hGroup, bool fSavegame, bool fStoreTiny, C4DefList *pDefs);
42  C4ObjectInfo* New(C4ID n_id, C4DefList *pDefs);
43  C4ObjectInfo* GetIdle(C4ID c_id, C4DefList &rDefs);
44  C4ObjectInfo* GetIdle(const char *szByName);
45  C4ObjectInfo *GetFirst() { return First; }
46  bool IsElement(C4ObjectInfo *pInfo);
47  void Strip(C4DefList &rDefs);
48 public:
49  void MakeValidName(char *sName);
50  bool NameExists(const char *szName);
51 protected:
54 };
55 
56 
57 #endif
Definition: C4Id.h:26
C4ObjectInfo * First
void MakeValidName(char *sName)
bool Add(C4ObjectInfo *pInfo)
bool Save(C4Group &hGroup, bool fSavegame, bool fStoreTiny, C4DefList *pDefs)
bool IsElement(C4ObjectInfo *pInfo)
C4ObjectInfo * GetLast()
C4ObjectInfo * New(C4ID n_id, C4DefList *pDefs)
C4ObjectInfo * GetFirst()
C4ObjectInfo * GetPrevious(C4ObjectInfo *pInfo)
bool NameExists(const char *szName)
void Strip(C4DefList &rDefs)
C4ObjectInfo * GetIdle(C4ID c_id, C4DefList &rDefs)
int32_t Load(C4Group &hGroup)