/** * @file DataObject.h * @brief 测井对象基类 */ #ifndef PAI_FRAME_IOSERVICE_DATAOBJECT_H #define PAI_FRAME_IOSERVICE_DATAOBJECT_H #include #include // #include "Turtle.h" namespace pai { namespace ios { namespace welllog { /** *@class DataObject *@brief 定义测井管理基类 */ class DataObject { public: /** * @brief 构造函数 */ DataObject():m_DataID(0), m_DataBelongID(0), m_Name(""), m_Creator(""), m_CreateData(0), m_ModifyData(0), m_LastAccessData(0) { } /** * @brief 析构函数 */ virtual ~DataObject(){}; /** * @brief 拷贝构造函数 */ DataObject(const DataObject& wobject):m_DataID(wobject.GetDataID()), m_DataBelongID(wobject.GetDataBelongID()), m_Name(wobject.GetName()), m_Creator(wobject.GetCreator()), m_CreateData(wobject.GetCreateData()), m_ModifyData(wobject.GetModifyData()), m_LastAccessData(wobject.GetLastAccessData()) { } /** * @brief 赋值 */ DataObject & operator=(const DataObject& wobject) { if (this == &wobject) return *this; this->SetDataID(wobject.GetDataID()); this->SetDataBelongID(wobject.GetDataBelongID()); this->SetName(wobject.GetName()); this->SetCreator(wobject.GetCreator()); this->SetCreateData(wobject.GetCreateData()); this->SetModifyData(wobject.GetModifyData()); this->SetLastAccessData(wobject.GetLastAccessData()); return *this; } /** * @brief 保存数据 */ virtual void Save() = 0; /** * @brief 根据ID获取对象信息 * @param[in]id数据ID */ virtual void Get(long long id) = 0; /** * @brief 修改数据 */ virtual void Update() = 0; /** * @brief 删除数据 */ virtual void Delete(long long id = 0) = 0; /** * @brief 取得创建时间 */ long long GetCreateData() const { return m_CreateData; } /** * @brief 取得创建者 */ std::string GetCreator() const { return m_Creator; } /** * @brief 取得数据所属ID */ long long GetDataBelongID() const { return m_DataBelongID; } /** * @brief 取得数据ID */ long long GetDataID() const { return m_DataID; } /** * @brief 取得最后访问时间 */ long long GetLastAccessData() const { return m_LastAccessData; } /** * @brief 取得修改时间 */ long long GetModifyData() const { return m_ModifyData; } /** * @brief 取得数据名 */ std::string GetName() const { return m_Name; } /** * @brief 设置创建时间 */ void SetCreateData(long long createData) { this->m_CreateData = createData; } /** * @brief 设置创建者 */ void SetCreator(std::string creator) { this->m_Creator = creator; } /** * @brief 设置数据所属ID */ void SetDataBelongID(long long dataBelongID) { this->m_DataBelongID = dataBelongID; } /** * @brief 设置数据ID */ void SetDataID(long long dataID) { this->m_DataID = dataID; } /** * @brief 设置最后访问时间 */ void SetLastAccessData(long long lastAccessData) { this->m_LastAccessData = lastAccessData; } /** * @brief 设置修改时间 */ void SetModifyData(long long modifyData) { this->m_ModifyData = modifyData; } /** * @brief 设置数据名 */ void SetName(std::string name) { this->m_Name = name; } private: long long m_DataID; ///<数据ID long long m_DataBelongID; ///<数据所属ID std::string m_Name; ///<数据名 std::string m_Creator; ///<创建者 long long m_CreateData; ///<创建时间 long long m_ModifyData; ///<修改时间 long long m_LastAccessData; ///<最后访问时间 }; } } } #endif