EHS/include/system/BaseOpen.h

35 lines
499 B
C++

#pragma once
#include "Str.h"
namespace ehs
{
class BaseOpen
{
protected:
Str_8 filePath;
public:
BaseOpen();
BaseOpen(Str_8 filePath);
BaseOpen(BaseOpen&& bo) noexcept;
BaseOpen(const BaseOpen& bo);
BaseOpen& operator=(BaseOpen&& bo) noexcept;
BaseOpen& operator=(const BaseOpen& bo);
virtual void Initialize() = 0;
virtual void Release() = 0;
virtual void* Retrieve(Str_8 symbol) = 0;
Str_8 GetFilePath() const;
virtual bool IsInitialize() const = 0;
};
}