44 |
# endif |
# endif |
45 |
#endif |
#endif |
46 |
|
|
47 |
|
#ifdef __GNUC__ |
48 |
|
# define LIBGIG_DEPRECATED(msg) __attribute__ ((deprecated(msg))) |
49 |
|
#else |
50 |
|
# define LIBGIG_DEPRECATED |
51 |
|
#endif |
52 |
|
|
53 |
#include <string> |
#include <string> |
54 |
#include <list> |
#include <list> |
55 |
#include <map> |
#include <map> |
324 |
List(File* pFile, file_offset_t StartPos, List* Parent); |
List(File* pFile, file_offset_t StartPos, List* Parent); |
325 |
String GetListTypeString() const; |
String GetListTypeString() const; |
326 |
uint32_t GetListType() const { return ListType; } ///< Returns unsigned integer representation of the list's ID |
uint32_t GetListType() const { return ListType; } ///< Returns unsigned integer representation of the list's ID |
327 |
|
Chunk* GetSubChunkAt(size_t pos); |
328 |
Chunk* GetSubChunk(uint32_t ChunkID); |
Chunk* GetSubChunk(uint32_t ChunkID); |
329 |
|
List* GetSubListAt(size_t pos); |
330 |
List* GetSubList(uint32_t ListType); |
List* GetSubList(uint32_t ListType); |
331 |
Chunk* GetFirstSubChunk(); |
Chunk* GetFirstSubChunk() LIBGIG_DEPRECATED("Use GetSubChunkAt() instead."); |
332 |
Chunk* GetNextSubChunk(); |
Chunk* GetNextSubChunk() LIBGIG_DEPRECATED("Use GetSubChunkAt() instead."); |
333 |
List* GetFirstSubList(); |
List* GetFirstSubList() LIBGIG_DEPRECATED("Use GetSubListAt() instead."); |
334 |
List* GetNextSubList(); |
List* GetNextSubList() LIBGIG_DEPRECATED("Use GetSubListAt() instead."); |
335 |
size_t CountSubChunks(); |
size_t CountSubChunks(); |
336 |
size_t CountSubChunks(uint32_t ChunkID); |
size_t CountSubChunks(uint32_t ChunkID); |
337 |
size_t CountSubLists(); |
size_t CountSubLists(); |
344 |
virtual ~List(); |
virtual ~List(); |
345 |
protected: |
protected: |
346 |
typedef std::map<uint32_t, RIFF::Chunk*> ChunkMap; |
typedef std::map<uint32_t, RIFF::Chunk*> ChunkMap; |
347 |
typedef std::list<Chunk*> ChunkList; |
typedef std::vector<Chunk*> ChunkList; |
348 |
typedef std::set<Chunk*> ChunkSet; |
typedef std::set<Chunk*> ChunkSet; |
349 |
|
|
350 |
uint32_t ListType; |
uint32_t ListType; |