2017-09-09 21:38:26 +00:00
|
|
|
#pragma once
|
2009-04-13 23:34:59 +00:00
|
|
|
|
|
|
|
#include <map>
|
|
|
|
#include "zip/ZipFile.h"
|
|
|
|
#include "StructFile.h"
|
|
|
|
#include "uint128.h"
|
|
|
|
|
2009-10-12 00:06:24 +00:00
|
|
|
class CStructCollectionStateFile : public Framework::CZipFile
|
2009-04-13 23:34:59 +00:00
|
|
|
{
|
|
|
|
public:
|
2012-09-04 23:53:34 +00:00
|
|
|
typedef std::map<std::string, CStructFile> StructMap;
|
|
|
|
typedef StructMap::const_iterator StructIterator;
|
2009-04-13 23:34:59 +00:00
|
|
|
|
2018-04-30 20:01:23 +00:00
|
|
|
CStructCollectionStateFile(const char*);
|
|
|
|
CStructCollectionStateFile(Framework::CStream&);
|
|
|
|
virtual ~CStructCollectionStateFile() = default;
|
2009-04-13 23:34:59 +00:00
|
|
|
|
2018-04-30 20:01:23 +00:00
|
|
|
void InsertStruct(const char*, const CStructFile&);
|
|
|
|
void Read(Framework::CStream&);
|
|
|
|
void Write(Framework::CStream&) override;
|
2009-04-13 23:34:59 +00:00
|
|
|
|
2018-04-30 20:01:23 +00:00
|
|
|
StructIterator GetStructBegin() const;
|
|
|
|
StructIterator GetStructEnd() const;
|
2009-04-13 23:34:59 +00:00
|
|
|
|
2018-04-30 20:01:23 +00:00
|
|
|
StructIterator begin() const;
|
|
|
|
StructIterator end() const;
|
2017-09-10 18:01:53 +00:00
|
|
|
|
2009-04-13 23:34:59 +00:00
|
|
|
private:
|
2018-04-30 20:01:23 +00:00
|
|
|
StructMap m_structs;
|
2009-04-13 23:34:59 +00:00
|
|
|
};
|