greenplumn CMiniDumper 源码
greenplumn CMiniDumper 代码
文件路径:/src/backend/gporca/libgpos/include/gpos/error/CMiniDumper.h
//---------------------------------------------------------------------------
// Greenplum Database
// Copyright (C) 2011 EMC Corp.
//
// @filename:
// CMiniDumper.h
//
// @doc:
// Interface for minidump handler;
//---------------------------------------------------------------------------
#ifndef GPOS_CMiniDumper_H
#define GPOS_CMiniDumper_H
#include "gpos/base.h"
#include "gpos/common/CStackObject.h"
#include "gpos/io/COstream.h"
namespace gpos
{
//---------------------------------------------------------------------------
// @class:
// CMiniDumper
//
// @doc:
// Interface for minidump handler;
//
//---------------------------------------------------------------------------
class CMiniDumper : CStackObject
{
private:
// flag indicating if handler is initialized
BOOL m_initialized{false};
// flag indicating if handler is finalized
BOOL m_finalized{false};
protected:
// stream to serialize objects to
COstream *m_oos{nullptr};
public:
CMiniDumper(const CMiniDumper &) = delete;
// ctor
CMiniDumper();
// dtor
virtual ~CMiniDumper();
// initialize
void Init(COstream *oos);
// finalize
void Finalize();
// get stream to serialize to
COstream &GetOStream();
// serialize minidump header
virtual void SerializeHeader() = 0;
// serialize minidump footer
virtual void SerializeFooter() = 0;
// serialize entry header
virtual void SerializeEntryHeader() = 0;
// serialize entry footer
virtual void SerializeEntryFooter() = 0;
}; // class CMiniDumper
} // namespace gpos
#endif // !GPOS_CMiniDumper_H
// EOF
相关信息
相关文章
greenplumn CAutoExceptionStack 源码
0
赞
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
7、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦