#ifndef PERK_OUTPUT_H
#define PERK_OUTPUT_H
#include <stdint.h>
#define PERK_PRETTY(x) ((uint64_t)x << 32)
/* output actions */
#define PERK_OUTPUT_EXPORT_SYMS 0x00000001
#define PERK_OUTPUT_IMPORT_LIBS 0x00000002
#define PERK_OUTPUT_IMPORT_SYMS 0x00000004
#define PERK_OUTPUT_IMAGE_CATEGORY 0x00000008
#define PERK_OUTPUT_IMAGE_SECTIONS 0x00000010
#define PERK_OUTPUT_IMAGE_SYMBOLS 0x00000020
#define PERK_OUTPUT_IMAGE_STRINGS 0x00000040
#define PERK_OUTPUT_MDSO_LIBS 0x00000200
#define PERK_OUTPUT_MDSO_SYMS 0x00000400
#define PERK_OUTPUT_HEADER_DUMP 0X00010000
#define PERK_OUTPUT_HEADER_INFO 0X00020000
#define PERK_OUTPUT_SECTION_DUMP 0X00040000
#define PERK_OUTPUT_SECTION_INFO 0X00080000
/* header dump constants */
#define PERK_HDRDUMP_IMAGE_DOS_HEADER 0X00000001
#define PERK_HDRDUMP_COFF_IMAGE_HEADER 0X00000002
#define PERK_HDRDUMP_COFF_OBJECT_HEADER 0X00000004
#define PERK_HDRDUMP_COFF_OPT_HEADER 0X00000008
#define PERK_HDRDUMP_SECTION_TABLE 0X00000100
#define PERK_HDRDUMP_EXPORT_HEADER 0X00001000
#define PERK_HDRDUMP_IMPORT_TABLE 0X00010000
/* pretty-printer flags */
#define PERK_PRETTY_LIST PERK_PRETTY(0x00000001)
#define PERK_PRETTY_TABLE PERK_PRETTY(0x00000002)
#define PERK_PRETTY_READOBJ PERK_PRETTY(0x00000004)
#define PERK_PRETTY_OBJDUMP PERK_PRETTY(0x00000008)
#define PERK_PRETTY_YAML PERK_PRETTY(0x00000010)
#define PERK_PRETTY_DLLTOOL PERK_PRETTY(0x00000020)
#endif