libcmo21/LibCmo/CKManagers.hpp

34 lines
790 B
C++
Raw Normal View History

2023-02-26 21:48:03 +08:00
#pragma once
#include "CKDefines.hpp"
#include "CKEnums.hpp"
namespace LibCmo::CK2::CKManagerImplements {
class CKBaseManager {
public:
2023-02-27 22:23:05 +08:00
CKBaseManager(CKMinContext* ctx, CK_ID ckid);
2023-02-26 21:48:03 +08:00
CKBaseManager(const CKBaseManager&) = delete;
CKBaseManager& operator=(const CKBaseManager&) = delete;
virtual ~CKBaseManager();
virtual CKERROR LoadData(CKStateChunk* statechunk, CKFileData::ShallowDocument* doc);
virtual CKStateChunk* SaveData(CKFileData::ShallowDocument* doc);
2023-02-27 22:23:05 +08:00
2023-02-26 21:48:03 +08:00
private:
};
2023-02-27 22:23:05 +08:00
class CKAttributeManager : public CKBaseManager {
2023-02-26 21:48:03 +08:00
public:
2023-02-27 22:23:05 +08:00
CKAttributeManager(CKMinContext* ctx, CK_ID ckid);
2023-02-26 21:48:03 +08:00
CKAttributeManager(const CKAttributeManager&) = delete;
CKAttributeManager& operator=(const CKAttributeManager&) = delete;
virtual ~CKAttributeManager();
private:
};
}