#pragma prototyped
#ifndef _FMTMSG_H
#define _FMTMSG_H
#define MM_VERB_ENV "MSGVERB"
#define MM_SEVERITY_ENV "SEV_LEVEL"
#define MM_LABEL_1_MAX 10
#define MM_LABEL_2_MAX 14
#define MM_HARD 0x00000001L
#define MM_SOFT 0x00000002L
#define MM_FIRM 0x00000004L
#define MM_APPL 0x00000010L
#define MM_UTIL 0x00000020L
#define MM_OPSYS 0x00000040L
#define MM_PRINT 0x00000100L
#define MM_CONSOLE 0x00000200L
#define MM_RECOVER 0x00001000L
#define MM_NRECOV 0x00002000L
#define MM_NOSEV 0x0
#define MM_HALT 0x1
#define MM_ERROR 0x2
#define MM_WARNING 0x4
#define MM_INFO 0x8
#define MM_OK 0
#define MM_NOTOK 3
#define MM_NOMSG 1
#define MM_NOCON 2
#define MM_NULLLBL (char*)0
#define MM_NULLSEV 0
#define MM_NULLMC 0L
#define MM_NULLTXT (char*)0
#define MM_NULLACT (char*)0
#define MM_NULLTAG (char*)0
#ifdef MM_TABLES
typedef struct
{
const char* name;
const char* display;
unsigned int value;
} MM_table_t;
#define mm_class _mm_class
#define mm_severity _mm_severity()
#define mm_verb _mm_verb
#define MM_all 0xff
#define MM_action 0x01
#define MM_class 0x02
#define MM_label 0x04
#define MM_severity 0x08
#define MM_source 0x10
#define MM_status 0x20
#define MM_tag 0x40
#define MM_text 0x80
#define MM_default (MM_action|MM_label|MM_severity|MM_tag|MM_text)
#if _BLD_ast && defined(__EXPORT__)
#define extern __EXPORT__
#endif
#if !_BLD_ast && defined(__IMPORT__)
#define extern extern __IMPORT__
#endif
extern const MM_table_t mm_class[];
extern const MM_table_t mm_verb[];
#undef extern
#if _BLD_ast && defined(__EXPORT__)
#define extern __EXPORT__
#endif
extern const MM_table_t* mm_severity;
#undef extern
#endif
#if _BLD_ast && defined(__EXPORT__)
#define extern __EXPORT__
#endif
extern int fmtmsg(long, const char*, int, const char*, const char*, const char*);
#undef extern
#endif