Системный дамп. Подробнее...
#include <dump.h>
Открытые члены | |
dump (const XMLCh *_source) | |
Создание пустого документа дампа. Создает объект и присваивает ему ключ. | |
dump (const wxString &_key) | |
Создание документа дампа по ключу. Считывает документ дампа из файла в соответствии с указанным ключем. В случае возникновения ошибки при чтении дампа возвращает пустой документ. При это ключ дампа является пустой строкой. | |
~dump () | |
Удаление документа дампа. | |
void | write () |
Запись документа дампа в файл. Файл дампа создается в каталоге, который указан в параметре настроки DUMP_PATH. | |
void | setmessage (const XMLCh *_tag, const char *_msg,...) |
Создание сообщения. | |
void | beginstack () |
Начинает заполнение раздела стека. | |
void | endstack () |
Завершает заполнение раздела стека. | |
void | appendlevel (int _level, const char *_what, const char *_source, int _line) |
Добавляет уровень стека. | |
wxString | getkey () const |
Получение ключа дампа. Возвращает ключ дампа, присвоеный в момент создания. return Ключ дампа. | |
wxString | format () const |
Преобразует документ дампа в текстовое сообщение. | |
xml::doc * | getxml () |
Получение XML-документа дампа. | |
dump (lua_State *_lua) | |
Создать дамп программного стека. | |
std::string | what () const |
Возвращает сообщение дампа. | |
Открытые статические члены | |
static void | initialize (const char *_app) |
Начальные установки для подсистемы дампов. | |
static wxDateTime | gettimestamp (const wxString &_key) |
Получение даты и времени создания дампа по ключу. | |
Статические открытые данные | |
static const char * | ID = "$DUMP$" |
Идентификатор метатаблицы объектов дампа. | |
Закрытые члены | |
wxString | filename () const |
Получение имени файла дампа. | |
void | read () |
Чтение документа дампа. Использует ключ дампа Key для получения имени файла и считывания дампа. | |
void | dummy (const XMLCh *_msg) |
Создание фиктивного документа дампа. | |
void | traverse (lua_State *_lua, int _index, std::set< const void * > &_done) |
Обход графа сети объектов. | |
void | write (lua_State *_lua, int _index) |
Вывод значения Lua (тег value). | |
Закрытые статические члены | |
static wxString | key () |
Получение уникального ключа дампа. | |
Закрытые данные | |
wxString | Key |
Имя дампа. | |
xml::doc * | Doc |
Документ дампа. | |
xml::element * | Stack |
Раздел стека. | |
std::ofstream | Out |
Файл с данными дампа. | |
std::string | Info |
Сообщение об ошибке. | |
Закрытые статические данные | |
static wxString | Path |
Путь к каталогу дампов. |
Системный дамп.
Дамп памяти Lua.
<!ELEMENT dump (error|warning) stack> <!ATTLIST dump source (compiler|loader|console) REQUIRED>
<!ELEMENT error (PCDATA)>
<!ELEMENT warning (info, (module|kernel))>
<!ELEMENT stack (level)*>
<!ELEMENT level EMPTY> <!ATTLIST level what CDATA REQUIRED source CDATA REQUIRED level CDATA REQUIRED line CDATA REQUIRED>
<!ELEMENT location EMPTY>
Используется для сохранения состояние программного стека на момент прерывания выполнения программы.
dump.dtd
dump::dump | ( | const XMLCh * | _source | ) |
Создание пустого документа дампа. Создает объект и присваивает ему ключ.
_source | Идентификатор источника дампа. |
dump::dump | ( | const wxString & | _key | ) |
Создание документа дампа по ключу. Считывает документ дампа из файла в соответствии с указанным ключем. В случае возникновения ошибки при чтении дампа возвращает пустой документ. При это ключ дампа является пустой строкой.
_key | Ключ дампа. |
dump::dump | ( | lua_State * | _lua | ) |
Создать дамп программного стека.
Создает файл дампа и объект на стеке Lua. Файл дампа остается открытым до момента удаления объекта.
_lua | Программный стек Lua. |
std::exception | Ошибка при создании дампа. |
void dump::appendlevel | ( | int | _level, | |
const char * | _what, | |||
const char * | _source, | |||
int | _line | |||
) |
Добавляет уровень стека.
_level | Номер уровня. | |
_what | Параметр what структуры lua_Debug. | |
_source | Параметр source стркутуры lua_Debug. | |
_line | Текущая строка выполнения. |
wxString dump::filename | ( | ) | const [inline, private] |
Получение имени файла дампа.
wxString dump::format | ( | ) | const |
Преобразует документ дампа в текстовое сообщение.
wxDateTime dump::gettimestamp | ( | const wxString & | _key | ) | [static] |
Получение даты и времени создания дампа по ключу.
_key | Ключ дампа. |
xml::doc* dump::getxml | ( | ) | [inline] |
Получение XML-документа дампа.
void dump::initialize | ( | const char * | _app | ) | [static] |
Начальные установки для подсистемы дампов.
_app | Идентификатор приложения. |
wxString dump::key | ( | ) | [static, private] |
Получение уникального ключа дампа.
void dump::setmessage | ( | const XMLCh * | _tag, | |
const char * | _msg, | |||
... | ||||
) |
Создание сообщения.
_tag | Тег сообщения. | |
_msg | Формат ошибки. |
void dump::traverse | ( | lua_State * | _lua, | |
int | _index, | |||
std::set< const void * > & | _done | |||
) | [private] |
Обход графа сети объектов.
_lua | Стек. | |
_index | Положение объекта. | |
_done | Множество обработанных объектов. |
std::string dump::what | ( | ) | const [inline] |
Возвращает сообщение дампа.
void dump::write | ( | lua_State * | _lua, | |
int | _index | |||
) | [private] |
Вывод значения Lua (тег value).
Все ссылочные типы выводятся в виде указателей (глубокий обход не выполняется).
_lua | Стек. | |
_index | Позиция значения. |
std::ofstream dump::Out [private] |
Файл с данными дампа.
Используется для блокировки файла пока существует объект дампа.